劉良鑫,林勉芬,周成菊,潘家輝
(華南師范大學(xué) 軟件學(xué)院,佛山 528225)
伴隨著我國的人口數(shù)量增長和國民經(jīng)濟(jì)水平提高,在近年來,居民的汽車使用量一直在不斷的增加.因此,人們大量地利用機(jī)器與攝像頭來識別車輛,車牌等信息,達(dá)到檢測識別車輛收費,測速等目的.但在很多情況下,例如在遮擋、陰影、相機(jī)噪音、光線變化和天氣狀況等復(fù)雜環(huán)境條件下,拍攝的車牌圖片質(zhì)量往往不盡人意,這也使得后續(xù)的處理過程變得愈加艱巨.因此,利用深度學(xué)習(xí)技術(shù)對模糊的車牌圖片進(jìn)行修復(fù)、重建,方便機(jī)器或者人對拍攝的車輛進(jìn)行后續(xù)的定位或其他操作,從而幫助人們更好地實現(xiàn)社會交通智能管理.
對于失真度較高的圖片進(jìn)行重建這一領(lǐng)域來說,可以大致的分為以下3 種方法:1)最早被學(xué)者提出的方法是基于插值的圖像重建[1],雖然這方法簡單、而且重建圖像速度較快,但是這種方法會引起鋸齒、振鈴等人工效應(yīng)缺點,因此很快被人所拋棄.2)基于重構(gòu)的方法[2]是針對插值方法的缺點所提出的一種方法,但是該算法操作復(fù)雜,精度低,也不值得學(xué)者進(jìn)行研究.3)基于深度學(xué)習(xí)的圖像超分辨率重建(super-resolution,SR)[3]作為一門能豐富圖像細(xì)節(jié),對失真圖像進(jìn)行較高質(zhì)量還原的圖像處理技術(shù),在國外學(xué)者提出后,便引起了圖片修復(fù)相關(guān)領(lǐng)域的研究員們的高度關(guān)注.Dong 等人[4]首次在圖像超分辨率重建運中用卷積神經(jīng)網(wǎng)絡(luò)(CNN).Kim 等人[5,6]的研究中,通過增加卷積網(wǎng)絡(luò)的深度和引入殘差學(xué)習(xí)結(jié)構(gòu),提高模型中的收斂率問題.Zhang的團(tuán)隊[7]利用了殘差密集結(jié)構(gòu),該模型有助于從卷積層中提取出圖像特征.Ledig 等人[8]對GAN 做出了改進(jìn),并將模型的命名為SRGAN.最近,在文獻(xiàn)[9]中,Wang 等人首次引入residual-in-residual dense block(RRDB),并應(yīng)用于生成對抗網(wǎng)絡(luò)中,而且重新設(shè)計了感知損失函數(shù)的輸出形式.
本文共由6 節(jié)組成.第1 節(jié)主要介紹了圖像修復(fù)重建領(lǐng)域算法的相關(guān)背景,前人研究成果,以及論文規(guī)劃.第2 節(jié)介紹了GAN的原理和本文模型研究算法的貢獻(xiàn).第3 節(jié)對本文提出一種新的網(wǎng)絡(luò)模型進(jìn)行詳細(xì)的介紹.第4 節(jié)將本文提出的模型應(yīng)用于中國停車場數(shù)據(jù)集(CCPD)中,并分析了實驗結(jié)果的優(yōu)點與不足.第5 節(jié)結(jié)合網(wǎng)絡(luò)模型結(jié)構(gòu)與實驗結(jié)果進(jìn)行相關(guān)的討論,在第6 節(jié)中做了總結(jié),并提出對今后工作的展望.
生成對抗網(wǎng)絡(luò)是Goodfellow 等人[10]在2014年提出的一種基于無監(jiān)督的深度學(xué)習(xí)模型,該模型能夠?qū)W習(xí)大量的數(shù)據(jù)樣本之間的復(fù)雜的聯(lián)系,從而輸出與真實數(shù)據(jù)相似的機(jī)器數(shù)據(jù).如圖1所示,該網(wǎng)絡(luò)由兩部分組成:生成器(generator)+鑒別器(discriminator).生成器主要用于生成機(jī)器數(shù)據(jù),而鑒別器主要用于判斷數(shù)據(jù)的真假.在雙方的不斷對抗訓(xùn)練中,最終使得該模型輸出極其符合現(xiàn)實意義的數(shù)據(jù),并達(dá)到納什均衡[11].
圖1 生成對抗網(wǎng)絡(luò)原理圖
在原始的GAN 網(wǎng)絡(luò)中,鑒別器的主要功能在于對數(shù)據(jù)進(jìn)行二分類的判別,判斷真或假.對于輸入的圖片,我們設(shè)置其標(biāo)簽為1,否則為0.而生成模型G通過不斷訓(xùn)練嘗試生成相似的“機(jī)器數(shù)據(jù)”,使得判別模型D判別該數(shù)據(jù)為真,所以其損失函數(shù)可以定義為:
其中,Pr是代表真實數(shù)據(jù),Pz是代表假設(shè)的機(jī)器數(shù)據(jù).
我們在前人研究的基礎(chǔ)上,提出了一種新的基于生成對抗網(wǎng)絡(luò)的圖片重建模型,本文的主要貢獻(xiàn)有以下幾點:1)我們采用RRDB 對圖片進(jìn)行高級特征的提取,在圖片重建階段我們采用漸進(jìn)式上采樣網(wǎng)絡(luò).2)引入馬爾可夫判別器(Markovian discriminator,PatchGAN)[12]作為GAN的鑒別器,利用其輸出為矩陣的這一特點,引導(dǎo)生成器進(jìn)行更高質(zhì)量、更多細(xì)節(jié)的圖像重建.3)對車牌而言,我們將重點關(guān)注車牌字母方向與邊緣等高級特征,采用MSE (內(nèi)容損失)與最小化VGG的混合作為模型的損失函數(shù).4)引入峰值信噪比(PSNR)[13]與結(jié)構(gòu)相似度(SSIM)等多種評價指標(biāo),對模型重建圖像進(jìn)行客觀評價.
同時,我們還與目前較新的圖像超分辨方法進(jìn)行對比.首先,在生成器方面,與羅會蘭等人[14]提出的生成對抗網(wǎng)絡(luò)相比,我們運用了密集連接的殘差采樣塊進(jìn)行高級特征采樣.其次,在鑒別器方面,相較于傳統(tǒng)GAN的判別器[15],本文判別器允許任意大小的圖像作為輸入,網(wǎng)絡(luò)設(shè)計更加靈活.最后,在損失函數(shù)方面,與徐姝琪等人[16]運用TV 損失聯(lián)合相比,我們重點關(guān)注車牌這一特殊圖像的高級特征,如車牌邊緣、字母方向等,采用MSE 與最小化VGG的混合函數(shù)作為模型的損失函數(shù).
對于車牌圖像分辨率不足導(dǎo)致無法識別,現(xiàn)有超分辨率算法重建的車牌圖像依然存在字符扭曲,字符斷裂等問題.因此,在生成器模型階段,我們打算采用一種基于密集殘差網(wǎng)絡(luò)(dense-connected residual sampling network DRSN)的車牌超分辨率重建算法.整體網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示.
由圖2可以知道,生成器網(wǎng)絡(luò)包含3 個模塊,分別為初始化特征提取模塊,密集連接的殘差采樣模塊,圖像重建模塊.
圖2 生成器網(wǎng)絡(luò)結(jié)構(gòu)圖
3.1.1 初始化特征提取模塊
式(1)中,HFE1表示為卷積核為3×3 卷積層,主要目的在于將車牌圖像特征從空間維度映射到特征維度,用于提取車票的形狀邊緣信息.HFE2是一個卷積核為1×1的卷積層,用于對HFE1提取到的特征進(jìn)行降維,同時提取關(guān)鍵信息.F0表示初始化特征提取模塊所提取到的特征,同時也是密集殘差連接模塊的輸入[17].
3.1.2 密集連接的殘差采樣塊
在更高級的特征提取模塊,本文采用了密集連接的殘差采樣塊.該模塊由多個殘差密集塊(RRDB)鏈接而成.密集連接的殘差采樣模塊使得不同RRDB 之間的存在著連續(xù)記憶.一個RRDB 可以鏈接所有后續(xù)的RRDB 塊,傳遞并保留圖像信息,從而使?fàn)顟B(tài)延續(xù)傳遞.其次,密集連接的殘差采樣塊同時具有密集與殘差網(wǎng)絡(luò)兩者的優(yōu)良特性,將全局特征和局部特征融合形成連續(xù)的記憶機(jī)制.
1 個RRDB 由3 個dense block (DB)塊組成.1 個DB 塊了存在著5 個卷積核(Conv) 與4 個激活函數(shù)(Leaky-ReLU),每個卷積核大小都為7×7.它們密集地連接在一起,形成了殘差密集網(wǎng)絡(luò)中的dense block,整體結(jié)構(gòu)如圖3所示.
圖3 殘差密集網(wǎng)絡(luò)結(jié)構(gòu)圖
3.1.3 圖像重建模塊
本文采取漸進(jìn)式上采樣實現(xiàn)車牌重建模塊.對比普通的上采樣網(wǎng)絡(luò),漸進(jìn)式上采樣采用子亞像素卷積實現(xiàn).這是因為子亞像素卷積能提高更多更細(xì)節(jié)的上下文信息.在子亞像素卷積中,我們假設(shè)亞像素圖像的長、寬(設(shè)為h,w),和采樣因子r,通過普通的卷積來產(chǎn)生h×w×r×r亞像素圖像.我們將亞像素圖像按順序進(jìn)行重組,得到高分辨率的圖像.結(jié)構(gòu)如圖4所示.
圖4 漸進(jìn)式上采樣網(wǎng)絡(luò)結(jié)構(gòu)圖
鑒別器借鑒了PatchGAN[18]的思想,將輸入映射為N×N的矩陣M,其中,矩陣上每一個元素Mi,j對應(yīng)原圖中某個特定圖像塊(Patchi,j),通過取鑒別器網(wǎng)絡(luò)矩陣的均值作為最終判斷結(jié)果,設(shè)定閾值輸出0 或者1.鑒別器設(shè)計選用卷積核大小為4×4,步幅為2的卷積層,共6 層,用于增加感受野大小,加強(qiáng)模型探索重要信息的能力,同時利用全局池化操作去縮減特征規(guī)模,提高網(wǎng)絡(luò)計算速度.鑒別器的模型架構(gòu)如圖5所示.
圖5 鑒別器模型結(jié)構(gòu)圖
我們采用MSE 與最小化VGG的混合作為模型的損失函數(shù).
在ESRGAN[9]中,作者定義了一種新的VGG 損失函數(shù),該函數(shù)有利于突出原始圖像的特征.VGG 損失定義如式(4):
其中,Wi,j和Hi,j表示VGG 中特征圖的尺寸,IHR表示高分辨率圖像尺寸,Φi,j代表著網(wǎng)絡(luò)中第i個卷積層之前的第j個卷積層的特征圖,ILR表示低分辨率圖像尺寸,G表示生成網(wǎng)絡(luò),θG表示生成網(wǎng)絡(luò)參數(shù).
內(nèi)容損失的作用使生成器的上采樣網(wǎng)絡(luò)在重建車牌時注意圖像的高級特征,如車牌邊緣,方向,事實證明,這是十分有利于車牌重建的.
整體的損失函數(shù)如式(5):
其中,VGG如式(4)所示,表示圖像參數(shù)的觀察值,Y表示圖像參數(shù)的預(yù)測值.
本文實驗在CPU為CPU Intel Xeon E5-2689C2,GPU為NVIDIA GTX970,顯存為16 GB,操作系統(tǒng)為Windows 10的主機(jī)上進(jìn)行.模型學(xué)習(xí)率初始化為10–5,經(jīng)過不斷調(diào)整,最終發(fā)現(xiàn)模型的最佳的學(xué)習(xí)率為10–3.
本項目采用的數(shù)據(jù)集來自于中國停車場數(shù)據(jù)集(CCPD)[19],該數(shù)據(jù)集包含了大量的不同背景下的車牌照片,數(shù)據(jù)集包含將近30 萬張圖片.顯然,我們應(yīng)該對數(shù)據(jù)集進(jìn)行篩選,篩選掉亮度與對比度較差的圖片.最終,我們選取了1 000 張作為實驗測試數(shù)據(jù)集.其中,800 張車牌圖片用于模型訓(xùn)練,100 張圖片用于模型測試,剩下的100 張用于模型驗證.
我們的算法與目前較為先進(jìn)的圖像重建技術(shù)如Bicubic、SRCNN[20]、ESPCNN、EDSR[21]進(jìn)行客觀數(shù)據(jù)PSNR、SSIM的對比.結(jié)果見表1和表2.
表1 測試圖像集超分辨率重建結(jié)果比較
表2 典型圖像實驗結(jié)果對比
由表1可得,基于深度學(xué)習(xí)的SR 算法明顯優(yōu)越于Bicubic 傳統(tǒng)算法,且基于GAN的算法較某些基于CNN的算法可以獲得更高的PSNR、SSIM 值,具有更好的圖像重建效果.比較于Bicubic和ESPCNN,本文模型重建車牌能獲得較大的PSNR、SSIM 值.
由表2可以看出,我們從測試集中選取了背景色調(diào)不同的4 張圖片作為典型圖片,并利用不同的算法進(jìn)行重建,效果如圖6–圖9所示.相比于基于ESPCNN的重建算法和基于Bicubic的重建算法,本文模型算法的PSNR、SSIM 值有大幅度提高.本文算法的平均PSNR 值大約提升 2.0–4.0 dB,SSIM 值大約提升0.01–0.04.相比于EDSR、SRCNN 等較為先進(jìn)的算法,本文算法模型的PSNR、SSIM 值提升得并不明顯.這顯然是美中不足的,這需要我們后續(xù)對模型進(jìn)行改進(jìn).
圖6 典型示例圖1重建效果
圖7 典型示例圖2重建效果
圖8 典型示例圖3重建效果
圖9 典型示例圖4重建效果
其次,我們不僅在PSNR,SSIM 方面對模型的優(yōu)越性進(jìn)行了驗證,我們還對算法的運行效率進(jìn)行了測試.由表3可看出,基于Bicubic的重建算法耗時最短,這是與它的簡單插值方式有關(guān).相比于卷積神經(jīng)網(wǎng)絡(luò)中的ESPCNN,我們的算法大約縮短了0.08 s,同時PSNR值提高了1 dB 左右,最后,在多種基于GAN 框架算法中,本文算法處理數(shù)據(jù)的平均速度最高.
表3 各算法在同一圖片上重建運行時間比較
綜上所述,本文提出的模型在保證重建精準(zhǔn)度接近于國內(nèi)外主流模型的前提下,花費了較少的重建時間,這是十分具有現(xiàn)實意義的.
我們采用殘差密集網(wǎng)絡(luò),便于獲取各網(wǎng)絡(luò)層提取到的圖像特征以保留圖像更多的高頻信息,同時用漸進(jìn)式上采樣方式以提升大縮放因子下超分辨率重建效果.同時在鑒別器模型上,我們借鑒了馬爾可夫判別器(PatchGAN),將鑒別器設(shè)計成6 層全卷積神經(jīng)網(wǎng)絡(luò),用于增加視覺感受野大小,便于豐富重建后圖像的細(xì)節(jié).其次,我們的算法平均耗時較少,基于CNN 框架算法模型重建圖片的平均耗時較多,這是因為CNN 包含了大量的卷積計算,導(dǎo)致圖像重建耗時較多.
接著,我們從多維度去對本文算法進(jìn)行評價.我們引入PSNR、SSIM 作為圖像超分辨率重建評判指標(biāo),根據(jù)表1、表2的數(shù)據(jù)顯示,我們的算法數(shù)值達(dá)到了目前主流算法的平均值以上,但目前處于頂級的算法模型來說,例如SRCNN、EDSR,本文模型算法還是存在較大的差距,我們通過粗略的分析是認(rèn)為模型的判別器設(shè)計層數(shù)較少,無法很好的高效率的區(qū)別機(jī)器數(shù)據(jù)和真實數(shù)據(jù).但是,值得說明的是,我們模型花費的時間也處于一個較低的值,這是我們算法的一個的優(yōu)勢.
利用深度學(xué)習(xí)對圖像進(jìn)行重建不僅發(fā)展的速度極快,而且修復(fù)后圖像的效果要比傳統(tǒng)技術(shù)修復(fù)要好.本文在基于GAN 網(wǎng)絡(luò)上,引入了殘差密集網(wǎng)絡(luò)以及漸進(jìn)式上采樣方法,在車牌超分辨率重建模型上取得了令人滿意的效果.首先,模型利用了密集殘差網(wǎng)絡(luò)對車牌圖像進(jìn)行高級,核心特征的提取,加強(qiáng)了特征的傳播,其次,運用漸進(jìn)上采樣的方式重建大尺度因子圖像.最后,算法采用基于PatchGAN的鑒別器更加精準(zhǔn)地判斷,從而引導(dǎo)生成器更高質(zhì)量、高細(xì)節(jié)的圖像重建.實驗部分表明:與其他 SR 算法相比較,在花費較少的時間代價的情況下,模型輸出的圖片具有PSNR、SSIM等參考值較高和較少的邊緣陰影等優(yōu)點.未來研究工作的重點在于進(jìn)一步優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu),降低訓(xùn)練的難度,推進(jìn)使得車牌重建算法早日運用于實際生活.