pkg load image clear clc I = imread('lena.bmp'); I2 = I; I2N = imnoise(I2,'salt & pepper', 0.03); Icentral = I(79:158, 79:158); IcentralN = imnoise(Icentral,'salt & pepper', 0.30); I2N(79:158, 79:158) = IcentralN; H5x5 = (1/25) * ones(5); HWA = (1/16) * [1 2 1; 2 4 2; 1 2 1]; I2N_AVG_5x5 = imfilter(I2N, H5x5); I2N_WA_3x3 = imfilter(I2N, HWA); I2N_MEDIAN_5x5 = ordfilt2(I2N, 5, ones(3)); pnsr_AVG = psnr(I2N_AVG_5x5, I, 255); pnsr_WA = psnr(I2N_WA_3x3, I, 255); pnsr_MED = psnr(I2N_MEDIAN_5x5, I, 255); subplot(2,3,1), imshow(I,[0 255]), title('Original') subplot(2,3,2), imshow(I2N,[0 255]), title('Noisy') subplot(2,3,4), imshow(I2N_AVG_5x5,[0 255]), title('AVG filter') subplot(2,3,5), imshow(I2N_WA_3x3,[0 255]), title('WA filter') subplot(2,3,6), imshow(I2N_MEDIAN_5x5,[0 255]), title('Median filter')