




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、一、课程设计目的(1)进一步掌握matlab的用法;(2)在实践中深入理解图像显示的方法;(3)学会用matlab对图像进行显示。二、课程设计要求(1)根据题目,查阅有关资料,掌握图像显示技术;(2)学习MATLAB软件,掌握MATLAB各种函数的使用;(3)根据图像显示原理,运用MATLAB进行编程,仿真调制过程,记录并分析仿真结果;(4)形成设计报告。三、设计方案一般情况下,如果图像的灰度分别集中在比较窄的区间,从而引起图像细节的模糊,为了使图像细节清晰,并使目标得到突出,达到图像增强的目的,可通过改善各部分亮度的比例关系,即通过直方图的方法来实现.直方图的方法是以概率论为基础的.常用的方
2、法有直方图均衡化和直方图规定化.(1) 直方图均衡化直方图均衡化又称直方图平坦化,是将一已知灰度概率密度分布的图像经过某种变换,变成一幅具有均匀灰度概率密度分布的新图像.其结果是扩展了像元取值的动态范围,从而达到增强图像整体对比度的效果.直方图均衡化的具体实现步骤如下:1).列出原始图像的灰度级 2)统计各灰度级的像素数目3).计算原始图像直方图各灰度级的频数4).计算累积分布函数5).应用以下公式计算映射后的输出图像的灰度级,P为输出图像灰度级的个数,其中INT为取整符号6).统计映射后各灰度级的像素数目 ni, i=0,1,k,P-1.7). 计算输出直方图Pg(gi)=ni/n, i=0
3、,1,P-1.8). 用fj和gi的映射关系修改原始图像的灰度级,从而获得直方图近似为均匀分布的输出图像(2)直方图规定化 直方图均衡化的优点是能自动增强整个图像的对比度,但它的具体增强效果不易控制,处理的结果总是得到全局的均衡化的直方图.实际工作中,有时需要变换直方图使之成为某个特定的形状,从而有选择地增强某个灰度值范围内的对比度,这时可采用比较灵活的直方图规定化方法.直方图规定化增强处理的步骤如下:令Pr(r)和Pz(z)分别为原始图像和期望图像的灰度概率密度函数。如果对原始图像和期望图像均作直方图均衡化处理,应有 (1) (2) (3)由于都是进行均衡化处理,处理后的原图像概率密度函数P
4、s(S)及理想图像概率密度函数PV(V)是相等的。于是,我们可以用变换后的原始图像灰度级S代替(2)式中的V。即Z = G - 1(S) (4)这时的灰度级Z 便是所希望的图像的灰度级。此外,利用(1)与(3)式还可得到组合变换函数Z = G - 1T(r) (5)对连续图像,重要的是给出逆变换解析式。对离散图像而言,有 (6) (7) (8)四、设计内容%-选择图片路径及显示-%global f%选择图片路径filename,pathname= . %.表示与下行连接uigetfile('*.bmp''*.jpg''*gif''*tif
5、','选择图片'); %打开文件类型,对话框名称f=imread(pathname filename);axes(handles.axes1); %在axes1显示原图像 imshow(f) ;title('原始图像');%-设置下拉菜单分别选择显示图像-%global fva=get(handles.popupmenu1,'Value'); val=get(hObject,'Value');switch val %用switch语句设置选项 case 1 %原图像直方图 I=double(f);m,n=size(I);
6、H=zeros(1,256); for i=1:m for j=1:n H(I(i,j)+1)=H(I(i,j)+1)+1; end end s=zeros(1,256);t=zeros(1,256); for i=1:256 s(i)=H(i)/(m*n); for j=1:i t(i)=t(i)+s(j); end end axes(handles.axes2); plot(s);title('原图像直方图'); case 2 %均衡化后图像及直方图 I=double(f);m,n=size(I); H=zeros(1,256); for i=1:m for j=1:n H
7、(I(i,j)+1)=H(I(i,j)+1)+1; end end s=zeros(1,256);t=zeros(1,256); for i=1:256 s(i)=H(i)/(m*n); for j=1:i t(i)=t(i)+s(j); end end t1=round(t*(256-1)+0.5); H1=zeros(1,256); for i=1:256 H1(t1(i)=H1(t1(i)+s(i); end axes(handles.axes4); bar(H1);title('均衡化后直方图'); I2=t1(I+1)-1; axes(handles.axes3);
8、imshow(uint8(I2);title('均衡化后图像');case 3%规定化后图像及直方图 I=f; J=I; New=I; L=256; %灰度级 Ps=zeros(L,1);% 存储原图像直方图概率数据 nk=zeros(L,1);%存储原图像直方图数据nk2=zeros(L,1);%存储直方图规定化后的图像的直方图Rk=zeros(L,1);%存储原图像累积直方图数据 Ps2=zeros(L,1); Rk2=zeros(L,1);row,col=size(I);%计算图像数据矩阵的行列数 n=row*col; %总像素个数 for i = 1:row for j
9、 = 1:col num = double( I(i,j)+1; %获取像素灰度级 nk(num) = nk(num)+1; %统计nk end end%计算直方图概率估计 for i=1:L Ps(i)=nk(i)/n;%计算累积直方图 if i=1Rk(i)=Ps(i); else 1<=256 Rk(i)=Rk(i-1)+Ps(i); end%规定化直方图 Ps2Temp=0.05,zeros(1,9),0.05,zeros(1,9),0.05,zeros(1,9),0.05,zeros(1,9),0.05,zeros(1,9),0.05,zeros(1,9),0.05,zeros
10、(1,39),0.05,zeros(1,19),0.05,zeros(1,19),0.05,zeros(1,19),ones(1,80).*0.0045,ones(1,16).*0.0088; Ps2=Ps2Temp'%计算规定化累积直方图 for c=1:L if c=1 Rk2(c)=Ps2(c); else Rk2(c)=Rk2(c-1)+Ps2(c); end end%计算原图像与目标图像累计直方图数值的差的绝对值 double ScMin=zeros(256,256); for Y=1:L for X=1:L ScMin(X,Y)=abs(Rk(Y)'-Rk2(X)&
11、#39;); end end%建立映射 HisM=zeros(L:1); for P=1:L min = 0; minV=ScMin(1,P); for Q=1:L if(minV>ScMin(Q,P) minV=ScMin(Q,P); min = Q; end end HisM(P)= min; end%将原图像的每个像素灰度转换为直方图均衡化后的灰度 for x = 1:row for y = 1:col Num = double( I(x,y)+1; if Num=i New(x,y)=HisM(i); end end end end%计算直方图规定化后的直方图 for p = 1
12、:rowfor q = 1:colNN = double( New(p,q)+1;nk2(NN) = nk2(NN)+1;end end axes(handles.axes5); imshow(New),title('规定化后图像'); axes(handles.axes6); plot(Ps2),title('规定化后直方图');end;%-直接调用函数-%global fva=get(handles.popupmenu2,'Value'); val=get(hObject,'Value');switch val case 1
13、axes(handles.axes1); %在axes1显示图像 imshow(f); title('原图像'); axes(handles.axes2); h=imhist(f,256); plot(h) ylim('auto'); %自动设定Y轴坐标范围和刻度 title('原始直方图') case 2 j=histeq(f); axes(handles.axes3); imshow(j) ; title('均衡化图像'); axes(handles.axes4); h=imhist(j,256); plot(h) ylim(
14、'auto'); title('均衡化图像直方图') case 3 hgram=50:2:250 k=histeq(f,hgram); axes(handles.axes5); imshow(k) ; title('规定化图像'); axes(handles.axes6); h=imhist(k,256); plot(h) ylim('auto'); title('规定化图像直方图') end;五、实验结果GUI界面设计:选择图片路径:直接调用函数均衡化和规定化:原图像与均衡化和规定化后对比:六、结果分析通过直接调
15、用函数和编程对图像进行处理的结果对比,可以看出实验结果和理论结果基本一致;在编程处理中,可以自定义对规定化中的直方图(Ps2Temp)进行修改,从而得到所希望的图像增强效果.七、总结分析一周的数字图像处理课程设计,最大的收获是初步的掌握的Matlab软件的使用,通过这次课程设计,我学会如何利用MATLAB制作视图界面(GUI),并通过视图界面对数字图像进行处理,方便快捷,而且美观。在实践过程中,基本上是在已有的基础上自学而完成的,所以对自己的自学能力的提高也起到了一定的作用。并且在此次实习过程中,充分利用了图书馆,及其网络资源,才能够成功完成任务,让我意识到充分利用身边资源的重要性。本次数字图像处理课程设计不仅加强了对课本知识的了解,而且大大增强了我们课外自学和动手能力,让我受益良多。八、参考文献张汗
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 青海农牧科技职业学院《工程流体力学及通风》2023-2024学年第二学期期末试卷
- 哈尔滨信息工程学院《车辆工程力学》2023-2024学年第二学期期末试卷
- 武汉晴川学院《用户体验分析与交互设计》2023-2024学年第二学期期末试卷
- 成都大学《普通病毒学》2023-2024学年第二学期期末试卷
- 工业园区中的绿色建筑设计思路
- 工业互联网的架构与优化策略
- 工业互联网中的智能机房建设案例
- 工业产品设计流程与项目管理
- 工业互联网在供应链金融中的应用
- 嵌入式系统在自动控制中的应用
- 《ptc钛酸钡陶瓷》课件
- 氮气安全知识培训课件
- 银发经济的发展路径
- 金矿融资计划书范文
- JGJ46-2024 建筑与市政工程施工现场临时用电安全技术标准
- 足球场草坪养护管理手册
- 国际私法-001-国开机考复习资料
- 《安全事故案例》课件
- 皮瓣移植护理个案
- 基于社交媒体的时尚品牌营销策略研究
- 中国脑出血诊治指南
评论
0/150
提交评论