MATLAB视频去雾系统设计(含GUI、源码、论文)‌

一、课题介绍

雾霾,它会使大气的能见度降低,景物图像发生退化,在雾霾下拍摄的图像内容模糊,对比度下降,这将会严重影响人们的行车系统,卫星系统,导航系统等。目前,拍摄器材成本还是比较高昂,另外又得益于计算机技术的迅猛发展,计算机技术的运算速度越来越快,图像处理系统的价格日益下降,随着计算机视觉与图像处理技术的快速发展,户外视觉系统的研究与应用也在飞速增长。从而图像处理技术得以广泛用于科学和工程领域,为了保证视觉系统全天候正常工作,就必须使系统适应各种天气状况,而雾霾下图像对比度和颜色的会发生退化,导致这些系统无法正常工作。因此,如果有一套行之有效的软件系统,可以改善图像质量现在迫在眉睫。

该课题是基于MATLAB平台的图像去雾处理,配备一个人机交互GUI界面,可以选择局部直方图均衡化,全局直方图均衡化,Retinex算法,通过对比处理前后的图像的直方图,而直方图是一副图像各灰度值在0-256的分布个数的表,信息论已经整明,具有均匀分布直方图的图像,其信息量是最大的。

二、算法介绍

全局直方图均衡化:通俗地理解就是,不管三七二十一,直接强行对彩色图像的R,G,B三通道颜色进行histeq均衡处理,然后进行三通道重组;

局部直方图均衡化:设置一个固定大小的滑块,分别对彩色图像进行R,G,B三通道进行逐个像素地平滑处理,然后重组三通道,当然这样做的,虽然实现了图像的去雾效果,但是以部分像素曝光作为牺牲补偿。

Retinex算法:通俗地讲就是,分离R,G,B三通道,对每个通道进行卷积滤波。

三、GUI设计图(学习好GUI,有助于毕业后从事UI界面设计类工作,如深圳创维,康佳,彩虹电视等需要大量该类岗位,适合女孩子居多,该类工作居于程序员和文员之间

                              GUI界面设计图

 

GUI制作说明:GUI是MATLAB的人机交互式GUI界面,有GUI界面,所有操作可在一个界面上完成,可以为毕设增分不少。GUI可在MATLAB命令行窗口输入guide回车快速打开,GUI常用的控件有axes,edit,putton,text几个组件,不同组件之间通过回调函数来进行连接,触发操作,可教学GUI制作,以及友情推荐同类岗位工作。

 

四、代码附录

1、图像载入
[name,path]=uigetfile({'*.jpg';'*.bmp';'gif'},'载入图像');
    if isequal(name,0)|isequal(path,0)
        errordlg('没有选中文件噢','出错');
        return;
    else
        Img1=imread([path,name]);  %获取位置
        axes(handles.axes1);%axes表示获取位置,这里选取的位置为axes1;
        imshow(Img1); %显示图像
        title('原图', 'FontWeight', 'Bold');
       guidata(hObject,handles) %更新结构体;
        save('Img1');  %保存变量
End




2、算法选择
pnum=get(handles.way,'value');%下拉框的值
switch pnum
    case 1
        handles.Img2 = RemoveFogByGlobalHisteq(handles.Img1, 0);%执行RemoveFogByGlobalHisteq.m这个子函数
        axes(handles.axes2); imshow(handles.Img2, []);%结果图handles.Img2显示在axes2中
        guidata(hObject, handles);
        set(handles.edit1, 'String', ...
    '全局直方图均衡化实现图像去雾算法。');%将何种方法显示在edit框里
        save('handles.Img2');%保存下来
    case 2
       handles.Img2 = RemoveFogByLocalHisteq(handles.Img1, 0);
       axes(handles.axes2); imshow(handles.Img2, []);
       guidata(hObject, handles);
       set(handles.edit1, 'String', ...
    '局部直方图均衡化实现图像去雾算法。');
       save('handles.Img2');
    case 3
       handles.Img2 = RemoveFogByRetinex(handles.Img1, 0);
       axes(handles.axes2); imshow(handles.Img2, []);
       guidata(hObject, handles);
       set(handles.edit1, 'String', ...
    '基于RETINEX理论去雾算法。');
       save('handles.Img2');
    otherwise
end
title('去雾图', 'FontWeight', 'Bold');

3、直方图
Q = rgb2gray(handles.Img1);
W = rgb2gray(handles.Img2);
axes(handles.axes3); imhist(Q, 64); title('原灰度直方图', 'FontWeight', 'Bold');
axes(handles.axes4); imhist(W, 64); title('处理后的灰度直方图', 'FontWeight', 'Bold');

五、运行效果图

                                部分运行效果图

 

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空