例如在多组数据中,归纳出一组数据,能够尽可能包含它们中的共同特征,并且提取出的一组数据和原始的一组数据具有同样的大小。
lena = imread('lena.jpg'); %读入原始图像
lena_gray = rgb2gray(lena); %原始图像灰度化
figure, subplot(1, 3, 1);
imshow(lena_gray);
title('原始图像');
lena_pepper = imnoise(lena_gray, 'salt & pepper', 0.02); %加入椒盐噪声
subplot(1, 3, 2);
imshow(lena_pepper);
title('椒盐噪声图像');
lena_gauss = imnoise(lena_gray, "gaussian", 0.02); %加入高斯噪声
subplot(1, 3, 3);
imshow(lena_gauss);
title('高斯噪声图像');
%对椒盐噪声图像进行滤波处理
h = fspecial('average', 3);
I1 = filter2(h, lena_pepper) / 255; %二维数字滤波器
I2 = medfilt2(lena_pepper, [3 3]); %二维中位数滤波
figure, subplot(2, 2, 1);
imshow(lena);
title('原始图像');
subplot(2, 2, 2);
imshow(lena_pepper);
title('椒盐噪声图像');
subplot(2, 2, 3);
imshow(I1);
title('3*3 均值滤波图像');
subplot(2, 2, 4);
imshow(I2);
title('3*3 中值滤波图像');
%对高斯噪声图像进行滤波处理
G1 = filter2(h, lena_gauss) / 255; %二维数字滤波器
G2 = medfilt2(lena_gauss, [3 3]); %二维中位数滤波
figure, subplot(2, 2, 1);
imshow(lena);
title('原始图像');
subplot(2, 2, 2);
imshow(lena_gauss);
title('高斯噪声图像');
subplot(2, 2, 3);
imshow(G1);
title('3*3 均值滤波图像');
subplot(2, 2, 4);
imshow(G2);
title('3*3 中值滤波图像');
- 您还可以看一下 王西猛老师的商超收银软件中的扫码识别商品编程解析课程中的 扫描枪扫码识别解析概述小节, 巩固相关知识点