您好,欢迎访问三七文档
专业综合实验报告----数字图像处理专业:电子信息工程班级:学生姓名:学号:指导教师:年月日设计题目:图像去雾处理一、设计目的由于大气的散射作用,照相机接收到景物反射过来的光线经过了衰减。雾天的大气退化图像具有对比度低、景物不清晰的特点,给交通系统及户外视觉系统的应用带来严重的影响。。鉴于图像处理和计算机视觉中有关图像理解、目标识别、目标跟踪、智能导航等领域的很多算法都是假设输入的图像或视频是在理想天气条件下拍摄的,因此有雾图像清晰化就显得格外重要,是目前人们研究的热点问题之一,但由于成像系统聚焦模糊、拍摄场景存在相对运动以及雾天等不利环境,使得最终获取的图像往往无法使用。有雾天气条件下获取的图像对比度低、图像内容模糊不清而且颜色整体偏向灰白色,图像去雾的目的就是恢复有雾图像的对比度和真实色彩,重现在理想天气条件下拍摄的清晰图像。二、设计内容和要求1、采用直方图均衡化方法增强雾天模糊图像,并比较增强前后的图像和直方图;2、查阅文献,分析雾天图像退化因素,设计一种图像复原方法,对比该复原图像与原始图像以及直方图均衡化后的图像;三、设计思路由于图像中存在噪声等干扰,使得图像模糊不清。可以采用图像增强的方法对原图像处理,使图像变得清晰。而直方图均衡化是一种常用的图像增强的方法。图像模糊,其图像的像素分布不均匀,采用直方图均衡化的方法使其图像像素分布均匀,从而达到均衡像素分布增强图像的目的。设计方案在晴朗的天气条件下,洁净的空气一般是由氦气、氧气等气体分子、水蒸汽、微量的固体悬浮颗粒物等成分构成。在这种大气条件下,从物体表面反射的光线在到达成像设备的过程中,基本不会受大气中各种成分的影响发生散射、吸收、发射等现象,而是直接到达成像设备。相对在有雾天气条件下获得的图像,在这种理想天气条件获得的图像,我们称之为清晰无雾图像。而在有雾天气条件下获得的图像模糊不清,图像对比度下降,图像的颜色发生漂移,偏向灰白色。无雾图像和有雾图像相比对比度较高,因此可以考虑增强局部对比度方法进行去雾:1、对彩色图像RGB模型转换为HSI,对I分量分析图像直方图;2、设置适合尺寸模版,对I分量进行局部直方图均衡化增强,分析增强前后的图像和直方图。3、查阅“基于暗原色先验的单一图像去雾方法”,设计图像无雾算法。流程框图直方图均衡化对于连续图像,设r和s分别表示被增强图像和变换后图像的灰度。为了简单,在下面的讨论中,假定所有像素的灰度已被归一化了,就是说,当时,表示黑色;当时,表示白色;变换函数与原图像概率密度函数之间的关系为:0()()()rrsTrprdr01r(1)式中:r为积分变量。式(1)的右边可以看作是r的累积分布函数(CDF),因为CDF是r的函数,并单调地从0增加到1,所以这一变换函数满足了前面所述的关于在内单值单调增加,对于,有的两个条件。由于累积分布函数是r的函数,并且单调的从0增加到1,所以这个变换函数满足对式(1)中的r求导,则:()rdsPrdr(2)输入图像RGB模型中进行直方图均衡化RGB模型转换为HIS模型在HIS模型中对亮度进行均衡化输出图像再把结果带入式:111()()()()[()][()]()srrrrTsdrddrPsPrprTsprTsdsdsds则得11()()11()[()]()[][()]1/()srrrrTsrTsrdrdpsprprprdsdsdsdrpr(3)由以上推到可见,变换后的变量s的定义域内的概率密度是均匀分布的。由此可见,用r累积分布函数作为变换函数可产生一幅灰度级分布具有均匀概率密度的图像。其结果扩展了像素取值的动态范围。上面的修正方法是以连续随机变量为基础进行讨论的。为了对图像进行数字处理,必须引入离散形式的公式。当灰度级是离散值的时候,可用频数近似代替概率值,即:()krknprN(01kr0,1,2,k…,L-1)(4)式中,L是灰度级数;是取第k级灰度值的概率;是在图像中出现第k级灰度的次数;N是图像中像素数。通常把为得到均匀直方图的图像增强技术叫做直方图均衡化处理或直方图线性化处理。式(1)的直方图均衡化累积分布函数的离散形式可由式(5)表示:00()()kkjkkrjiinsTrprN(01jr,0,1,2,k…,L-1)(5)其反变换为1()kkrTs(6)直方图均衡化效果:原图直方均衡后原图直方均衡后直方图均衡化是一种全局操作,而有雾图像的退化程度是不均匀的,场景深度大的物体比场景深度小的物体退化的更严重,在某种程度上局部直方图均衡化更能描述这种性质。在图像一个窗口内使用直方图均衡化算法,然后通过窗口在图像上不同位置的移动就计算出来了整幅图像的局部化直方图。这种算法的计算量比较大,使用一些优化技巧可以提高图像处理的速度。显示了同一幅有雾图像在不同窗口大小下的局部直方图均衡化结果,从中可以大略看出小窗口处理结果的对比度较大,图像上的噪声也比较严重;大窗口处理结果的比较平滑,噪声比较小。HIS彩色模型下的图像增强在图像处理及显示的过程中,为了能正确的使用颜色模型,需要建立颜色模型。颜色模型是三维颜色空间中的一个可见光集,它包含某个颜色域的所有模型。常见的颜色模型有RGB,HSV,NTSC,HISr等,各颜色模型之间可通过公式进行相互转换。HSI〔Hue-Saturation-Intensity(Lightness),HSI或HSL〕颜色模型用H、S、I三参数描述颜色特性,其中H定义颜色的波长,称为色调;S表示颜色的深浅程度,称为饱和度;I表示强度或亮度当人观察一个彩色物体时,用色调、饱和度、亮度来描述物体的颜色。色调是描述纯色的属性(纯黄色、橘黄或者红色);饱和度给出一种纯色被白光稀释的程度的度量;亮度是一个主观的描述,实际上,它是不可以测量的,体现了无色的强度概念,并且是描述彩色感觉的关键参数。而强度(灰度)是单色图像最有用的描述子,这个量是可以测量且很容易解释。则将提出的这个模型称作为HSI(色调、饱和度、强度)彩色模型,该模型可在彩色图像中从携带的彩色信息(色调和饱和度)里消去强度分量的影响,使得HSI模型成为开发基于彩色描述的图像处理方法的良好工具,而这种彩色描述对人来说是自然而直观的。HSI模型基于两个重要的事实:其一,I分量与图象的彩色信息无关;其二,H和S分量与人感受颜色的方式是紧密相连的。HSI模型中的各分量可定义在如图1(a)中所示的双棱锥中,其中每个横截面如图1(b)所示。对其中的任1个色点P,其H的值对应指向该点的矢量与R轴的夹角。这个点的S与指向该点的矢量长成正比,越长越饱和。利用由RGB转换成HIS的公式进行模型转换:基于Matlab的RGB色彩模型和HSI色彩模型的互化变换公式:H=θB≤G360-θBG其中,θ=arccos0.5∗[R−G+(R−B)][R−G+(R−B)(G−B)1/2];S=1-3(R+G+B)[min(R,G,B)]I=1/3*(R+G+B);clear;clc;close;x=imread('1.jpg');rgb=im2double(x);r=rgb(:,:,1);g=rgb(:,:,2);b=rgb(:,:,3);%提取彩色图像R、G、B三个色彩通道的分量。%构建rgb到his模型的转换公式num=0.5*((r-g)+(r-b));den=sqrt((r-g).^2+(r-b).*(g-b));theta=acos(num./(den+eps));H=theta;H(bg)=2*pi-H(bg);H=H/(2*pi);num=min(min(r,g),b);den=r+g+b;den(den==0)=eps;S=1-3.*num./den;H(S==0)=0;I=(r+g+b)/3;hsi=cat(3,H,S,I);%将色调H(Hue)、饱和度S(Saturation)、强度I(Intensity)分量合并成hsi色彩空间矩阵subplot(121),imshow(hsi),title('rgb转hsi');%显示结果图像H=hsi(:,:,1)*2*pi;S=hsi(:,:,2);I=hsi(:,:,3);%得到R、G、B三个分量的初始矩阵,并赋为全0R=zeros(size(hsi,1),size(hsi,2));G=zeros(size(hsi,1),size(hsi,2));B=zeros(size(hsi,1),size(hsi,2));%当H分量在0到2/3pi之间时idx=find((0=H)&(H2*pi/3));B(idx)=I(idx).*(1-S(idx));R(idx)=I(idx).*(1+S(idx).*cos(H(idx))./cos(pi/3-H(idx)));G(idx)=3*I(idx)-(R(idx)+B(idx));%当H分量在2/3pi到4/3pi之间时idx=find((2*pi/3=H)&(H4*pi/3));R(idx)=I(idx).*(1-S(idx));G(idx)=I(idx).*(1+S(idx).*cos(H(idx)-2*pi/3)./cos(pi-H(idx)));B(idx)=3*I(idx)-(R(idx)+G(idx));%当H分量在4/3pi到2pi之间时idx=find((4*pi/3=H)&(H=2*pi));G(idx)=I(idx).*(1-S(idx));B(idx)=I(idx).*(1+S(idx).*cos(H(idx)-4*pi/3)./cos(5*pi/3-H(idx)));R(idx)=3*I(idx)-(G(idx)+B(idx));rgb1=cat(3,R,G,B);%合并矩阵得到结果subplot(122),imshow(rgb1),title('hsi转rgb');四、源程序matlab源程序1、选择图像并观察其直方图[fnamepname]=uigetfile({'*.png';'*.jpg'},'selectaimage');Im=imread(fname);axes(handles.axes1);imshow(Im);imwrite(Im,'image1.tif');axes(handles.axes2);Im_1=rgb2gray(Im);imhist(Im_1,64);2、在RGB模型中对其进行直方图均衡化RGB=imread('image1.tif');R=RGB(:,:,1);G=RGB(:,:,2);B=RGB(:,:,3);r=histeq(R);g=histeq(G);b=histeq(B);Im2=cat(3,r,g,b);axes(handles.axes3);imshow(Im2);axes(handles.axes4);Im_2=rgb2gray(Im2);imhist(Im_2,64);3、在HIS模型中对亮度进行均衡化F=imread('image1.tif');F=im2double(F);r=F(:,:,1);g=F(:,:,2);b=F(:,:,3);th=acos((0.5*((r-g)+(r-b)))./((sqrt((r-g).^2+(r-b).*(g-b)))+eps));H=th;H(bg)=2*pi-H(bg);H=H/(2*pi);S=1-3.*(min(min(r,g),b))./(r+g+b+eps);I=(r+g+b)/3;hsi=cat(3,H,S,I);IE=histeq(I);RV=cat(3,H,S,IE);HV=RV(:,:,1)*2*pi;SV=RV(:,:,2);IV=RV(:,:,3);R=zeros(size(HV));G=zeros(size(HV));B=zeros(size(HV));%RGSector;判断H所在范围id=find((0=HV)&(HV2*pi/3));B(id)=IV(id).*(1-SV(id));
本文标题:数字图像处理课设
链接地址:https://www.777doc.com/doc-3560593 .html