趙艷芹,張 鈺
(黑龍江科技大學(xué) 計(jì)算機(jī)與信息工程學(xué)院,黑龍江 哈爾濱,150022)
車(chē)牌識(shí)別在智能交通系統(tǒng)和公共安全領(lǐng)域中起著重要作用,但是由于攝像機(jī)與車(chē)輛距離較遠(yuǎn)、光照不足、相對(duì)運(yùn)動(dòng)等原因,往往導(dǎo)致獲取的車(chē)牌圖像分辨率較低,從而影響了車(chē)牌圖像的讀取辨識(shí)能力及其后續(xù)應(yīng)用[1]。因此,為了增強(qiáng)車(chē)牌識(shí)別精度,從低分辨率車(chē)牌圖像重建得到高分辨率圖像顯得尤其重要。圖像超分辨率重建是由Tsai等[2]首次提出,之后一些學(xué)者在此基礎(chǔ)上進(jìn)行了改進(jìn)和發(fā)展[3]。SRCNN是由Dong等[4]提出的,之后為了加速和改進(jìn)SRCNN,Dong等[5]提出了FSRCNN。2014年,Goofellow等[6]首次提出了生成式對(duì)抗網(wǎng)絡(luò)(Generative Adversarial Networks,GAN)。受GAN的啟發(fā),Ledig等[7]首先將生成式對(duì)抗網(wǎng)絡(luò)應(yīng)用于單幅圖像超分辨率重建任務(wù)中,提出了SRGAN。隨后,Wang等[8]對(duì)SRGAN進(jìn)行了改進(jìn),將殘差密集塊(Residual-in-Residual density Block,RRDB)引入到生成器的網(wǎng)絡(luò)中,并提出了增強(qiáng)超分辨率生成對(duì)抗網(wǎng)絡(luò)(ESRGAN),ESRGAN使用相對(duì)判別器來(lái)預(yù)測(cè)相對(duì)真實(shí)度,而不是SISR中的普通絕對(duì)差。然而,現(xiàn)如今的車(chē)牌圖像超分辨率重建算法樣本訓(xùn)練過(guò)程太耗時(shí),需要大量的計(jì)算資源和時(shí)間[8],限制其在交通監(jiān)控等實(shí)時(shí)應(yīng)用中的實(shí)用性。為此,筆者提出一種輕量化的基于生成對(duì)抗網(wǎng)絡(luò)的車(chē)牌圖像超分辨率重建方法(S-ESRGAN)。
ShuffleNet是一個(gè)高效的卷積神經(jīng)網(wǎng)絡(luò)架構(gòu),其設(shè)計(jì)目的是減少計(jì)算資源和內(nèi)存使用,同時(shí)在各種計(jì)算機(jī)視覺(jué)任務(wù)上仍然取得最先進(jìn)的性能。Zhang等[9]設(shè)計(jì)了ShuffleNet V1模型,該模型有效的降低了計(jì)算量。為了彌補(bǔ)點(diǎn)態(tài)群卷積的缺陷,提出了Channel Shuffle操作。該操作在可微的同時(shí)又能嵌入進(jìn)網(wǎng)絡(luò)結(jié)構(gòu)中進(jìn)行端對(duì)端訓(xùn)練,可以加強(qiáng)網(wǎng)絡(luò)性能。為了構(gòu)建一個(gè)更輕量級(jí)的模型,Ma等[10]提出了ShuffleNet V2,指出瓶頸單元和逐點(diǎn)組操作會(huì)增加內(nèi)存訪問(wèn)成本,大量的群組會(huì)降低并行度。針對(duì)這些問(wèn)題,Ma等[10]又提出了信道分裂來(lái)替代分組操作,將輸入信息分成兩個(gè)分支。
S-ESRGAN生成器結(jié)構(gòu)主要有3個(gè)部分:淺層特征提取、深層特征提取和重建模塊(圖1)。LR是輸入的低分辨率圖像,輸入的低分辨率圖像首先會(huì)進(jìn)入淺層特征提取網(wǎng)絡(luò),淺層特征提取網(wǎng)絡(luò)包括卷積層和LeaklyReLU函數(shù)部分。淺層特征提取網(wǎng)絡(luò)主要用于提取邊緣信息,完成空間維度到特征維度的映射。本層的激活函數(shù)使用LeaklyReLU函數(shù),以避免丟失小于0的數(shù)據(jù)。然后,進(jìn)入深層特征提取網(wǎng)絡(luò)部分,將特征信息傳入無(wú)序擠壓和激勵(lì)模塊(SSEB)提取深層特征,無(wú)序擠壓和激勵(lì)模塊是特征提取的主要模塊。最后,進(jìn)入重建模塊,經(jīng)過(guò)卷積和上采樣操作,得到生成的高分辨率圖像(SR)。
圖1 S-ESRGAN生成器網(wǎng)絡(luò)結(jié)構(gòu)
S-ESRGAN使用相對(duì)判別器作為判別器網(wǎng)絡(luò)[11](圖2)。與其他普通判別器不同,相對(duì)判別器輸出的是相對(duì)概率,即真實(shí)圖像和生成器的生成圖像之間的相對(duì)真實(shí)概率。判別器的特征提取部分由卷積層組成,BN為批處理規(guī)范化層,Dense為全連接層。
圖2 S-ESRGAN判別器網(wǎng)絡(luò)結(jié)構(gòu)
為了實(shí)現(xiàn)車(chē)牌圖像超分辨率重建的輕量化,本次研究在算法框架中引入ShuffleNet V2的設(shè)計(jì)概念和利用SE網(wǎng)絡(luò)[12]結(jié)合殘差學(xué)習(xí),提出無(wú)序擠壓和激勵(lì)模塊(Shuffle Squeeze and Excitation Blocks)。
無(wú)序擠壓和激勵(lì)模塊結(jié)構(gòu)見(jiàn)圖3。其中,DWCONV為深度卷積層,FC為全連通層。在每個(gè)無(wú)序擠壓和激勵(lì)模塊的開(kāi)始,先執(zhí)行通道分裂(Channel Split)的操作。把輸入的特征圖一分為二,左側(cè)的分支直連接觸層(Concat),右側(cè)的分支又分為卷積分支和殘差分支,這兩個(gè)分支最后逐個(gè)元素相加,并且在ReLu激活函數(shù)之后連接到底部殘差分支。卷積分支的上部包含3個(gè)卷積層和1個(gè)SE模塊。通過(guò)觸點(diǎn)的操作,輸入通道的數(shù)量等于輸出通道的數(shù)量,從而使內(nèi)存訪問(wèn)量最小化。最后,利用Channel Shuffle操作進(jìn)一步增強(qiáng)信息交換。
圖3 S-ESRGAN中的無(wú)序擠壓和激勵(lì)模塊結(jié)構(gòu)
無(wú)序擠壓和激勵(lì)模塊結(jié)構(gòu)中的SE模塊主要分為3個(gè)部分:擠壓、激勵(lì)和縮放(圖3)。GAP表示全局平均池化層。在擠壓段引入全局平均池化層,添加基于通道維數(shù)的全局空間信息。此外,在激勵(lì)部分,2個(gè)完全連接的層被用來(lái)收集來(lái)自前一部分的信息。激勵(lì)部分是為了捕獲通道之間的信息依賴(lài)關(guān)系。最后,使用Sigmoid函數(shù)獲得0~1之間的歸一化權(quán)重,分配給輸入特征圖的每個(gè)通道。
判別器網(wǎng)絡(luò)損失函數(shù):鑒別器DRa可以得到2個(gè)輸出,分別為Dreal和Dfake。表達(dá)式如下:
Dreal=C(IHR)-E(C(ISR))
(1)
Dfake=C(ISR)-E(C(IHR))
(2)
其中,Dreal表示DRa的結(jié)果是真實(shí)圖像(HR圖像)的平均概率,Dfake表示DRa的結(jié)果是生成圖像(SR圖像)的平均概率,C(·)是鑒別器的函數(shù),E(·)表示對(duì)小批量數(shù)據(jù)求平均值的函數(shù)。
生成器網(wǎng)絡(luò)的損失函數(shù):本次研究使用感知損失函數(shù)、內(nèi)容損失和對(duì)抗損失的總和作為生成器網(wǎng)絡(luò)的損失函數(shù)。
(3)
式中α,β為平衡各種損失項(xiàng)的系數(shù)。
2.4.1峰值信噪比(Peak Signal-to-Noise Ratio,PSNR) PSNR是一種用于度量重建圖像與原始高清圖像之間的差異的評(píng)價(jià)指標(biāo)。PSNR指標(biāo)越高,圖像質(zhì)量越好。
(4)
其中,MaxI表示圖像中像素值中的最大值,MSE表示2個(gè)圖像之間對(duì)應(yīng)像素之間差值的平方的均值,MSE是原圖像與處理圖像之間均方誤差。單通道圖像的MSE計(jì)算公式為:
(5)
2.4.2結(jié)構(gòu)相似性指標(biāo)(Structural Similarity Index,SSIM) SSIM是一種用于度量重建圖像與原始高清圖像之間的結(jié)構(gòu)相似性的評(píng)價(jià)指標(biāo),其取值范圍為[0,1]。SSIM的值越大,表示圖像失真程度越小,圖像質(zhì)量越好。
給定2個(gè)圖像,結(jié)構(gòu)相似性可按照以下方式計(jì)算:
(6)
其中μ為圖像的平均值,σ2為圖像的方差,C1=(k1L)2,C2=(k2L)2,C1和C2是用來(lái)維持穩(wěn)定的常數(shù),其中的L是像素值的動(dòng)態(tài)范圍。當(dāng)2張圖像完全相同時(shí),SSIM的值等于1。
2.4.3FLOPs(FLoating point Operations Per Second) FLOPs是每秒浮點(diǎn)運(yùn)算次數(shù),用來(lái)衡量深度學(xué)習(xí)模型的計(jì)算復(fù)雜性或成本的一個(gè)指標(biāo)。
數(shù)據(jù)集使用的是中國(guó)城市停車(chē)數(shù)據(jù)集(CCPD)。該數(shù)據(jù)集是一個(gè)大型的、多樣化的,而且被仔細(xì)標(biāo)注過(guò)的開(kāi)源數(shù)據(jù)集,但是數(shù)據(jù)集中的圖片數(shù)量過(guò)多,無(wú)用的信息過(guò)多,不能直接作為本次研究算法的數(shù)據(jù)集,因此需要對(duì)數(shù)據(jù)集進(jìn)行預(yù)處理??紤]到計(jì)算資源,首先要從CCPD數(shù)據(jù)集圖片中選取2 000付車(chē)牌圖像,其中80%為訓(xùn)練集,20%為測(cè)試集。因?yàn)閿?shù)據(jù)集中的圖片無(wú)用信息過(guò)多,所以需要進(jìn)一步對(duì)數(shù)據(jù)集處理,使用OpenCV裁剪出車(chē)牌區(qū)域圖片,之后使用MATLAB對(duì)圖片進(jìn)行降采樣處理,然后使用高分辨率的圖片和相應(yīng)的低分辨率圖片進(jìn)行對(duì)抗訓(xùn)練。
在運(yùn)行時(shí)間方面,為了保證重建車(chē)牌圖片的質(zhì)量,S-ESRGAN運(yùn)行時(shí)間只和基于生成對(duì)抗網(wǎng)絡(luò)的算法作對(duì)比。本次研究計(jì)算了用其他基于生成對(duì)抗網(wǎng)絡(luò)的算法和S-ESRGAN將輸入的40×20的低分辨率圖像重建為320×160圖像所需的時(shí)間。結(jié)果表明,在運(yùn)行時(shí)間方面,S-ESRGAN運(yùn)行時(shí)間優(yōu)于SRGAN和ESRGAN。SRGAN處理每幅圖像的平均時(shí)間為76.14 ms,ESRGAN處理每幅圖像的平均時(shí)間為91.04 ms,而S-ESRGAN處理每幅圖像的平均時(shí)間為74.54 ms,相較于ESRGAN縮短了18.1%(表1)。
表1 各算法重建圖像運(yùn)行時(shí)間
各方法8倍重建圖像評(píng)價(jià)指標(biāo)見(jiàn)表2。試驗(yàn)結(jié)果表明,與SRGAN比較,S-ESRGAN的PSNR值和SSIM值分別提高了0.437 7 dB和0.005 5。雖然S-ESRGAN的PSNR和SSIM指標(biāo)略小于ESRGAN的,但是S-ESRGAN的算法計(jì)算量遠(yuǎn)遠(yuǎn)少于ESRGAN,實(shí)現(xiàn)了輕量化。
表2 各算法8倍重建圖像評(píng)價(jià)指標(biāo)對(duì)比
典型車(chē)牌圖像重建對(duì)比圖見(jiàn)圖4~圖7,典型圖像使用不同算法重建的評(píng)價(jià)指標(biāo)見(jiàn)表3。可以看出,基于生成對(duì)抗網(wǎng)絡(luò)的算法比基于卷積神經(jīng)網(wǎng)絡(luò)的算法具有更高的PSNR值和SSIM值。S-ESRGAN的PSNR和SSIM指標(biāo)比Bicubic, SRCNN, FSRCNN等非生成對(duì)抗網(wǎng)絡(luò)的方法有很大的提升。與其他基于生成對(duì)抗網(wǎng)絡(luò)的方法對(duì)比,S-ESRGAN的指標(biāo)PSNR和SSIM指標(biāo)平均只有小幅度提升,而與重建圖像效果最好的ESRGAN相比,只是遜色少許。
表3 典型車(chē)牌圖像使用不同算法重建的評(píng)價(jià)指標(biāo)
圖4 典型車(chē)牌圖像1各算法重建效果對(duì)比 圖5 典型車(chē)牌圖像2各算法重建效果對(duì)比
圖6 典型車(chē)牌圖像3各算法重建效果對(duì)比 圖7 典型車(chē)牌圖像4各算法重建效果對(duì)比
本次研究設(shè)置無(wú)序擠壓和激勵(lì)模塊的數(shù)量在15~25之間,然后用數(shù)據(jù)集進(jìn)行驗(yàn)證,計(jì)算不同數(shù)量的無(wú)序擠壓和激勵(lì)模塊平均PSNR和SSIM的值。隨著模塊數(shù)量增多,PSNR和SSIM平均數(shù)值越來(lái)越高,但是到達(dá)某個(gè)值之后,評(píng)價(jià)指標(biāo)數(shù)值會(huì)開(kāi)始降低(圖8,圖9)。當(dāng)模塊數(shù)量達(dá)到18個(gè)時(shí),SSIM和PSNR達(dá)到最高值,所以設(shè)置無(wú)序擠壓和激勵(lì)模塊的數(shù)量為18個(gè)。
圖8 S-ESRGAN中無(wú)序擠壓和激勵(lì)模塊數(shù)量對(duì)PSNR的影響
圖9 S-ESRGAN中無(wú)序擠壓和激勵(lì)模塊數(shù)量對(duì)SSIM的影響
為了實(shí)現(xiàn)車(chē)牌圖像超分辨率重建的輕量化,提出了一種基于生成對(duì)抗網(wǎng)絡(luò)的車(chē)牌圖像的超分辨率重建方法S-ESRGAN,引入了ShuffleNet V2的設(shè)計(jì)概念,提出了無(wú)序擠壓和激勵(lì)模塊,在保證重建圖像質(zhì)量的前提下實(shí)現(xiàn)了輕量化。試驗(yàn)結(jié)果表明,雖然S-ESRGAN在PSNR,SSIM這兩個(gè)圖像評(píng)價(jià)指標(biāo)上略遜色于生成效果最好的ESRGAN,但在計(jì)算量和重建時(shí)間方面都明顯優(yōu)于ESRGAN。