-
Notifications
You must be signed in to change notification settings - Fork 4
/
task2.3.m
78 lines (69 loc) · 1.67 KB
/
task2.3.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
close all;
clear all;
clc;
im=imread('bright-spring-view-cameo-island-600w-1048185397.jpg');
subplot(3,4,1)
imshow(im);
title('Orignal Image')
imgr=rgb2gray(im);
imd=im2double(imgr);
noi=imnoise(imd,'gaussian');
subplot(3,4,2)
imshow(noi);
title('Noisy Image')
[r,c]=size(noi);
padded=zeros(r+2,c+2);
padded(2:349,2:601)=noi;
subplot(3,4,3)
imshow(padded);
title('Padded Image 3x3 mask')
mask=[1 2 1; 2 4 2; 1 2 1];
for i=2:r
for j=2:c
out(i-1,j-1)=mask(1,1)*padded(i-1,j-1)+mask(1,2)*padded(i-1,j)+mask(1,3)*padded(i-1,j+1)+mask(2,1)*padded(i,j-1)+mask(2,2)*padded(i,j)+mask(2,3)*padded(i,j+1)+mask(3,1)*padded(i+1,j-1)+mask(3,2)*padded(i+1,j)+mask(3,3)*padded(i+1,j+1);
end
end
out=out/16;
subplot(3,4,4)
imshow(out);
title('Image 3x3 mask')
padded=zeros(r+4,c+4);
padded(3:350,3:602)=noi;
subplot(3,4,5)
imshow(padded);
title('Padded Image 5x5 mask')
h=fspecial('average',5);
out=imfilter(padded,h);
subplot(3,4,6)
imshow(out);
title('Image 5x5 mask')
padded=zeros(r+8,c+8);
padded(5:r+4,5:c+4)=noi;
subplot(3,4,7)
imshow(padded);
title('Padded Image 9x9 mask')
h=fspecial('average',9);
out=imfilter(padded,h);
subplot(3,4,8)
imshow(out);
title('Image 9x9 mask')
padded=zeros(r+14,c+14);
padded(7:r+6,7:c+6)=noi;
subplot(3,4,9)
imshow(padded);
title('Padded Image 15x15 mask')
h=fspecial('average',15);
out=imfilter(padded,h);
subplot(3,4,10)
imshow(out);
title('Image 15x15 mask')
padded=zeros(r+35,c+35);
padded(17:r+16,17:c+16)=noi;
subplot(3,4,11)
imshow(padded);
title('Padded Image 35x35 mask')
h=fspecial('average',35);
out=imfilter(padded,h);
subplot(3,4,12)
imshow(out);
title('Image 35x35 mask')