图像清晰化系统设计与实现

2022-02-24 12:07刘晨
喀什大学学报 2022年6期
关键词:参数值沙尘直方图

刘晨

(喀什大学计算机科学与技术学院,新疆喀什 844000)

关键字 :C#;C++;图像清晰化

0 引言

随着图像处理技术和计算机技术的发展,对特殊天气条件下得到的图像的处理成为计算机视觉领域的一个重要研究方向.由于雾霾、沙尘等因素的影响,在此天气条件下得到的图像会存在对比度低、细节丢失等情况,这些缺失将会影响后续图像分析识别工作.因此,需要对此类图像进行清晰化[1-3]处理,增强图像的信息.目前图像清晰化算法主要有Retinex 算法[4]、直方图均衡化算法[5]、自动颜色均衡算法[6]、小波变换算法[7]、图像复原算法[8]、快速去雾算法[9]以及卷积神经网络算法[10]和深度学习算法[11-12]等.

本系统实现五种图像清晰化算法,分别是RetinexSSR(单尺度Retinex 算法)、HE(直方图均衡算法)、ACE(自动颜色均衡算法)、MEAN(基于均值滤波思想的快速算法)和DCP(基于暗通道先验的算法).利用C#程序设计语言[13-14]和C++程序设计语言编程完成系统界面设计、算法设计和软件的开发.本文用C#设计软件界面,并用C++程序完成图像清晰化算法函数并且生成DLL,在C#中调用DLL 中的库函数.

图1 所示的是系统整体概述,图2 是系统运行初始界面图,图3 是具体程序接口调用过程.FromSSR/FromHE/FromACE/FromMean/FormDCP 是五种清晰化算法界面设计模块,SSRDLL/HEDLL/ACEDLL/MEANDLL/DCPDLL 是实现具体图像清晰化算法模块并且生成动态链接库,SSR/HE/ACE/MEAN/DCP是使用C#程序调用对用DLL模块.

图1 系统概述

图2 系统界面

图3 接口调用

1 算法概述以及具体实现

1.1 MEAN 算法

MEAN 算法[9]及其具体的实现细节基于单幅图像的快速算法描述如下:

(1)输入图像H(x);

(2)求取M(x)为

其中,r,g,b分别表示图像红绿蓝三个通道;

(3)对M(x)进行均值滤波得到Mave(x)为

(4)求取M(x)中所有元素的均值mav;

(5)利用Mave(x)求出L(x)为

其中ρ为参数值;

(6)使用Mave(x)和H(x)求A为

(7)输出图像,得到的清晰化图像F(x)为

具体的公式推导参见文献[9],使用C++程序语言和C#调用生成的DLL 库的算法实现过程如图4所示.

图4 算法实现过程

1.2 其余算法

RetinexSSR,HE,ACE,DCP 算法概述如下,具体算法过程参见相应文献.

(1)RetinexSSR 算法

在Retinex模型中I(x,y)=R(x,y)*L(x,y),I(x,y)是观察到的图像;R(x,y)是反射分量,代表模型本质信息;L(x,y) 是入射分量,可以表示为L(x,y)=I(x,y)*G(x,y),G(x,y)是高斯函数.通常将乘法域转化到对数域求解R(x,y).

(2)HE 算法

图像的灰度直方图可以写成

其中,nk为灰度级为k的像素的个数,L是灰度级.在直方图的基础上,进一步定义Pr(k),其表示归一化的直方图为灰度级出现的相对频率,Pr(k)=nk/N,N表示图像像素总数.

(3)ACE 算法

首先获得中间图像,对图像进行色彩进行调整,从而完成图像色差矫正,得到空域重构中间图像:

其中Ic(p) -Ic(j)表示像素点p和j亮度差,d(p,j)表示度量函数.最后将其映射到[0,255]空间中从而得到:

(4)DCP 算法

DCP算法中模型可以表示为

其中I为有雾霾的图像,J表示理想图像,t是透射率,A表示全局大气光照,通常选择暗通道中最亮的0.1%的像素来计算获得.

定义暗通道为

其中,c是图像中各个颜色通道.根据暗通道原理Jdark(x)是趋于0 的.推导公式可以得到透射率,通常在透射率中加入一个系数得到

2 实验结果

图2 展示的是系统初始界面,其对应是Ret⁃inexSSR,HE,ACE,MEAN,DCP 五种具体清晰化算法菜单选项.图5 到图9 中使用的图片是网络上各个算法使用的经典图片,图10 中使用图片是在沙尘天气下使用手机拍摄的喀什大学新泉校区照片.

图5 RetinexSSR算法

在RetinexSSR 算法界面中有打开图像和保存图像.系统打开时候,中间左右两边显示的都是原始待处理图片.算法完成后,系统界面左边显示的原始待处理图片,系统界面右边显示的是算法完成后图片(后续各个算法一样进行设置).SSR 操作就是对图片进行RetinexSSR 算法处理.Radius 是算法中窗口半径值,SigmaS 和a 值[0,1]是算法中使用的参数值,可以进行设置.运行结果如图5 所示.

在HE 界面中有打开图像和保存图像.直方图增强操作就是对图片进行HE 清晰化算法处理.运行结果如图6 所示.

图6 HE算法

在ACE 系统界面中有打开图像和保存图像.ACE 操作就是对图片进行ACE 算法处理.radius 是算法中窗口半径值,ratio 是算法中使用的参数值,可以进行设置.运行结果如图7所示.

图7 ACE算法

在DCP 去雾界面中有打开图像和保存图像.DCP 处理操作就是对图片进行DCP 清晰化算法处理.RadiusDark,aipha,RadiusGuider,epsilon 是算法中使用的参数值,可以进行设置.运行结果如图8所示.

图8 DCP算法

在MEAN去雾界面中有打开图像和保存图像.MEAN 处理操作就是对图片进行MEAN 算法处理.radius 是算法中窗口半径值,rho 是算法中使用的参数值,可以进行设置.运行结果如图9所示.

图9 MEAN算法

从图5—9 所示运行结果中可以看出,在五种清晰化算法RetinexSSR,HE,ACE,MEAN,DCP 中MEAN 算法效果最好.本文使用MEAN 算法对喀什地区沙尘图片进行处理,选取的图片是在喀什沙尘天气下使用手机拍摄的喀什大学新泉校区图片.具体处理效果如图10所示.

图10 MEAN算法处理喀什大学新泉校区沙尘图片

3 结论

本系统实现了RetinexSSR,HE,ACE,MEAN,DCP 五种图像清晰化算法.利用C#程序设计语言编程完成系统界面设计,并用C++程序设计语言实现五种不同图像清晰化算法并且生成动态链接库DLL,在C#界面程序里调用DLL库函数.在后续研究中将实现更多的图像清晰化算法.

猜你喜欢
参数值沙尘直方图
符合差分隐私的流数据统计直方图发布
例谈不等式解法常见的逆用
不等式(组)参数取值范围典例解析
用直方图控制画面影调
某系列柴油机与电子调速器匹配标准化参数优化
逆向思维求三角函数中的参数值
可怕的沙尘天气
中考频数分布直方图题型展示
圆投影及直方图不变矩在多视角产品检测中的应用