張鵬, 梁立
(云南師范大學(xué) 信息學(xué)院,云南 昆明 650500)
文本圖像是包含文本內(nèi)容的圖片文件,在批量獲取文本圖像(如檔案合同掃描圖像)的過程中可能會受到各種干擾,對于本文圖像來說最常見的干擾有相機(jī)抖動(dòng)和運(yùn)動(dòng)偏移等運(yùn)動(dòng)類型的模糊.文本圖像模糊不僅會使圖像內(nèi)容在視覺上難以辨認(rèn),也會導(dǎo)致圖像文字檢測與識別的效果不好,將模糊文本圖像恢復(fù)為清晰圖像的過程稱為圖像復(fù)原技術(shù).
研究者們大多將去模糊算法的研究應(yīng)用于街道、風(fēng)景等場景圖像中[1],而針對文本圖像還沒有較為理想的去模糊算法.使用領(lǐng)域內(nèi)的幾種常見算法對文本圖像進(jìn)行去模糊實(shí)驗(yàn),結(jié)果表明生成對抗網(wǎng)絡(luò)DeblurGAN[2]算法對文本圖像去模糊處理速度和效果相對更好,因此使用DeblurGAN對文本圖像去模糊是更好的選擇.但是DeblurGAN算法對文本圖像的去模糊效果還不是特別理想,于是對其進(jìn)行了三處改進(jìn)并對其訓(xùn)練,將改進(jìn)后的DeblurGAN算法應(yīng)用到文本圖像去模糊中,算法對文本圖像去模糊效果有明顯提升.
Whyte等人提出了一種抖動(dòng)圖像的非均勻去模糊的模型[3],他指出相機(jī)的轉(zhuǎn)動(dòng)比平移更容易造成圖像的模糊,因此研究中主要考慮了相機(jī)轉(zhuǎn)動(dòng)的影響.作者提出了一種新型的模糊過程模型,將該模型應(yīng)用于兩種不同的去模糊算法,其中包括抖動(dòng)和部分飽和圖像的高效去模糊算法并顯示出優(yōu)異的處理不均勻模糊的能力.
Nah等人提出了一種用于動(dòng)態(tài)場景去模糊的深度多尺度卷積神經(jīng)網(wǎng)絡(luò)[4].作者提出了多尺度學(xué)習(xí)CNN框架并提高了網(wǎng)絡(luò)收斂速度,使用端到端的神經(jīng)網(wǎng)絡(luò)優(yōu)化了模糊核的估計(jì)問題,解決了傳統(tǒng)CNN無法解決復(fù)雜模糊核以及核評估過程容易受到噪聲影響的問題.
Goodfellow率先提出生成對抗網(wǎng)絡(luò)(GAN)[5]的想法,在圖像生成、復(fù)原、超分辨率重建[6]等領(lǐng)域都得到了應(yīng)用.DeblurGAN[2]是烏克蘭學(xué)者Kupyn提出的一種基于GAN方法進(jìn)行盲去運(yùn)動(dòng)模糊的方法,他受SRGAN與CGAN的啟發(fā),將圖像去模糊看作一類特殊的image2image任務(wù).DeblurGAN基于WGAN和內(nèi)容損失對模型進(jìn)行訓(xùn)練,在處理速度上和效果上均有不錯(cuò)的表現(xiàn).DeblurGAN為全卷積模型,在圖像Patch上進(jìn)行訓(xùn)練,因此可以應(yīng)用到任意大小的圖像中,在DθD上執(zhí)行了5次梯度下降,在GθG上執(zhí)行了1次,將生成器和判別器的學(xué)習(xí)速率設(shè)置成10-4,經(jīng)過150次迭代后將這個(gè)比率線性衰減,經(jīng)歷數(shù)天的計(jì)算,研究者成功完成DeblurGAN的訓(xùn)練.
幾種去模糊算法在街道場景去模糊實(shí)驗(yàn)中都有較好表現(xiàn),但是在文本圖像去模糊實(shí)驗(yàn)中去模糊的效果差異較為明顯,如圖1.其中,DeblurGAN算法相比與其他算法不僅效果最好,而且處理更快.但是DeblurGAN去模糊效果還不夠理想,需對其進(jìn)行改進(jìn).
圖1 幾種算法的文本圖像去模糊效果
圖像在成像、傳輸和儲存中會導(dǎo)致圖像質(zhì)量的下降,稱為圖像退化.成像階段造成圖像退化的情況大多是運(yùn)動(dòng)模糊、高斯模糊或散焦模糊等[7],其中運(yùn)動(dòng)模糊也是文本圖像中最常見的退化類型之一.圖像模糊的過程可用模型表示為
IB=IS*k(M) +N;
其中,IB代表模糊的圖像,IS代表清晰的圖像,k(M)代表運(yùn)動(dòng)情況M確定的模糊核類型,N代表圖像的噪聲.
經(jīng)過眾多研究者經(jīng)歷數(shù)年的研究,將去模糊的問題分為兩大類:盲去模糊和非盲去模糊[8],非盲去模糊指模糊核已知,盲去模糊指的是模糊核與原圖像都未知.
去模糊的目標(biāo)是將未知模糊核的模糊圖像IB恢復(fù)成清晰圖像IS,DeblurGAN需要訓(xùn)練一個(gè)CNN GθG,還引入critic函數(shù)DθD,以對抗的方式訓(xùn)練兩個(gè)網(wǎng)絡(luò).對DeblurGAN算法的生成網(wǎng)絡(luò)進(jìn)行三處改進(jìn)以增加文本去模糊的適應(yīng)性.
第一處改進(jìn):將自適應(yīng)實(shí)例歸一化(AdaIN)層[9]代替實(shí)例歸一化層(Instance Norm).AdaIN輸入為內(nèi)容編碼(content input,x)和風(fēng)格編碼(style input,y),對于每個(gè)通道,將x的通道級均值和標(biāo)準(zhǔn)差匹配到y(tǒng)的通道級均值和標(biāo)準(zhǔn)差上,即
AdaIN通過少量圖像就可以計(jì)算得到風(fēng)格遷移后的線性系數(shù),使重建出來的圖像更接近真實(shí)圖像,且AdaIN是在特征圖層面上通過改變特征的數(shù)據(jù)分布來實(shí)現(xiàn)風(fēng)格遷移,計(jì)算開銷相對較小,也更易于實(shí)現(xiàn).
第二處改進(jìn):使用帶泄露修正線性單元(Leaky ReLU)代替原激活函數(shù)線性整流函數(shù)(ReLU),Leaky ReLU對負(fù)值輸入有非常小的坡度,能減少靜默神經(jīng)元的出現(xiàn),支持基于梯度的學(xué)習(xí),減輕了ReLU的稀疏性,緩解了ReLU導(dǎo)致神經(jīng)元死亡的問題[10].而且Leaky ReLU適合生成類問題,ReLU適合二分類問題,因此在文本圖像去模糊領(lǐng)域使用Leaky ReLU會更好.
第三處改進(jìn):將損失函數(shù)表達(dá)為對抗損失和內(nèi)容損失兩部分的組合后,通過實(shí)驗(yàn)篩選設(shè)置超參數(shù)λ為90在本研究中效果更好,其損失函數(shù)為
DeblurGAN生成網(wǎng)絡(luò)架構(gòu)與改進(jìn)的DeblurGAN生成網(wǎng)絡(luò)架構(gòu)如圖2;可以看出,改進(jìn)后的DeblurGAN依然包含兩個(gè)1/2間隔的卷積單元、9殘差塊和兩個(gè)反卷積單元,但每個(gè)殘差塊由卷積層、自適應(yīng)實(shí)例歸一化層(AdaIN)和帶泄露修正線性單元(Leaky ReLU)組成.
圖2 DeblurGAN與改進(jìn)DeblurGAN生成網(wǎng)絡(luò)架構(gòu)
由于缺乏模糊的文本圖像數(shù)據(jù)集,根據(jù)孫[11]提出的方法,將清晰圖像模擬符合其運(yùn)動(dòng)規(guī)律的運(yùn)動(dòng)情況從而估計(jì)出模糊核生成模糊圖像.本文圖像在掃描采集時(shí)環(huán)境較為穩(wěn)定,采集的重復(fù)性操作大多屬于常規(guī)性動(dòng)作,因此根據(jù)圖像采集操作的運(yùn)動(dòng)情況進(jìn)行運(yùn)動(dòng)模糊核估計(jì),制作了包含9 000多對模糊文本圖像的數(shù)據(jù)集.
在DeblurGAN算法和改進(jìn)的DeblurGAN算法上使用模糊文本圖像數(shù)據(jù)集進(jìn)行訓(xùn)練,數(shù)據(jù)集為生成的模糊文本圖像數(shù)據(jù)集,訓(xùn)練環(huán)境為GeForce RTX 2080Ti GPU.選取少量測試數(shù)據(jù)對算法進(jìn)行去模糊效果測試,實(shí)驗(yàn)表明改進(jìn)后的DeblurGAN算法在文本圖像去模糊中相較于DeblurGAN有明顯的提升(如圖3).
圖3 改進(jìn)前后的DeblurGAN去模糊效果對比
PSNR指的是峰值信噪比,圖像的PSNR值越大說明圖像的失真程度越小.文本圖像細(xì)節(jié)較多,因此結(jié)合了圖像中的文字檢測算法對其去模糊效果進(jìn)行評價(jià),即圖像中檢測出文字的數(shù)量越多則去模糊效果越好.實(shí)驗(yàn)表明改進(jìn)后算法在PSNR指標(biāo)上有小幅提升(表1),圖像中的文字檢測數(shù)量增加(圖4),圖像去模糊效果有明顯的提升,去模糊后的文本圖像基本達(dá)到視覺辨認(rèn)與文字識別的要求.
表1 DeblurGAN與改進(jìn)后的DeblurGAN去模糊圖像的PSNR指標(biāo)
圖4 DeblurGAN與改進(jìn)后的DeblurGAN文字檢測效果
經(jīng)過對比,使用了一種多分量損失函數(shù)優(yōu)化的條件對抗網(wǎng)絡(luò)DeblurGAN用作文本圖像的去模糊研究.為增強(qiáng)模糊文本圖像去模糊效果,將DeblurGAN進(jìn)行了三處改進(jìn),根據(jù)現(xiàn)有方法模擬圖像運(yùn)動(dòng)模糊核生成了模糊文本圖像數(shù)據(jù)集.使用模糊文本數(shù)據(jù)集對改進(jìn)的DeblurGAN進(jìn)行訓(xùn)練.在實(shí)驗(yàn)中使用PSNR指標(biāo)與文字檢測效果結(jié)合的方式,綜合評價(jià)算法對文本圖像去模糊的效果.結(jié)果表明,改進(jìn)的DeblurGAN算法對文本圖像去模糊效果明顯提升,圖像中文字檢測的效果更好,文本圖像可用性明顯提升.