黃麗韶
摘 要:文章討論了霧霾天氣下的圖像清晰化技術(shù),首先對(duì)圖像去霧的背景和理論基礎(chǔ)進(jìn)行了介紹,然后分別利用全局直方圖、局部直方圖和Retinex增強(qiáng)處理霧天圖像的清晰化技術(shù)進(jìn)行實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明,基于Retinex增強(qiáng)處理的去霧方法針對(duì)性強(qiáng),運(yùn)行效率高,且易于融合其他圖像增強(qiáng)算法。文章討論的去霧技術(shù)對(duì)其他惡劣天氣下的圖像清晰化技術(shù)也起到促進(jìn)作用。
關(guān)鍵詞:圖像去霧;直方圖;Retinex
0? ? 引言
近年來(lái),霧霾等惡劣天氣給人類的生產(chǎn)和生活帶來(lái)極大的不便。一般而言,在惡劣天氣(如霧天、雨天等)條件下,戶外景物圖像的對(duì)比度和顏色也會(huì)退化或被改變,圖像中蘊(yùn)含的許多特征也會(huì)模糊或被覆蓋,這也會(huì)導(dǎo)致某些視覺系統(tǒng)(如電子卡口、門禁監(jiān)控等)無(wú)法正常工作。因此,從霧霾天氣所采集的退化圖像中復(fù)原和增強(qiáng)景物細(xì)節(jié)信息具有重要的現(xiàn)實(shí)意義[1]。
1? ? 理論基礎(chǔ)
1.1? 空域圖像增強(qiáng)
圖像增強(qiáng)主要是指空間域增強(qiáng)、頻率域增強(qiáng)、彩色增強(qiáng)、多圖像代數(shù)運(yùn)算、多光譜圖像增強(qiáng)等。我們進(jìn)行圖像增強(qiáng)的主要目的是改變圖像的灰度等級(jí),提高圖像對(duì)比度,消除邊緣和噪聲,平滑圖像,突出邊緣或線狀地物,銳化圖像,合成彩色圖像,壓縮圖像數(shù)據(jù)量,突出主要信息等。比如,對(duì)于拍攝的圖像,目標(biāo)物的顏色與背景顏色相差不大,這導(dǎo)致邊緣提取很困難,可以采取增強(qiáng)對(duì)比度使得前景與背景的顏色辨識(shí)度提高,以便于后期的邊緣提取??沼蛱幚矸ㄊ侵钢苯訉?duì)圖像中的像素進(jìn)行處理,一般是以圖像灰度映射變換為基礎(chǔ)并且根據(jù)圖像增強(qiáng)的目標(biāo)采用所需的映射變換,常用的圖像對(duì)比度增強(qiáng)、圖像的灰度層次優(yōu)化等處理均屬于空域處理法[2]。
1.2? 直方圖均衡化
一般來(lái)說,圖像對(duì)比度可用較為常見的兩種方法進(jìn)行增強(qiáng)處理,分別為直方圖拉伸方法和直方圖均衡化方法。對(duì)于直方圖均衡化而言,圖像灰度的改變是通過累積函數(shù)實(shí)現(xiàn)的,以此達(dá)到增強(qiáng)對(duì)比度的效果。其操作步驟的核心思路即對(duì)原始圖像的非均質(zhì)化拉伸處理,使其像素值間距擴(kuò)張,均勻化各灰度范圍的像素量。直方圖與圖像清晰度有如下關(guān)系:亮度不足,即代表其在直方圖中主要位于像素值較小區(qū)間;亮度高,即表示其在直方圖中主要位于像素較大區(qū)間;灰度級(jí)隨對(duì)比度的降低而降低,且中間水平的灰度級(jí)是主要信息的儲(chǔ)存區(qū);灰度級(jí)隨對(duì)比度的升高而升高,且主要信息呈均勻化分布。
數(shù)字圖像是離散化的數(shù)值矩陣,其直方圖可以被視為一個(gè)離散函數(shù),它表示數(shù)字圖像中每一灰度級(jí)與其出現(xiàn)概率間的統(tǒng)計(jì)關(guān)系[3]。直方圖在一定程度上能夠反映數(shù)字圖像的概貌性描述,包括圖像的灰度范圍、灰度分布、整幅圖像的亮度均值和陰暗對(duì)比度等,并可以此為基礎(chǔ)進(jìn)行分析得出對(duì)圖像進(jìn)一步處理的重要依據(jù)。直方圖均衡化也叫作直方圖均勻化,就是把給定圖像的直方圖分布變換成均勻分布的直方圖,是一種較為常用的灰度增強(qiáng)算法。直方圖均衡化包括以下3個(gè)主要步驟:(1)預(yù)處理。輸入圖像,計(jì)算該圖像直方圖。(2)灰度變換表。根據(jù)輸入圖像的直方圖計(jì)算灰度值變換表。(3)查表變換。
根據(jù)信息論的相關(guān)理論,我們可以知道圖像經(jīng)直方圖均衡化后,將會(huì)包含更多的信息量,進(jìn)而能突出某些圖像特征。
2? ? 程序?qū)崿F(xiàn)
為進(jìn)行圖像去霧實(shí)驗(yàn),本文采用全局直方圖均衡化、局部直方圖均衡化算法進(jìn)行圖像去霧實(shí)驗(yàn),并選擇Retinex增強(qiáng)算法作為直方圖去霧算法延伸。采用GUI設(shè)計(jì)軟件并通過菜單關(guān)聯(lián)不同的去霧算法,通過顯示處理前后的圖像直方圖進(jìn)行去霧效果的對(duì)比。
2.1? 設(shè)計(jì)GUI界面
為增加軟件交互的易用性,調(diào)用Matlab的GUI生成軟件框架,提供有關(guān)去霧圖像載入、處理、對(duì)比的過程。軟件通過菜單關(guān)聯(lián)的方法進(jìn)行功能設(shè)計(jì),實(shí)現(xiàn)模塊化編程。其中,文件菜單主要用于載入待處理圖像等基本操作,圖像去霧菜單用于關(guān)聯(lián)不同的去霧算法并進(jìn)行結(jié)果顯示,幫助菜單彈出獨(dú)立窗口用于軟件操作流程介紹。GUI主窗口加入坐標(biāo)軸控件用于圖像顯示,通過原圖像與結(jié)果圖像的顯示可以簡(jiǎn)捷地演示算法的去霧效果。
2.2? 全局直方圖處理
Matlab通過函數(shù)imread讀取RGB圖像,并通過維數(shù)m?n?3的矩陣表示。其中m?n表示圖像的行數(shù)、列數(shù)信息,維數(shù)3表示圖像的R,G,B三層通道數(shù)據(jù)。因此,全局直方圖處理通過對(duì)RGB圖像的R,G,B三層通道分別進(jìn)行直方圖均衡化,再整合到新圖像的方式進(jìn)行。
關(guān)聯(lián)到菜單“圖像去霧/全局直方圖算法”,執(zhí)行圖像的全局直方圖處理并進(jìn)行顯示。運(yùn)行結(jié)果表明,全局直方圖去霧算法可以實(shí)現(xiàn)含霧圖像的增強(qiáng)效果,處理前后的直方圖在分布上具有明顯變化,但在圖像整體上容易出現(xiàn)某些色彩失真的現(xiàn)象。
2.3? 局部直方圖處理
全局直方圖均衡化增強(qiáng)只是將原圖像的直方圖進(jìn)行了均衡化,未能有效保持原始圖像的局部特征,容易出現(xiàn)色彩失真問題。通過選擇固定尺寸的滑動(dòng)窗口作用于原始圖像進(jìn)行局部直方圖處理,可以在一定程度上保持原始圖像的局部特征,提高圖像增強(qiáng)的效果。因此,局部直方圖處理通過對(duì)RGB圖像的R,G,B三層通道分別進(jìn)行局部直方圖均衡化,再整合到新圖像的方式進(jìn)行。
關(guān)聯(lián)到菜單“圖像去霧/局部直方圖算法”,執(zhí)行圖像的局部直方圖處理并進(jìn)行顯示。局部直方圖的處理結(jié)果表明該算法能有效保持原始圖像的局部特征,未出現(xiàn)明顯的色彩失真現(xiàn)象,同時(shí)也得到了去霧增強(qiáng)的效果。但是,該算法處理結(jié)果整體亮度偏暗,依然存在某些模糊區(qū)域。
2.4? Retinex增強(qiáng)處理
基于全局直方圖、局部直方圖的圖像去霧算法比較簡(jiǎn)單,能起到一定的去霧處理效果。實(shí)驗(yàn)采取了Retinex圖像增強(qiáng)算法進(jìn)行對(duì)比,該算法可以平衡圖像灰度動(dòng)態(tài)范圍壓縮、圖像增強(qiáng)和圖像顏色恒常3個(gè)指標(biāo),能夠?qū)崿F(xiàn)對(duì)含霧圖像的自適應(yīng)性增強(qiáng)。因此,Retinex增強(qiáng)處理通過對(duì)RGB圖像的R,G,B三層通道分別應(yīng)用Retinex算法進(jìn)行處理,再整合到新圖像的方式進(jìn)行。核心代碼如下所示。
function In=RemoveFogByGlobalHisteq(f,flag)
%用Retinex的MSR實(shí)現(xiàn)圖像去霧
% 輸入?yún)?shù):
% f—圖像矩陣
% flag—顯示標(biāo)記
% 輸出參數(shù):
% In—結(jié)果圖像
if nargin<2? flag=1;
end
%RGB通道
fr=f(:,:,1);……
%數(shù)據(jù)類型歸一化
mr=mat2gray(im2double(fr));……
%定義標(biāo)準(zhǔn)差
alpha=1458;
%定義模板大小
n=161;
%計(jì)算中心
n1=floor((n+1)/2);
for i=1:n
for j=1:n
%高斯函數(shù)
b(i,j)=exp(-((i-n1)^2+(j-n1)^2)/(4*alpha))/(pi*alpha);
end
end
%卷積濾波
nr1=imfilter(mr,b,conv,replicate);……
ur1=log(nr1);……
tr1=log(mr);……
yr1=(tr1-ur1)/3;……
%定義標(biāo)準(zhǔn)差
beta=53.38;
%定義模板大小
x=31;
%計(jì)算中心
x1=floor((n+1)/2);
for i=1:n
for j=1:n
%高斯函數(shù)? ?a(I,j)=exp(-((i-n1)^2+(j-n1)^2)/(4*beta))/(6*pi*beta);
end
end
%卷積濾波
%定義標(biāo)準(zhǔn)差
eta=13944.5;
%定義模板大小
l=501
%計(jì)算中心
l1=floor((n+1)/2);
for i=1:n
for j=1:n
%高斯函數(shù)? e(i,j)=exp(-((i-n1)^2)+(j-n1)^2)/(4*eta))/(4*pi*eta);
end
end
%卷積濾波
%結(jié)果顯示
關(guān)聯(lián)到菜單“圖像去霧/Retinex算法去霧”,執(zhí)行圖像的Retinex算法去霧處理并進(jìn)行顯示。處理前后的直方圖分布表明,Retinex圖像增強(qiáng)可以在一定程度上保持原始圖像的局部特征,處理結(jié)果較為平滑,顏色特征也較為自然,具有良好的去霧效果。
3? ? 結(jié)語(yǔ)
基于圖像處理的去霧增強(qiáng)技術(shù)可以顯著提高對(duì)比度、突出圖像細(xì)節(jié)、提升視覺效果,該方法已經(jīng)廣泛應(yīng)用于項(xiàng)目實(shí)踐?;赗etinex增強(qiáng)處理的去霧方法針對(duì)性強(qiáng),運(yùn)行效率高,且易于融合于其他圖像增強(qiáng)算法,所以該技術(shù)必將獲得進(jìn)一步發(fā)展。盡管圖像去霧技術(shù)在實(shí)際應(yīng)用中已經(jīng)取得了若干成果,但在不同的場(chǎng)景下依然面臨著某些局限性,需要引起研究人員的進(jìn)一步關(guān)注。
[參考文獻(xiàn)]
[1]齊卉,孫超,蘇通,等.基于MATLAB的圖像去霧技術(shù)研究[J].江漢大學(xué)學(xué)報(bào)(自然科學(xué)版),2020(6):84-90.
[2]宋聰瑩,邵清.基于暗通道先驗(yàn)的Retinex去霧算法研究[J].軟件導(dǎo)刊,2021(1):214-218.
[3]劉衍琦,詹福宇.MATLAB圖像與視頻處理實(shí)用案例詳解[M].北京:電子工業(yè)出版社,2015.
(編輯 王雪芬)
Research on image fogging method based on Retinex enhancement algorithm
Huang Lishao
(College of Electronics and Information Engineering, Hunan University of Science and Engineering, Yongzhou 425199, China)
Abstract:This paper discusses the image clarity technology in haze weather. Firstly, the background and theoretical basis of image de-fogging are introduced, and then experiments are carried out using global histogram, local histogram and Retinex enhancement to process fog sky image clarity. Experimental results show that the fog removal method based on Retinex enhancement is targeted, efficient and easy to fuse with other image enhancement algorithms. The fog removal technology discussed in this paper will also play a role in promoting image clarity in other bad weather.
Key words:image fogging; histogram; Retinex