朱 熙,汪政陽,陳炳權(quán)
(吉首大學(xué)信息科學(xué)與工程學(xué)院,湖南吉首416000)
汽車保有量的逐年增加,勢必加重城市交通系統(tǒng)管控的壓力。霧霾等惡劣天氣給城市交通系統(tǒng)管控提出了更加嚴峻的挑戰(zhàn),在霧霾天氣環(huán)境下如何準確、快速地獲取目標車輛車牌信息的問題受到研究人員的廣泛關(guān)注。霧霾圖像去霧(即清晰化處理)是數(shù)字圖像處理中的一個不適定問題,其旨在從霧天圖像中恢復(fù)出相應(yīng)的干凈圖像。霧霾由大氣中懸浮的大量微塵、水滴等顆粒物構(gòu)成,環(huán)境中大氣光受到這些懸浮顆粒的影響而使得光學(xué)成像器件(如相機等)成像模糊不清,以致無法準確有效地記錄場景中的有用信息,從而造成圖像質(zhì)量的損失。如在大霧霾天下,需要通過交通監(jiān)控設(shè)備準確獲得交通事故中逃逸車輛的車牌等重要信息時,就必須利用相關(guān)圖像處理技術(shù),對監(jiān)控設(shè)備抓拍的車牌霧圖進行后期處理,以獲取所需要的車牌等重要信息。
圖像去霧算法主要包括以下3種:基于數(shù)學(xué)模型的去霧算法,以圖像增強方法為主,如直方圖均衡、小波變換、色彩恒常性理論(Retinex)等;基于物理模型和先驗信息的去霧算法,如暗通道先驗(DCP)、色衰減先驗(CAP)、非局部先驗(NLP)以及通過深度神經(jīng)網(wǎng)絡(luò)來進行去霧,如DehazeNet、CycleDehaze、KTDN等。
為解決霧霾天氣下車牌圖像識別欠準確的問題,大多數(shù)研究人員采用基于數(shù)學(xué)模型或物理模型的方法進行去霧,如通過改進暗通道先驗(DCP)去霧算法進行去霧。雖然,這些算法在處理薄霧圖像的邊緣紋理信息、色彩保真度方面都有一定的效果,但對于濃霧的處理和車牌細節(jié)特征的還原上效果不理想,且上述算法本身并未著重針對車牌圖像特點來進行設(shè)計,大部分只是簡單地作為車牌分類的輔助處理方法。王巧月等首次有針對性的對車牌圖像的顏色和文字特征來進行去霧,但對于實際拍攝的濃霧車牌圖像的處理效果欠佳。近年來,隨著神經(jīng)網(wǎng)絡(luò)相關(guān)理論在霧霾圖像處理領(lǐng)域的廣泛應(yīng)用,也有學(xué)者提出,直接引入訓(xùn)練好的基于神經(jīng)網(wǎng)絡(luò)的去霧算法來作為車牌圖像分類的去霧預(yù)處理算法,雖然有一定的去霧效果,但很難恢復(fù)出車牌圖像的細節(jié)特征。
本文主要工作如下:
1)為了解決利用深度卷積神經(jīng)網(wǎng)絡(luò)進行車牌去霧時車牌霧圖數(shù)據(jù)樣本欠缺的問題。本文以O(shè)penITS提供的高清圖像為主要來源,通過大氣散射模型這一物理模型首次構(gòu)建了一個車牌霧圖數(shù)據(jù)集(LPHaze Dataset),并以此來訓(xùn)練本文提出的車牌霧圖去霧網(wǎng)絡(luò)。
2)針對車牌霧圖特征,并借助相關(guān)的基于神經(jīng)網(wǎng)絡(luò)的去霧理論,本文以U-Net為主體框架,提出了一種基于小波域的深度增強車牌霧圖去霧算法,該算法利用小波變換將原始車牌霧圖中豐富的細節(jié)信息幾乎無損的轉(zhuǎn)換到小波域中,然后,引入圖像去噪中的增強策略“Strengthen-Operate-Subtract”(簡稱“SOS”增強策略)來進行特征圖像的融合和細化,以此來提升去霧圖像的峰值信噪比,同時,結(jié)合深度神經(jīng)網(wǎng)絡(luò)(DNN)中有效的殘差結(jié)構(gòu)來提高重構(gòu)去霧圖像的質(zhì)量。
為了更具有針對性的訓(xùn)練車牌霧圖去霧網(wǎng)絡(luò),以O(shè)penITS提供的OpenData V3.1-SYSU功能性能車牌圖像數(shù)據(jù)庫作為車牌圖像數(shù)據(jù)的主要來源,并輔以中科大開源數(shù)據(jù)集CCPD來構(gòu)建第一個車牌有霧-無霧圖像數(shù)據(jù)集。OpenData V3.1-SYSU功能性能車牌圖像數(shù)據(jù)庫包括《GA36-2014中華人民共和國機動車號牌》標準中的各種類型(臨時車牌除外)和各省市的去隱私車牌圖像共3383張,開放數(shù)據(jù)均選自道路卡口高清圖像(摩托車牌除外),每張圖像只包含一個車牌,并且圖像中車牌區(qū)域單個字符高度均大于25個像素(雙層車牌以下層字符高度為準),圖像背景單一,車牌字符成像清晰、無粘連、亮度均勻,車牌圖像傾斜角微小,其中開放功能車牌圖像數(shù)量和類型如表1所示。
表1 開放功能車牌圖像數(shù)量和類型
LPHaze Dataset數(shù)據(jù)集的制作方法主要借鑒于RESIDE數(shù)據(jù)集的制作方式,通過大氣散射模型來合成有霧-無霧車牌圖像對,再將其劃分為訓(xùn)練集和驗證集。具體步驟如下:① 預(yù)處理。從OpenITS和CCPD數(shù)據(jù)集中隨機選取2291張清晰圖像,并對這些清晰車牌圖像的車牌區(qū)域進行截?。虎?配置大氣散射模型參數(shù)值。分別選取一組不同的大氣光值A(chǔ)=[0.6,0.7,0.8,0.9,1.0]和一組不同的大氣散射系數(shù)值β=[0.4,0.6,0.8,1.0,1.2,1.4,1.6],并將場景深度d(x)置為1;③ 合成車牌有霧-無霧圖像對。采取一張清晰車牌圖像對應(yīng)多張車牌霧圖的方法來合成圖像對,即根據(jù)式(1)
I
(x
)=J
(x
)t
(x
)+A
(1-t
(x
))(1)
其中:I
(x
)為霧天圖像;J
(x
)為無霧圖像;透射率t
(x
)為沒有被散射且到達相機或人眼的大氣光,在均勻霧度環(huán)境下,透射率t
(x
)=e
-()。結(jié)合步驟②中選定的參數(shù)值,并以一張車牌無霧圖像對應(yīng)35張有霧圖像的方式來合成數(shù)據(jù)集。合成車牌霧圖示例如圖1所示。④ 劃分訓(xùn)練集和驗證集。訓(xùn)練集中干凈車牌圖像1697張,對應(yīng)的車牌霧圖59395張;驗證集中干凈圖像594張,對應(yīng)的車牌霧圖20790張。本文提出了一種基于小波域的車牌霧圖去霧算法,該算法主要采用U-Net作為主體框架,即以U-Net的編/解碼器結(jié)構(gòu)為基礎(chǔ)進行去霧網(wǎng)絡(luò)結(jié)構(gòu)的搭建,網(wǎng)絡(luò)總體結(jié)構(gòu)(從上至下依次編號為1-5層)如圖2所示。
圖1 合成車牌霧圖示例
圖2 車牌霧圖去霧網(wǎng)絡(luò)結(jié)構(gòu)概覽
整個網(wǎng)絡(luò)的組成如下:① 小波分解。使用二維離散小波變換(2D-DWT)對輸入圖像進行小波分解,得到相應(yīng)的小波域分量;② 編碼器。編碼器的構(gòu)造主要采用卷積層(ConvLayer)和由多個殘差塊組成的殘差組(ResGroup)來進行構(gòu)建;③ 解碼器。解碼器主要包括:基于殘差組構(gòu)建的“SOS”增強模塊(“SOS”Block),上采樣層(UpLayer),即轉(zhuǎn)置卷積層;④ 小波重構(gòu)。對解碼器最終輸出的小波域分量進行小波逆變換(IDWT),以重構(gòu)出無霧車牌圖像。
整個網(wǎng)絡(luò)的網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)見表2。
表2 車牌霧圖去霧網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)
Harr
小波的2D
離散小波變換(2D
-DWT
),將車牌霧圖I
分解為小波域中的四個分量,分別為下采樣圖像I、水平邊緣檢測圖像I、垂直邊緣檢測圖像I和對角線邊緣檢測圖像I(后三者為高頻帶),從而使得車牌霧圖在小波域中呈現(xiàn)更多的圖像邊緣輪廓等細節(jié)信息。最后,經(jīng)過由卷積和殘差組構(gòu)成的四層編/解碼器來盡可能提取小波域分量的特征,并通過小波逆變換重構(gòu)出去霧車牌圖像。DWT的正/逆變換過程如圖3所示(其中L、H分別為一維低、高通濾波器,↓2、↑2分別為尺度為2的下、上采樣)。正/逆變換公式可表示如下I
,I
,I
,I
=DWT
(I
)(2)
I
=IDWT
(I
,I
,I
,I
)(3)
由圖3 可知,二維離散小波變換的分解操作可以視為對輸入圖像I的行和列進行一維低/高通濾波器的濾波和下采樣,從而得到四幅小波域中的子帶圖像(I,I,I,I),且圖像大小均變?yōu)樵瓐D的四分之一,然后,對這四幅子帶圖像進行逆向操作就能重構(gòu)出原圖像。一級小波分解示例如圖4所示。
圖3 2D-DWT的正/逆變換過程
圖4 車牌圖像2D-DWT分解示例
He
等人提出,由于其在深度神經(jīng)網(wǎng)絡(luò)中所表現(xiàn)出的優(yōu)勢,如今已經(jīng)被廣泛應(yīng)用于各種基于神經(jīng)網(wǎng)絡(luò)的圖像處理任務(wù)中。如表2所示,本文提出的車牌圖像去霧網(wǎng)絡(luò)結(jié)構(gòu)中的層1到層5均采用了由殘差塊疊加而成的殘差組來作為整個網(wǎng)絡(luò)的特征提取器。在整個去霧網(wǎng)絡(luò)中,U
-Net
框架的每一層均通過殘差組來盡可能挖掘小波域分量圖像中潛藏的邊緣特征等細節(jié)信息,其中前四層均采用殘差組1(ResGroup
1),且每個殘差組由3個串聯(lián)的殘差塊構(gòu)成,而最后一層殘差組2(ResGroup
2)則由18個殘差塊進行串接。殘差組中單一的殘差塊(ResBlock
)結(jié)構(gòu)如圖5所示。圖5 ResBlock結(jié)構(gòu)
殘差塊的總體結(jié)構(gòu)依然沿用了He
等人的經(jīng)典殘差結(jié)構(gòu),均使用了卷積核大小為3×3的卷積層,但不同的地方在于所使用的激活函數(shù),經(jīng)典殘差結(jié)構(gòu)采用的是ReLU
激活函數(shù),而本文則采用PReLU
激活函數(shù),PReLU
是一種帶參數(shù)修正的ReLU
激活函數(shù),其表達式為:(4)
在殘差塊中,y表示殘差塊的第一個卷積輸出,a為一常數(shù)。編/解碼器中第l層的殘差塊結(jié)構(gòu)的輸出y可表示為(其中l(wèi)=1,2,3,…,5)
y
(x
)=Add
(Conv
(PReLU
(Conv
(x
))),x
)(5)
其中,x表示編/解碼器中第l層的殘差塊的輸入,Add(·)表示逐元素相加,Conv(·)表示卷積。由殘差塊構(gòu)成的殘差組1的結(jié)構(gòu)如圖6所示,其輸出可表示為
ResGroup
1(x
)=Add
(x
,y
(y
(y
(x
))))(6)
圖6 ResGroup 1結(jié)構(gòu)
Yaniv
Romano
等人和Hang
Dong
等人對“Strengthen
-Operate
-Subtract
”增強策略(“SOS
”)的開發(fā)和利用,表明該算法能對已增強的圖像進行細化處理,從而提高去霧車牌圖像的峰值信噪比(PSNR
)。因此,在本文的車牌圖像去霧網(wǎng)絡(luò)解碼器結(jié)構(gòu)中依然將“SOS
”增強算法嵌入到U
-Net
結(jié)構(gòu)中,來提升車牌霧圖的去霧質(zhì)量,Hang
Dong
等人所采用的“SOS
”增強算法的近似數(shù)學(xué)表達式如下:(7)
圖7 “SOS”深度增強模塊
(8)
其中,↑2表示尺度因子為2的上采樣操作。
LPHaze
Dataset
)中選取1697張干凈車牌圖像和相對應(yīng)的59395張車牌霧圖作為車牌霧圖去霧模型的訓(xùn)練集,剩余594張干凈車牌圖像和相對應(yīng)的20790張車牌霧圖作為驗證集。所有干凈和有霧的車牌圖像大小均被調(diào)整為128×64像素。為提高模型的魯棒性,利用隨機水平翻轉(zhuǎn)和隨機垂直翻轉(zhuǎn)來對訓(xùn)練數(shù)據(jù)進行數(shù)據(jù)增強處理,其中翻轉(zhuǎn)概率隨機取值為0或1。車牌霧圖去霧網(wǎng)絡(luò)在訓(xùn)練時,每訓(xùn)練完一輪訓(xùn)練集就使用驗證集對訓(xùn)練完的模型進行驗證。整個去霧網(wǎng)絡(luò)完整訓(xùn)練120個epoch
,并使用Adam
優(yōu)化算法對其進行優(yōu)化,其中Adam
優(yōu)化算法的β
=0.
9和β
=0.
999,同時,使用L
損失函數(shù)來對網(wǎng)絡(luò)預(yù)測的無霧圖像和干凈圖像進行限制。訓(xùn)練時使用的batch
size
為64,初始學(xué)習(xí)率為1e,在訓(xùn)練到106個epoch
時,將學(xué)習(xí)率調(diào)整為1e。所有的網(wǎng)絡(luò)模型訓(xùn)練均在GeForce
RTX
3090上進行。實驗從兩個方面進行,分別是合成車牌霧圖的去霧實驗和實際拍攝的車牌霧圖實驗。對于前者,主要從定性(主觀)和定量(客觀)兩方面來進行分析與評價,以證明本文算法的有效性,主觀分析主要通過實驗人員對車牌霧圖去霧圖像進行觀察,而客觀分析則主要采用峰值信噪比(PSNR
)和結(jié)構(gòu)相似度(SSIM
)指標來進行定量分析;對于后者,則主要是對去霧效果進行主觀評價。同時,將本文提出的算法和以下經(jīng)典去霧算法進行比較:基于引導(dǎo)濾波器的暗通道先驗算法(GFDCP
)、色衰減先驗算法(CAP
)、基于邊界約束和上下文正則化的去霧算法(BCCR
)、一種基于深度學(xué)習(xí)的端到端的去霧算法(DehazeNet
)和一種用于單幅圖像去霧的基于先驗學(xué)習(xí)的近端去霧算法(PDNet
)。OpenITS
提供,即從中隨機選取594張高清卡口拍攝的車牌圖像(與LPHaze
Dataset
訓(xùn)練集不重復(fù)的圖像),按照LPHaze
Dataset
的構(gòu)造方法來合成對應(yīng)的車牌霧圖,并取以下5組車牌霧圖的去霧效果進行效果展示和定量分析。其中,每組的去霧效果展示和定量分析數(shù)據(jù)分別如圖8和表3所示。表3 合成車牌霧圖的PSNR/SSIM值
圖8 針對不同算法的合成車牌霧圖去霧效果比較
總體而言,在處理不同大氣光值A
和透射系數(shù)β
的合成車牌霧圖上,本文算法的去霧效果均要優(yōu)于其它對比文獻算法。從圖7中透射系數(shù)β
=0.
8,1.
0這兩組車牌霧圖的去霧效果中可以觀察得出,除BCCR
對去霧后的車牌有過度曝光現(xiàn)象以外,所有算法對于車牌霧圖的去霧均有著較好的效果。但是,在對透射系數(shù)β
=1.
2,1.
4,,1.
6這三組車牌霧圖的去霧效果上,除本文算法以外,其余算法均出現(xiàn)一定的霧度殘留,其中BCCR
、CAP
和GFDCP
還會出現(xiàn)一些色彩失真現(xiàn)象。而表3則用于將本文算法的結(jié)果與其它方法進行定量比較。從表中可以看出,本文所提出的車牌圖像去霧算法可以產(chǎn)生比其它算法更高的峰值信噪比(PSNR
)和結(jié)構(gòu)相似度(SSIM
)值。OpenITS
的車牌圖像數(shù)據(jù)庫,從中一共選取915張實際拍攝的車牌霧圖進行去霧算法效果測試,車牌霧圖去霧效果展示示例如圖9所示。圖9 實際拍攝的車牌霧圖去霧效果展示比較
從圖8中可以觀察得出,本文提出的車牌霧圖去霧算法總體的去霧效果在去霧車牌顏色和字符的恢復(fù)上更接近真實干凈的車牌圖像,而其余算法的去霧效果則或多或少的存在過度曝光、顏色失真和霧度殘留的問題,如BCCR
在進行車牌圖像去霧時,會出現(xiàn)明顯的過度曝光現(xiàn)象以及在對黃底車牌霧圖去霧時還會出現(xiàn)顏色失真,而CAP
、GFDCP
、DehazeNet
和PDNet
則主要表現(xiàn)出一定的霧度殘留問題。OpenITS
車牌圖像數(shù)據(jù)庫,構(gòu)建了一個專用于車牌霧圖去霧網(wǎng)絡(luò)訓(xùn)練的車牌霧圖數(shù)據(jù)庫LPHaze
Dataset
。同時,提出了一種基于小波域的深度增強車牌霧圖去霧算法,該算法利用圖像在小波域中的稀疏性,降低車牌霧圖到干凈車牌圖像的映射復(fù)雜程度。通過引入多個殘差組和“SOS
”增強策略來對輸入的圖像進行有效的特征提取、增強以及融合。在測試圖像數(shù)據(jù)上的實驗結(jié)果表明,本文算法恢復(fù)的車牌圖像具有更好的去霧效果,并且在不同類型和霧度的車牌圖像上具有較好的魯棒性。但依然存在如下不足,同時針對這些不足將在后續(xù)研究中不斷完善:LPHaze
Dataset
中不同車牌類型的圖像數(shù)據(jù)不均衡;未采取更行之有效的車牌霧圖的霧度分級方法。