都是一些简单的图像处理源代码,入门性的介绍 #1:数字图像矩阵数据的显示及其傅立叶变换 #2:二维离散余弦变换的图像压缩 #3:采用灰度变换的方法增强图像的对比度 #4:直方图均匀化 #5:模拟图像受高斯白噪声和椒盐噪声的影响 #6:采用二维中值滤波函数 medfilt2 对受椒盐噪声干扰的图像滤波 #7:采用 MATLAB 中的函数 filter2 对受噪声干扰的图像进行均值滤波 #8:图像的自适应魏纳滤波 #9:运用 5 种不同的梯度增强法进行图像锐化 #10:图像的高通滤波和掩模处理 #11:利用巴特沃斯(Butterw orth)低通滤波器对受噪声干扰的图像进行平滑处理 #1:数字图像矩阵数据的显示及其傅立叶变换 1. f=zeros(30,30); 2. f(5:24,13:17)=1; 3. imshow(f, 'notruesize'); 4. F=fft2(f,256,256); % 快速傅立叶变换算法只能处矩阵维数为 2 的幂次,f 矩阵不 5. % 是,通过对 f 矩阵进行零填充来调整 6. F2=fftshift(F); % 一般在计算图形函数的傅立叶变换时,坐标原点在 7. % 函数图形的中心位置处,而计算机在对图像执行傅立叶变换 8. % 时是以图像的左上角为坐标原点。所以使用函数 fftshift 进 9. %行修正,使变换后的直流分量位于图形的中心; 10. figure,imshow(log(abs(F2)),[-1 5],'notruesize'); #2:二维离散余弦变换的图像压缩 1. I=imread('cameraman.tif'); % MATLAB 自带的图像 2. imshow(I); 3. clear;close all 4. I=imread('cameraman.tif'); 5. imshow(I); 6. I=im2double(I); 7. T=dctmtx(8); 8. B=blkproc(I,[8 8], 'P1*x*P2',T,T'); 9. Mask=[1 1 1 1 0 0 0 0 10. 1 1 1 0 0 0 0 0 11. 1 1 0 0 0 0 0 0 12. 1 0 0 0 0 0 0 0 13. 0 0 0 0 0 0 0 0 14. 0 0 0 0 0 0 0 0 15. 0 0 0 0 0 0 0 0 16. 0 0 0 0 0 0 0 0]; 17. B2=blkproc(B,[8 8],'P1.*x',Mask); % 此处为点乘(.*) 18. I2=blkproc(B2,[8 8], 'P1*x*P2',T',T); 19. figure,imshow(I2); % 重建后的图像 # 3 :采用灰度变换的方法增强图像的对比度 1. I=imread('rice.tif'); 2. imshow(I); 3. figure,imhist(I); 4. J=imadjust(I,[0.15 0.9], [0 1]); 5. figure,imshow(J); 6. figure,imhist(J); # 4 :直方图均匀化 1. I=imread('pout.tif'); % 读取MATLAB 自带的potu.tif 图...