当前位置:首页 > 数字图像处理实验指导书-matlab实验其他
数字图像处理实验报告
一、
实验目的
1熟悉MATLAB基本图像操作;
2结合实例学习如何在程序中增加图像处理算法;
3理解和掌握图像的线性变换和直方图均衡化的原理和应用;
4了解平滑处理的算法和用途,学习使用均值滤波、中值滤波和拉普拉斯锐化进行图像增强处理的程序设计方法;
5了解噪声模型及对图像添加噪声的基本方法。
二、 实验原理
1 灰度线性变换就是将图像中所有点的灰度按照线性灰度变换函数进行变换。
g(x,y)?T[f(x,y)]
0?f(x,y)?a??f(x,y)?g(x,y)???[f(x,y)?a]?ga a?f(x,y)?b
??[f(x,y)?b]?gb?f(x,y)?255b?x?1,2,?,m, y?1,2,?n
2 直方图均衡化通过点运算将输入图像转换为在每一级上都有相等像素点数的输出图
像。按照图像概率密度函数PDF的定义:
pr(rk)?nk k?0,1,2,...,L?1 nkk通过转换公式获得:
sk?T(rk)??pr(rj)??j?0j?0njn k?0,1,2,...,L?1
3 均值(中值)滤波是指在图像上,对待处理的像素给定一个模板,该模板包括了其周围的临近像素。将模板中的全体像素的均值(中值)来代替原来像素值的方法。
4 拉普拉斯算子如下:
??1?1?1???18?1? ?????1?1?1?? 拉普拉斯算子首先将自身与周围的8个像素相减,表示自身与周围像素的差异,再将
这个差异加上自身作为新像素的灰度。
三、 实验步骤
1 启动MATLAB程序,对图像文件分别进行灰度线性变换、直方图均衡化、均值滤波、中值滤波和拉普拉斯锐化操作;添加噪声,重复上述过程观察处理结果。
2 记录和整理实验报告
四、 实验仪器
1计算机;
2 MATLAB程序; 3记录用的笔、纸。
五、
实验内容及结果
实验内容:
1. 将实验库中的任意一副彩色图像转化为灰度图像。(rgb2gray)
2. 将实验库中的任意一副彩色图像转化为灰度图像后,进行图像求反操作和使用
Gamma校正压缩图像的动态范围。 3. 对任意灰度图像进行直方图均衡。
4. 对任意灰度图像使用3*3和5*5的模板进行均值和中值(order)滤波。 5. 使用拉普拉斯算子对图像进行处理。 实验结果附程序:
clc;clear all;close all; I=imread('1.jpg'); figure();
subplot(231);imshow(I);title('源图像'); I=rgb2gray(I);
subplot(232);imshow(I);title('灰度图像');
subplot(233);imshow(255-I,[]);title('图像求反'); J=im2double(I);nw=J.*0.3;
subplot(234);imshow(nw);title('gamma校正'); J1=histeq(J);
subplot(235);imshow(J1);title('直方图均衡'); BW=edge(I,'log');
subplot(236);imshow(BW);title('拉普拉斯算子处理'); J2=filter2(fspecial('average',3),I)/255; J3=filter2(fspecial('average',5),I)/255; J4=medfilt2(I,[3 3]); J5=medfilt2(I,[5 5]); figure();
subplot(221);imshow(J2);title('3x3均值滤波'); subplot(222);imshow(J3);title('5x5均值滤波'); subplot(223);imshow(J4);title('3x3中值滤波'); subplot(224);imshow(J5);title('5x5中值滤波');
六、 思考题
1.设定不同的斜率值和截距,显示效果会怎样? 2.直方图均衡化是什么意思?它的主要用途是什么?
答:直方图均衡化就是通过变换函数将原图像的直方图修正为平坦的直方图,以此来修正原图像之灰度值。它的主要用途是达到清晰图像的目的。
3. 均值(中值)滤波的模板大小对处理效果有什么影响? 答:模板尺寸越大,噪声减小的效果越显著。
数字图像处理实验报告
一、
实验目的
1了解图像变换的意义和手段; 2熟悉傅里叶变换的基本性质; 3热练掌握FFT方法及应用;
4通过实验了解二维频谱的分布特点;
5通过本实验掌握利用MATLAB编程实现数字图像的傅立叶变换及滤波锐化和复原处理;
6 了解理想、巴特沃兹、高斯等不同滤波器的结构及滤波效果。
二、 实验原理
1应用傅立叶变换进行图像处理
傅里叶变换是线性系统分析的一个有力工具,它能够定量地分析诸如数字化系统、采样点、电子放大器、卷积滤波器、噪音和显示点等的作用。通过实验培养这项技能,将有助于解决大多数图像处理问题。对任何想在工作中有效应用数字图像处理技术的人来说,把时间用在学习和掌握博里叶变换上是很有必要的。
2傅立叶(Fourier)变换的定义
对于二维信号,二维Fourier变换定义为: F(u,v)??????????f(x,y)e?j2?(ux?vy)dxdy
F(u,v)ej2?(ux?vy)dudv ej??cos??jsin?
f(x,y)???????? 二维离散傅立叶变换为:
1M?1N?1F(u,v)?f(x,y)e?j2?(ux/M?vy/N) for u?0,1,2,...,M?1,v?0,1,2,...,N?1??MNx?0y?0M?1N?1 f(x,y)???F(u,v)eu?0v?0j2?(ux/M?vy/N) for x?0,1,2,...,M?1,y?0,1,2,...,N?1
图像的傅立叶变换与一维信号的傅立叶变换变换一样,有快速算法,具体参见参考书目,有关傅立叶变换的快速算法的程序不难找到。实际上,现在有实现傅立叶变换的芯片,可以实时实现傅立叶变换。
3利用MATLAB软件实现数字图像傅立叶变换的程序: I=imread(‘原图像名.gif’); %读入原图像文件 imshow(I); %显示原图像
fftI=fft2(I); %二维离散傅立叶变换 sfftI=fftshift(fftI); %直流分量移到频谱中心 RR=real(sfftI); %取傅立叶变换的实部 II=imag(sfftI); %取傅立叶变换的虚部 A=sqrt(RR.^2+II.^2);%计算频谱幅值
A=(A-min(min(A)))/(max(max(A))-min(min(A)))*225; %归一化 figure; %设定窗口
共分享92篇相关文档