SlideShare a Scribd company logo
1 of 20
Download to read offline
NATIONAL CHENG KUNG UNIVERSITY
Inst. of Manufacturing Information & Systems
DIGITAL IMAGE PROCESSING AND SOFTWARE
IMPLEMENTATION
HOMEWORK 1
Professor name: Chen, Shang-Liang
Student name: Nguyen Van Thanh
Student ID: P96007019
Class: P9-009 Image Processing and Software Implementation
Time: [4] 2  4
1
Table of Contents
PROBLEM................................................................................................................................................................. 2
SOLUTION................................................................................................................................................................ 3
3.2.1 Negative transformation ............................................................................................................................ 3
3.2.2 Log transformation..................................................................................................................................... 3
3.2.3 Power-law transformation ......................................................................................................................... 4
3.2.4 Piecewise-linear transformation ................................................................................................................ 7
3.3.1 Histogram equalization.............................................................................................................................10
3.4.2 Subtraction ...............................................................................................................................................12
3.6.1 Smoothing Linear Filters...........................................................................................................................14
3.6.2 Order-Statistics Filters..............................................................................................................................16
3.7.2 The Laplacian............................................................................................................................................17
3.7.3 The Gradient.............................................................................................................................................19
2
PROBLEM
影像處理與軟體實現[HW1]
課程碼:P953300 授課教授:陳響亮 教授 助教:陳怡瑄 日期:2011/03/10
題目:請以C# 撰寫一程式,可讀入一影像檔,並可執行以下之影像
空間強化功能。
a. 每一程式需設計一適當之人機操作介面。
b. 每一功能請以不同方法分開撰寫,各項參數需讓使用者自行輸入。
c. 以C# 撰寫時,可直接呼叫Matlab 現有函式,但呼叫多寡,將列為評分考量。
(呼叫越少,分數越高)
一、 基本灰階轉換
1. 影像負片轉換
2. Log轉換
3. 乘冪律轉換
4. 逐段線性函數轉換
二、 直方圖處理
1. 直方圖等化處理
2. 直方圖匹配處理
三、 使用算術/邏輯運算做增強
1. 影像相減增強
2. 影像平均增強
四、 平滑空間濾波器
1. 平滑線性濾波器
2. 排序統計濾波器
五、 銳化空間濾波器
1. 拉普拉斯銳化空間濾波器
2. 梯度銳化空間濾波器
3
SOLUTION
Using Matlab for solving the problem
3.2.1 Negative transformation
Given an image (input image) with gray level in the interval [0, L-1], the negative of that
image is obtained by using the expression: s = (L – 1) – r,
Where r is the gray level of the input image, and s is the gray level of the output.
In Matlab, we use the commands,
>> f=imread('Fig3.04(a).jpg');
g = imcomplement(f);
imshow(f), figure, imshow(g)
In/output image Out/in image
3.2.2 Log transformation
The Logarithm transformations are implemented using the expression:
s = c*log (1+r).
In this case, c = 1. The commands,
>> f=imread('Fig3.05(a).jpg');
g=im2uint8 (mat2gray (log (1+double (f))));
imshow(f), figure, imshow(g)
4
In/output image Out/in image
3.2.3 Power-law transformation
Power-law transformations have the basic form,
s = c*r. ^, where c and  are positive constants.
The commands,
>> f = imread ('Fig3.08(a).jpg');
f = im2double (f);
[m n]=size (f);
c = 1;
gama = input('gama value = ');
for i=1:m
for j=1:n
g(i,j)=c*(f(i,j)^gama);
end
end;
imshow(f),figure, imshow(g);
With  = 0.6, 0.4 and 0.3 respectively, we can get three images respectively, as shown in the
following figure,
5
a b
c d
(a) The original image. (b) – (d) result of applying the power -
law transformation with  = 0.6, 0.4 and 0.3 respectively
6
a b
c d
(a) The original image. (b) – (d) result of applying the power -
law transformation with  = 3, 4 and 5 respectively
7
3.2.4 Piecewise-linear transformation
Contrast stretching
The commands,
% function contrast stretching;
>> r1 = 100; s1 = 40;
r2 = 141; s2 = 216;
a = (s1/r1);
b = ((s2-s1)/ (r2-r1));
c = ((255-s2)/ (255-r2));
k = 0:r1;
y1 = a*k;
plot (k,y1); hold on;
k = r1: r2;
y2 = b*(k - r1) + a*r1;
plot (k,y2);
k = r2+1:255;
y3 = c*(k-r2) + b*(r2-r1)+a*r1;
plot (k,y3);
xlim([0 255]);
ylim([0 255]);
xlabel('input gray level, r');
ylabel('outphut gray level, s');
title('Form of transformation');
hold on; figure;
f = imread('Fig3.10(b).jpg');
[m, n] = size (f);
for i = 1:m
for j = 1:n
if((f(i,j)>=0) & (f(i,j)<=r1))
g(i,j) = a*f(i,j);
else
if((f(i,j)>r1) & (f(i,j)<=r2))
g(i,j) = ((b*(f(i,j)-r1)+(a*r1)));
else
if((f(i,j)>r2) & (f(i,j)<=255))
g(i,j) = ((c*(f(i,j)-r2)+(b*(r2-r1)+(a*r1))));
end
end
end
end
end
imshow(f), figure, imshow(g);
% function thresholding
>> f = imread('Fig3.10(b).jpg');
[m, n] = size(f);
for i = 1:m
for j = 1:n
if((f(i,j)>=0) & (f(i,j)<128))
8
g(i,j) = 0;
else
g(i,j) = 255;
end
end
end
imshow(f), figure, imshow(g);
(a) Form of contrast stretching transformation function.
(b) A low-contrast image. (c) Result of contrast stretching. (d)
Result of thresholding
a b
c d
9
(a) An 8-bit image. (b) – (f) The 8 bit plane
a b c
d e f
10
3.3.1 Histogram equalization
The transformation function of histogram equalization is
( ) ∑ ( ) ∑
k = 0, 1, …, L – 1.
% Histogram;
f1 = imread('Fig3.15(a)1top.jpg');
f2 = imread('Fig3.15(a)2.jpg');
f3 = imread('Fig3.15(a)3.jpg');
f4 = imread('Fig3.15(a)4.jpg');
f = input('image: ');
imhist(f), figure;
g = histeq(f, 256);
imshow(g), figure, imhist(g);
a b c
Fig. 3.17 Transformation functions (1) through (4) were obtained from the
images in Fig. 3.17 (a), using histogram equalization
11
a b
Fig. 3.15 Four
basic image
types: dark,
light, low
contrast, high
contrast, and
their
corresponding
histograms
12
a b c
Fig. 3.17 (a) Image from Fig. 3.15. (b) Results of histogram equalization. (c)
Corresponding histograms.
13
3.4.2 Subtraction
The difference between tow images f (x, y) and h (x, y), expressed as
g (x, y) = f (x, y) – h (x, y),
The commands,
f1 = imread('Fig3.28.a.jpg');
f2 = imread('Fig3.28.b.jpg');
f3 = imsubtract(f1,f2);
f4 = histeq(f3,256);
imshow(f3), figure, imshow(f4);
a b
c d
Fig. 3.17 (a) The first image. (b) The second image. (c) Difference between (a) and
(b). (d) Histogram – equalized difference image.
14
3.6.1 Smoothing Linear Filters
The commands,
f = imread('Fig3.35(a).jpg');
w3 = 1/ (3. ^2)*ones (3);
g3 = imfilter (f, w3, 'conv', 'replicate', 'same');
w5 = 1/ (5. ^2)*ones (5);
g5 = imfilter (f, w5, 'conv', 'replicate', 'same');
w9 = 1/ (9. ^2)*ones (9);
g9 = imfilter (f, w9, 'conv', 'replicate', 'same');
w15 = 1/ (15. ^2)*ones (15);
g15 = imfilter (f, w15, 'conv', 'replicate', 'same');
w35 = 1/ (35. ^2)*ones (35);
g35 = imfilter(f, w35, 'conv', 'replicate', 'same');
imshow (g3), figure, imshow (g5), figure, imshow (g9), figure, imshow
(g15), figure, imshow (g35), figure;
h = imread ('Fig3.36(a).jpg');
h15 = imfilter (h, w15, 'conv', 'replicate', 'same');
[m, n] = size (h15);
for i = 1:m
for j = 1:n
if ((h15 (i,j)>=0) & (h15 (i,j)<128))
g (i,j) = 0;
else
g(i,j) = 255;
end
end
end
imshow(h15), figure, imshow(g);
15
Fig. 3.35 (a) Original image, of size 500 x 500 pixels. (b) – (f) Result of
smoothing with square averaging filter masks of size n = 3, 5, 9, 15,
and 35 respectively.
a b
c d
e f
16
3.6.2 Order-Statistics Filters
The commands,
>> f = imread('Fig3.37(a).jpg');
w3 = 1/(3.^2)*ones(3);
g3 = imfilter(f, w3, 'conv', 'replicate', 'same');
g = medfilt2(g3);
imshow(g3), figure, imshow(g);
a b c
Fig. 3.36 (a) Original image. (b) Image processed by a 15 x 15 averaging mask.
(c) Result of thresholding (b)
Fig. 3.37 (a) X – ray image of circuit board corrupted by salt – and –
pepper noise. (b) Noise reduction with a 3 x 3 averaging mask. (c)
Noise reduction with a 3 x 3 median filter
a b c
17
3.7.2 The Laplacian
The Laplacian for image enhancement is as follows:
( )
{
( ) ( )
( ) ( )
( )
The commands,
% Laplacian function
f1 = imread('Fig3.40(a).jpg');
w4 = fspecial('laplacian', 0);
g1 = imfilter(f1, w4, 'replicate');
imshow(g1, [ ]), figure;
f2 = im2double(f1);
g2 = imfilter(f2, w4, 'replicate');
imshow(g2, [ ]), figure;
g3 = imsubtract(f2,g2);
imshow(g3)
Fig. 3.40 (a) Image of
the North Pole
of the moon.
(b) Laplacian
image scaled
for display
purposes. (d)
Image
enhanced by
Eq. (3.7 – 5)
a b
c d
18
% Laplacian simplication
f1 = imread ('Fig3.41(c).jpg');
w5 = [0 -1 0; -1 5 -1; 0 -1 0];
g1 = imfilter (f1, w5, 'replicate');
imshow (g1), figure;
w9 = [-1 -1 -1; -1 9 -1; -1 -1 -1];
g2 = imfilter (f1, w9, 'replicate');
imshow (g2);
0 -1 0
-1 5 -1
0 -1 0
-1 -1 -1
-1 9 -1
-1 -1 -1
a b c
d e
Fig. 3.37 (a) Composite Laplacian mask. (b) A second composite
mask. (c) Scanning electron microscope image. (d) and (e)
Result of filtering with the masks in (a) and (b) respectively.
19
3.7.3 The Gradient
The commands,
>> f1 = imread('Fig3.45(a).jpg');
w = fspecial('sobel');
g1 = imfilter(f1, w, 'replicate');
imshow(g1);
a b Fig. 3.45 (a) Optical image of contact lens (note defects on the
boundary at 4 and 5 o’clock). (b) Sobel gradient

More Related Content

What's hot

06 spatial filtering DIP
06 spatial filtering DIP06 spatial filtering DIP
06 spatial filtering DIPbabak danyal
 
Histogram equalization
Histogram equalizationHistogram equalization
Histogram equalization11mr11mahesh
 
digital image processing
digital image processingdigital image processing
digital image processingAbinaya B
 
Chapter 6 color image processing
Chapter 6 color image processingChapter 6 color image processing
Chapter 6 color image processingasodariyabhavesh
 
Digital Image Processing: Image Restoration
Digital Image Processing: Image RestorationDigital Image Processing: Image Restoration
Digital Image Processing: Image RestorationMostafa G. M. Mostafa
 
Image Enhancement in Spatial Domain
Image Enhancement in Spatial DomainImage Enhancement in Spatial Domain
Image Enhancement in Spatial DomainA B Shinde
 
The Digital Image Processing Q@A
The Digital Image Processing Q@AThe Digital Image Processing Q@A
The Digital Image Processing Q@AChung Hua Universit
 
Image enhancement techniques
Image enhancement techniquesImage enhancement techniques
Image enhancement techniquesSaideep
 
1. digital image processing
1. digital image processing1. digital image processing
1. digital image processingvilasini rvr
 
Image enhancement
Image enhancementImage enhancement
Image enhancementvsaranya169
 
Chapter10 image segmentation
Chapter10 image segmentationChapter10 image segmentation
Chapter10 image segmentationasodariyabhavesh
 
Fourier descriptors & moments
Fourier descriptors & momentsFourier descriptors & moments
Fourier descriptors & momentsrajisri2
 
Digital Image Processing: Image Enhancement in the Frequency Domain
Digital Image Processing: Image Enhancement in the Frequency DomainDigital Image Processing: Image Enhancement in the Frequency Domain
Digital Image Processing: Image Enhancement in the Frequency DomainMostafa G. M. Mostafa
 
Filtering an image is to apply a convolution
Filtering an image is to apply a convolutionFiltering an image is to apply a convolution
Filtering an image is to apply a convolutionAbhishek Mukherjee
 

What's hot (20)

06 spatial filtering DIP
06 spatial filtering DIP06 spatial filtering DIP
06 spatial filtering DIP
 
Histogram equalization
Histogram equalizationHistogram equalization
Histogram equalization
 
digital image processing
digital image processingdigital image processing
digital image processing
 
Chapter 6 color image processing
Chapter 6 color image processingChapter 6 color image processing
Chapter 6 color image processing
 
Digital Image Processing: Image Restoration
Digital Image Processing: Image RestorationDigital Image Processing: Image Restoration
Digital Image Processing: Image Restoration
 
image enhancement
 image enhancement image enhancement
image enhancement
 
Histogram Equalization
Histogram EqualizationHistogram Equalization
Histogram Equalization
 
Image Enhancement in Spatial Domain
Image Enhancement in Spatial DomainImage Enhancement in Spatial Domain
Image Enhancement in Spatial Domain
 
The Digital Image Processing Q@A
The Digital Image Processing Q@AThe Digital Image Processing Q@A
The Digital Image Processing Q@A
 
Image enhancement techniques
Image enhancement techniquesImage enhancement techniques
Image enhancement techniques
 
1. digital image processing
1. digital image processing1. digital image processing
1. digital image processing
 
Image enhancement
Image enhancementImage enhancement
Image enhancement
 
Chapter10 image segmentation
Chapter10 image segmentationChapter10 image segmentation
Chapter10 image segmentation
 
Image enhancement
Image enhancementImage enhancement
Image enhancement
 
Fourier descriptors & moments
Fourier descriptors & momentsFourier descriptors & moments
Fourier descriptors & moments
 
Digital Image Processing: Image Enhancement in the Frequency Domain
Digital Image Processing: Image Enhancement in the Frequency DomainDigital Image Processing: Image Enhancement in the Frequency Domain
Digital Image Processing: Image Enhancement in the Frequency Domain
 
Filtering an image is to apply a convolution
Filtering an image is to apply a convolutionFiltering an image is to apply a convolution
Filtering an image is to apply a convolution
 
Image compression
Image compressionImage compression
Image compression
 
Psuedo color
Psuedo colorPsuedo color
Psuedo color
 
Image compression .
Image compression .Image compression .
Image compression .
 

Similar to Digital image processing using matlab: basic transformations, filters and operators

Similar to Digital image processing using matlab: basic transformations, filters and operators (20)

annotated-chap-3-gw.ppt
annotated-chap-3-gw.pptannotated-chap-3-gw.ppt
annotated-chap-3-gw.ppt
 
Aistats RTD
Aistats RTDAistats RTD
Aistats RTD
 
matlab.docx
matlab.docxmatlab.docx
matlab.docx
 
G Intensity transformation and spatial filtering(1).ppt
G Intensity transformation and spatial filtering(1).pptG Intensity transformation and spatial filtering(1).ppt
G Intensity transformation and spatial filtering(1).ppt
 
Lect 03 - first portion
Lect 03 - first portionLect 03 - first portion
Lect 03 - first portion
 
Histogram processing
Histogram processingHistogram processing
Histogram processing
 
Ch 3. Image Enhancement in the Spatial Domain_okay.ppt
Ch 3. Image Enhancement in the Spatial Domain_okay.pptCh 3. Image Enhancement in the Spatial Domain_okay.ppt
Ch 3. Image Enhancement in the Spatial Domain_okay.ppt
 
Notes on image processing
Notes on image processingNotes on image processing
Notes on image processing
 
DIP_Manual.pdf
DIP_Manual.pdfDIP_Manual.pdf
DIP_Manual.pdf
 
1.funtions (1)
1.funtions (1)1.funtions (1)
1.funtions (1)
 
Lect02.ppt
Lect02.pptLect02.ppt
Lect02.ppt
 
Funções 1
Funções 1Funções 1
Funções 1
 
Introduction to image contrast and enhancement method
Introduction to image contrast and enhancement methodIntroduction to image contrast and enhancement method
Introduction to image contrast and enhancement method
 
Hand book of Howard Anton calculus exercises 8th edition
Hand book of Howard Anton calculus exercises 8th editionHand book of Howard Anton calculus exercises 8th edition
Hand book of Howard Anton calculus exercises 8th edition
 
Computer vision 3 4
Computer vision 3 4Computer vision 3 4
Computer vision 3 4
 
Image Processing Homework 1
Image Processing Homework 1Image Processing Homework 1
Image Processing Homework 1
 
DIP_Lecture5.pdf
DIP_Lecture5.pdfDIP_Lecture5.pdf
DIP_Lecture5.pdf
 
DIP_Lecture5.pdf
DIP_Lecture5.pdfDIP_Lecture5.pdf
DIP_Lecture5.pdf
 
xy2.5 3.0 3.5-1.0 6 7 81.0 0 1 23.0 -6 -5 .docx
xy2.5 3.0 3.5-1.0 6 7 81.0 0 1 23.0 -6 -5 .docxxy2.5 3.0 3.5-1.0 6 7 81.0 0 1 23.0 -6 -5 .docx
xy2.5 3.0 3.5-1.0 6 7 81.0 0 1 23.0 -6 -5 .docx
 
Civil engineering mock test
Civil engineering mock testCivil engineering mock test
Civil engineering mock test
 

Recently uploaded

Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxExploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxPooja Bhuva
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jisc
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Pooja Bhuva
 
Model Attribute _rec_name in the Odoo 17
Model Attribute _rec_name in the Odoo 17Model Attribute _rec_name in the Odoo 17
Model Attribute _rec_name in the Odoo 17Celine George
 
Simple, Complex, and Compound Sentences Exercises.pdf
Simple, Complex, and Compound Sentences Exercises.pdfSimple, Complex, and Compound Sentences Exercises.pdf
Simple, Complex, and Compound Sentences Exercises.pdfstareducators107
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - Englishneillewis46
 
PANDITA RAMABAI- Indian political thought GENDER.pptx
PANDITA RAMABAI- Indian political thought GENDER.pptxPANDITA RAMABAI- Indian political thought GENDER.pptx
PANDITA RAMABAI- Indian political thought GENDER.pptxakanksha16arora
 
dusjagr & nano talk on open tools for agriculture research and learning
dusjagr & nano talk on open tools for agriculture research and learningdusjagr & nano talk on open tools for agriculture research and learning
dusjagr & nano talk on open tools for agriculture research and learningMarc Dusseiller Dusjagr
 
FICTIONAL SALESMAN/SALESMAN SNSW 2024.pdf
FICTIONAL SALESMAN/SALESMAN SNSW 2024.pdfFICTIONAL SALESMAN/SALESMAN SNSW 2024.pdf
FICTIONAL SALESMAN/SALESMAN SNSW 2024.pdfPondicherry University
 
AIM of Education-Teachers Training-2024.ppt
AIM of Education-Teachers Training-2024.pptAIM of Education-Teachers Training-2024.ppt
AIM of Education-Teachers Training-2024.pptNishitharanjan Rout
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024Elizabeth Walsh
 
REMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxREMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxDr. Ravikiran H M Gowda
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...Nguyen Thanh Tu Collection
 
Play hard learn harder: The Serious Business of Play
Play hard learn harder:  The Serious Business of PlayPlay hard learn harder:  The Serious Business of Play
Play hard learn harder: The Serious Business of PlayPooky Knightsmith
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and ModificationsMJDuyan
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...Amil baba
 
UGC NET Paper 1 Unit 7 DATA INTERPRETATION.pdf
UGC NET Paper 1 Unit 7 DATA INTERPRETATION.pdfUGC NET Paper 1 Unit 7 DATA INTERPRETATION.pdf
UGC NET Paper 1 Unit 7 DATA INTERPRETATION.pdfNirmal Dwivedi
 
How to Add a Tool Tip to a Field in Odoo 17
How to Add a Tool Tip to a Field in Odoo 17How to Add a Tool Tip to a Field in Odoo 17
How to Add a Tool Tip to a Field in Odoo 17Celine George
 

Recently uploaded (20)

Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxExploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)
 
Our Environment Class 10 Science Notes pdf
Our Environment Class 10 Science Notes pdfOur Environment Class 10 Science Notes pdf
Our Environment Class 10 Science Notes pdf
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
 
Model Attribute _rec_name in the Odoo 17
Model Attribute _rec_name in the Odoo 17Model Attribute _rec_name in the Odoo 17
Model Attribute _rec_name in the Odoo 17
 
Simple, Complex, and Compound Sentences Exercises.pdf
Simple, Complex, and Compound Sentences Exercises.pdfSimple, Complex, and Compound Sentences Exercises.pdf
Simple, Complex, and Compound Sentences Exercises.pdf
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
PANDITA RAMABAI- Indian political thought GENDER.pptx
PANDITA RAMABAI- Indian political thought GENDER.pptxPANDITA RAMABAI- Indian political thought GENDER.pptx
PANDITA RAMABAI- Indian political thought GENDER.pptx
 
dusjagr & nano talk on open tools for agriculture research and learning
dusjagr & nano talk on open tools for agriculture research and learningdusjagr & nano talk on open tools for agriculture research and learning
dusjagr & nano talk on open tools for agriculture research and learning
 
FICTIONAL SALESMAN/SALESMAN SNSW 2024.pdf
FICTIONAL SALESMAN/SALESMAN SNSW 2024.pdfFICTIONAL SALESMAN/SALESMAN SNSW 2024.pdf
FICTIONAL SALESMAN/SALESMAN SNSW 2024.pdf
 
AIM of Education-Teachers Training-2024.ppt
AIM of Education-Teachers Training-2024.pptAIM of Education-Teachers Training-2024.ppt
AIM of Education-Teachers Training-2024.ppt
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
REMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxREMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptx
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
VAMOS CUIDAR DO NOSSO PLANETA! .
VAMOS CUIDAR DO NOSSO PLANETA!                    .VAMOS CUIDAR DO NOSSO PLANETA!                    .
VAMOS CUIDAR DO NOSSO PLANETA! .
 
Play hard learn harder: The Serious Business of Play
Play hard learn harder:  The Serious Business of PlayPlay hard learn harder:  The Serious Business of Play
Play hard learn harder: The Serious Business of Play
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
 
UGC NET Paper 1 Unit 7 DATA INTERPRETATION.pdf
UGC NET Paper 1 Unit 7 DATA INTERPRETATION.pdfUGC NET Paper 1 Unit 7 DATA INTERPRETATION.pdf
UGC NET Paper 1 Unit 7 DATA INTERPRETATION.pdf
 
How to Add a Tool Tip to a Field in Odoo 17
How to Add a Tool Tip to a Field in Odoo 17How to Add a Tool Tip to a Field in Odoo 17
How to Add a Tool Tip to a Field in Odoo 17
 

Digital image processing using matlab: basic transformations, filters and operators

  • 1. NATIONAL CHENG KUNG UNIVERSITY Inst. of Manufacturing Information & Systems DIGITAL IMAGE PROCESSING AND SOFTWARE IMPLEMENTATION HOMEWORK 1 Professor name: Chen, Shang-Liang Student name: Nguyen Van Thanh Student ID: P96007019 Class: P9-009 Image Processing and Software Implementation Time: [4] 2  4
  • 2. 1 Table of Contents PROBLEM................................................................................................................................................................. 2 SOLUTION................................................................................................................................................................ 3 3.2.1 Negative transformation ............................................................................................................................ 3 3.2.2 Log transformation..................................................................................................................................... 3 3.2.3 Power-law transformation ......................................................................................................................... 4 3.2.4 Piecewise-linear transformation ................................................................................................................ 7 3.3.1 Histogram equalization.............................................................................................................................10 3.4.2 Subtraction ...............................................................................................................................................12 3.6.1 Smoothing Linear Filters...........................................................................................................................14 3.6.2 Order-Statistics Filters..............................................................................................................................16 3.7.2 The Laplacian............................................................................................................................................17 3.7.3 The Gradient.............................................................................................................................................19
  • 3. 2 PROBLEM 影像處理與軟體實現[HW1] 課程碼:P953300 授課教授:陳響亮 教授 助教:陳怡瑄 日期:2011/03/10 題目:請以C# 撰寫一程式,可讀入一影像檔,並可執行以下之影像 空間強化功能。 a. 每一程式需設計一適當之人機操作介面。 b. 每一功能請以不同方法分開撰寫,各項參數需讓使用者自行輸入。 c. 以C# 撰寫時,可直接呼叫Matlab 現有函式,但呼叫多寡,將列為評分考量。 (呼叫越少,分數越高) 一、 基本灰階轉換 1. 影像負片轉換 2. Log轉換 3. 乘冪律轉換 4. 逐段線性函數轉換 二、 直方圖處理 1. 直方圖等化處理 2. 直方圖匹配處理 三、 使用算術/邏輯運算做增強 1. 影像相減增強 2. 影像平均增強 四、 平滑空間濾波器 1. 平滑線性濾波器 2. 排序統計濾波器 五、 銳化空間濾波器 1. 拉普拉斯銳化空間濾波器 2. 梯度銳化空間濾波器
  • 4. 3 SOLUTION Using Matlab for solving the problem 3.2.1 Negative transformation Given an image (input image) with gray level in the interval [0, L-1], the negative of that image is obtained by using the expression: s = (L – 1) – r, Where r is the gray level of the input image, and s is the gray level of the output. In Matlab, we use the commands, >> f=imread('Fig3.04(a).jpg'); g = imcomplement(f); imshow(f), figure, imshow(g) In/output image Out/in image 3.2.2 Log transformation The Logarithm transformations are implemented using the expression: s = c*log (1+r). In this case, c = 1. The commands, >> f=imread('Fig3.05(a).jpg'); g=im2uint8 (mat2gray (log (1+double (f)))); imshow(f), figure, imshow(g)
  • 5. 4 In/output image Out/in image 3.2.3 Power-law transformation Power-law transformations have the basic form, s = c*r. ^, where c and  are positive constants. The commands, >> f = imread ('Fig3.08(a).jpg'); f = im2double (f); [m n]=size (f); c = 1; gama = input('gama value = '); for i=1:m for j=1:n g(i,j)=c*(f(i,j)^gama); end end; imshow(f),figure, imshow(g); With  = 0.6, 0.4 and 0.3 respectively, we can get three images respectively, as shown in the following figure,
  • 6. 5 a b c d (a) The original image. (b) – (d) result of applying the power - law transformation with  = 0.6, 0.4 and 0.3 respectively
  • 7. 6 a b c d (a) The original image. (b) – (d) result of applying the power - law transformation with  = 3, 4 and 5 respectively
  • 8. 7 3.2.4 Piecewise-linear transformation Contrast stretching The commands, % function contrast stretching; >> r1 = 100; s1 = 40; r2 = 141; s2 = 216; a = (s1/r1); b = ((s2-s1)/ (r2-r1)); c = ((255-s2)/ (255-r2)); k = 0:r1; y1 = a*k; plot (k,y1); hold on; k = r1: r2; y2 = b*(k - r1) + a*r1; plot (k,y2); k = r2+1:255; y3 = c*(k-r2) + b*(r2-r1)+a*r1; plot (k,y3); xlim([0 255]); ylim([0 255]); xlabel('input gray level, r'); ylabel('outphut gray level, s'); title('Form of transformation'); hold on; figure; f = imread('Fig3.10(b).jpg'); [m, n] = size (f); for i = 1:m for j = 1:n if((f(i,j)>=0) & (f(i,j)<=r1)) g(i,j) = a*f(i,j); else if((f(i,j)>r1) & (f(i,j)<=r2)) g(i,j) = ((b*(f(i,j)-r1)+(a*r1))); else if((f(i,j)>r2) & (f(i,j)<=255)) g(i,j) = ((c*(f(i,j)-r2)+(b*(r2-r1)+(a*r1)))); end end end end end imshow(f), figure, imshow(g); % function thresholding >> f = imread('Fig3.10(b).jpg'); [m, n] = size(f); for i = 1:m for j = 1:n if((f(i,j)>=0) & (f(i,j)<128))
  • 9. 8 g(i,j) = 0; else g(i,j) = 255; end end end imshow(f), figure, imshow(g); (a) Form of contrast stretching transformation function. (b) A low-contrast image. (c) Result of contrast stretching. (d) Result of thresholding a b c d
  • 10. 9 (a) An 8-bit image. (b) – (f) The 8 bit plane a b c d e f
  • 11. 10 3.3.1 Histogram equalization The transformation function of histogram equalization is ( ) ∑ ( ) ∑ k = 0, 1, …, L – 1. % Histogram; f1 = imread('Fig3.15(a)1top.jpg'); f2 = imread('Fig3.15(a)2.jpg'); f3 = imread('Fig3.15(a)3.jpg'); f4 = imread('Fig3.15(a)4.jpg'); f = input('image: '); imhist(f), figure; g = histeq(f, 256); imshow(g), figure, imhist(g); a b c Fig. 3.17 Transformation functions (1) through (4) were obtained from the images in Fig. 3.17 (a), using histogram equalization
  • 12. 11 a b Fig. 3.15 Four basic image types: dark, light, low contrast, high contrast, and their corresponding histograms
  • 13. 12 a b c Fig. 3.17 (a) Image from Fig. 3.15. (b) Results of histogram equalization. (c) Corresponding histograms.
  • 14. 13 3.4.2 Subtraction The difference between tow images f (x, y) and h (x, y), expressed as g (x, y) = f (x, y) – h (x, y), The commands, f1 = imread('Fig3.28.a.jpg'); f2 = imread('Fig3.28.b.jpg'); f3 = imsubtract(f1,f2); f4 = histeq(f3,256); imshow(f3), figure, imshow(f4); a b c d Fig. 3.17 (a) The first image. (b) The second image. (c) Difference between (a) and (b). (d) Histogram – equalized difference image.
  • 15. 14 3.6.1 Smoothing Linear Filters The commands, f = imread('Fig3.35(a).jpg'); w3 = 1/ (3. ^2)*ones (3); g3 = imfilter (f, w3, 'conv', 'replicate', 'same'); w5 = 1/ (5. ^2)*ones (5); g5 = imfilter (f, w5, 'conv', 'replicate', 'same'); w9 = 1/ (9. ^2)*ones (9); g9 = imfilter (f, w9, 'conv', 'replicate', 'same'); w15 = 1/ (15. ^2)*ones (15); g15 = imfilter (f, w15, 'conv', 'replicate', 'same'); w35 = 1/ (35. ^2)*ones (35); g35 = imfilter(f, w35, 'conv', 'replicate', 'same'); imshow (g3), figure, imshow (g5), figure, imshow (g9), figure, imshow (g15), figure, imshow (g35), figure; h = imread ('Fig3.36(a).jpg'); h15 = imfilter (h, w15, 'conv', 'replicate', 'same'); [m, n] = size (h15); for i = 1:m for j = 1:n if ((h15 (i,j)>=0) & (h15 (i,j)<128)) g (i,j) = 0; else g(i,j) = 255; end end end imshow(h15), figure, imshow(g);
  • 16. 15 Fig. 3.35 (a) Original image, of size 500 x 500 pixels. (b) – (f) Result of smoothing with square averaging filter masks of size n = 3, 5, 9, 15, and 35 respectively. a b c d e f
  • 17. 16 3.6.2 Order-Statistics Filters The commands, >> f = imread('Fig3.37(a).jpg'); w3 = 1/(3.^2)*ones(3); g3 = imfilter(f, w3, 'conv', 'replicate', 'same'); g = medfilt2(g3); imshow(g3), figure, imshow(g); a b c Fig. 3.36 (a) Original image. (b) Image processed by a 15 x 15 averaging mask. (c) Result of thresholding (b) Fig. 3.37 (a) X – ray image of circuit board corrupted by salt – and – pepper noise. (b) Noise reduction with a 3 x 3 averaging mask. (c) Noise reduction with a 3 x 3 median filter a b c
  • 18. 17 3.7.2 The Laplacian The Laplacian for image enhancement is as follows: ( ) { ( ) ( ) ( ) ( ) ( ) The commands, % Laplacian function f1 = imread('Fig3.40(a).jpg'); w4 = fspecial('laplacian', 0); g1 = imfilter(f1, w4, 'replicate'); imshow(g1, [ ]), figure; f2 = im2double(f1); g2 = imfilter(f2, w4, 'replicate'); imshow(g2, [ ]), figure; g3 = imsubtract(f2,g2); imshow(g3) Fig. 3.40 (a) Image of the North Pole of the moon. (b) Laplacian image scaled for display purposes. (d) Image enhanced by Eq. (3.7 – 5) a b c d
  • 19. 18 % Laplacian simplication f1 = imread ('Fig3.41(c).jpg'); w5 = [0 -1 0; -1 5 -1; 0 -1 0]; g1 = imfilter (f1, w5, 'replicate'); imshow (g1), figure; w9 = [-1 -1 -1; -1 9 -1; -1 -1 -1]; g2 = imfilter (f1, w9, 'replicate'); imshow (g2); 0 -1 0 -1 5 -1 0 -1 0 -1 -1 -1 -1 9 -1 -1 -1 -1 a b c d e Fig. 3.37 (a) Composite Laplacian mask. (b) A second composite mask. (c) Scanning electron microscope image. (d) and (e) Result of filtering with the masks in (a) and (b) respectively.
  • 20. 19 3.7.3 The Gradient The commands, >> f1 = imread('Fig3.45(a).jpg'); w = fspecial('sobel'); g1 = imfilter(f1, w, 'replicate'); imshow(g1); a b Fig. 3.45 (a) Optical image of contact lens (note defects on the boundary at 4 and 5 o’clock). (b) Sobel gradient