Prerequisite: Read EdgeDetection- fundamentals
For X-direction,
For Y-direction,
By substituting, Equations in Fig.B and Fig.C in Fig.A, we obtain the following equation
The equation represented in terms of Mask:
0 | 1 | 0 |
1 | -4 | 1 |
0 | 1 | 0 |
When the diagonals also considered then the equation becomes,
The Mask representation of the above equation,
1 | 1 | 1 |
1 | -8 | 1 |
1 | 1 | 1 |
Now let’s discuss further how image sharpening is done using Laplacian.
Equation:
Where f(x,y) is the input image
g(x,y) is the sharpened image and
c= -1 for the above mentioned filter masks.(fig.D and fig.E)
MATLAB CODE:
%Input Image
A=imread('coins.png');
figure,imshow(A);
%Preallocate the matrices with zeros
I1=A;
I=zeros(size(A));
I2=zeros(size(A));
%Filter Masks
F1=[0 1 0;1 -4 1; 0 1 0];
F2=[1 1 1;1 -8 1; 1 1 1];
%Padarray with zeros
A=padarray(A,[1,1]);
A=double(A);
%Implementation of the equation in Fig.D
for i=1:size(A,1)-2
for j=1:size(A,2)-2
I(i,j)=sum(sum(F1.*A(i:i+2,j:j+2)));
end
end
I=uint8(I);
figure,imshow(I);title('Filtered Image');
The Laplacian derivative equation has produced grayish edge lines and other areas are made dark(background)
%Sharpenend Image
%Refer Equation in Fig.F
B=I1-I;
figure,imshow(B);title('Sharpened Image');
The Filter Image is combined with the Original input image thus the background is preserved and the sharpened image is obtained .
For a Filter Mask that includes Diagonal,
1 | 1 | 1 |
1 | -8 | 1 |
1 | 1 | 1 |
Keine Kommentare:
Kommentar veröffentlichen