紀(jì)軼男,李海峰,劉 旭
浙江大學(xué)光電科學(xué)與工程學(xué)院,浙江 杭州 310027
作為融合光學(xué)、算法、電子學(xué)、信息處理等學(xué)科于一體的新興領(lǐng)域,計(jì)算光學(xué)利用對(duì)所有元件的并行設(shè)計(jì)和聯(lián)合優(yōu)化來(lái)提升光電系統(tǒng)的處理能力,在過(guò)去20 年中取得了非常大的進(jìn)展并產(chǎn)生了諸多分支[1-2]。其中一個(gè)較為典型的就是基于參數(shù)化光學(xué)和圖像處理聯(lián)合優(yōu)化的端到端成像,該技術(shù)在近幾年中成功應(yīng)用到了擴(kuò)展景深和超分辨率成像[3]、單目深度估計(jì)[4-6]以及圖像分類(lèi)[7]上。
除了端到端成像外,還有一個(gè)熱門(mén)研究方向就是基于深度學(xué)習(xí)的圖像增強(qiáng)[2]。深度學(xué)習(xí)作為近幾年大熱的研究課題,主要解決從數(shù)據(jù)中自動(dòng)獲取有效特征表示的問(wèn)題,即貢獻(xiàn)度分配問(wèn)題。而由于神經(jīng)網(wǎng)絡(luò)的誤差反向傳播算法能夠較好地解決該問(wèn)題,故深度學(xué)習(xí)主要采用神經(jīng)網(wǎng)絡(luò)模型[8]。
目前常用的典型神經(jīng)網(wǎng)絡(luò)模型有2014 年Goodfellow 等人[9]提出的生成對(duì)抗網(wǎng)絡(luò)(generative adversarial nets,GAN)和2015 年Ronneberger 等人[10]提出的U-Net 卷積神經(jīng)網(wǎng)絡(luò)。2017 年,Zhang 等人[11]提出了一種迭代非盲反卷積的全卷積網(wǎng)絡(luò),給出了較好的圖像恢復(fù)任務(wù)數(shù)據(jù)驅(qū)動(dòng)方法。同年,Sinha 等人[12]首次證明了深度神經(jīng)網(wǎng)絡(luò)(deep neural networks,DNN)可以解決計(jì)算成像系統(tǒng)的圖像恢復(fù)問(wèn)題,并用網(wǎng)絡(luò)恢復(fù)出了無(wú)透鏡系統(tǒng)成像結(jié)果的相位信息。2018 年,Kupyn 等人[13]提出了一種基于有條件的GAN 和內(nèi)容損失的端到端學(xué)習(xí)方法用于運(yùn)動(dòng)去模糊,并在各種評(píng)價(jià)標(biāo)準(zhǔn)中獲得了比前人更好的表現(xiàn)。2019 年,Huang 等人[14]開(kāi)發(fā)了一個(gè)基于U-Net 架構(gòu)的深度神經(jīng)網(wǎng)絡(luò)作為監(jiān)控系統(tǒng)的預(yù)處理模塊,并在不均勻光源場(chǎng)景下保障了監(jiān)控目標(biāo)檢測(cè)的準(zhǔn)確性。2020 年,Jung 等人[15]提出了一種基于全局和局部殘差學(xué)習(xí)的先進(jìn)U-Net 模型,并在恢復(fù)復(fù)雜退化圖像方面具有以往方法無(wú)法比擬的性能。同年,Jin 等人[16]提出了一種基于GAN 和多尺度特征融合的圖像恢復(fù)算法,成功在提升圖像復(fù)原精度的同時(shí)生成了更逼真的復(fù)原圖像。2021 年,Li 等人[17]提出了一種基于CycleGAN 的終身學(xué)習(xí)框架,實(shí)現(xiàn)了連續(xù)多任務(wù)下的圖像恢復(fù)。
然而,以上方法都是在較小的視場(chǎng)下所提出,往往忽略了大視場(chǎng)的問(wèn)題。鑒于這種情況,2019 年,Peng 等人[18]用特別設(shè)計(jì)的菲涅爾單透鏡結(jié)合新的學(xué)習(xí)架構(gòu)(變體U-Net+GAN+知覺(jué)損失),實(shí)現(xiàn)了對(duì)大視場(chǎng)單鏡片成像結(jié)果的高質(zhì)量恢復(fù)。該工作的主要貢獻(xiàn)是借助于深度學(xué)習(xí)降低了對(duì)成像透鏡光學(xué)性能要求,從而可以實(shí)現(xiàn)光學(xué)成像系統(tǒng)的低成本化。但該方法對(duì)成像系統(tǒng)也提出了新的要求,即需要光學(xué)系統(tǒng)的PSF在各視場(chǎng)中盡量保持一致。雖然作者在設(shè)計(jì)時(shí)考慮到了PSF 的均一性問(wèn)題,但做到全視場(chǎng)PSF 完全一致依舊比較困難,并且最終設(shè)計(jì)出來(lái)的透鏡也沒(méi)有完全達(dá)到PSF 一致性的要求。
本文基于光學(xué)系統(tǒng)的對(duì)稱(chēng)性,以及PSF 從中心往邊緣視場(chǎng)逐漸劣化的特點(diǎn),通過(guò)對(duì)圖像的環(huán)形分割、學(xué)習(xí)以及圖像融合,對(duì)具有相近PSF 的環(huán)帶圖像進(jìn)行單獨(dú)學(xué)習(xí)訓(xùn)練,從而提高了圖像恢復(fù)的質(zhì)量。
光學(xué)系統(tǒng)在成像過(guò)程中經(jīng)常會(huì)因?yàn)楦鞣N內(nèi)在或外在原因造成圖像的模糊和退化[19],其中一個(gè)最基本的模型就是假設(shè)點(diǎn)擴(kuò)散函數(shù)(point spread function,PSF)是線(xiàn)性空間不變的,其具體表示為
其中:I(x,y)為最終得到的低質(zhì)量圖像,h(x,y)為系統(tǒng)PSF,?表示卷積,f(x,y)為原始清晰圖像(可以將實(shí)物場(chǎng)景看作一張非常清晰的原始圖像),n(x,y)為背景噪聲。
對(duì)于網(wǎng)絡(luò)而言,其主要任務(wù)有兩點(diǎn):學(xué)習(xí)出系統(tǒng)PSF 并對(duì)輸入圖像反卷積PSF,以及通過(guò)網(wǎng)絡(luò)學(xué)習(xí)盡可能多地消除背景噪聲。經(jīng)過(guò)對(duì)Peng 等人成果[18]的復(fù)現(xiàn),發(fā)現(xiàn)其所用的網(wǎng)絡(luò)算法對(duì)噪聲的消除效果非常不錯(cuò),可改動(dòng)的地方不大,所以本文將改動(dòng)的方向瞄準(zhǔn)了PSF。
對(duì)于大視場(chǎng)光學(xué)系統(tǒng)而言,在不同視場(chǎng)參數(shù)下其PSF 會(huì)呈現(xiàn)不同的形狀,即整個(gè)系統(tǒng)沒(méi)有統(tǒng)一的PSF。而由上一小節(jié)得知,網(wǎng)絡(luò)算法對(duì)輸入圖像的要求恰恰是需要一個(gè)固定的PSF。針對(duì)這種情況Peng等人采用的是混合PSF[18]方法,將不同視場(chǎng)下的PSF 混合為一個(gè)整體的PSF。但這種混合的PSF 無(wú)論對(duì)中心視場(chǎng)還是對(duì)邊緣視場(chǎng)來(lái)說(shuō)都是不準(zhǔn)確的,這勢(shì)必會(huì)造成網(wǎng)絡(luò)學(xué)習(xí)中的PSF 誤差,從而對(duì)恢復(fù)圖像質(zhì)量產(chǎn)生影響。
圖1 為Peng 采用了混合PSF 處理得到的不同視場(chǎng)下的PSF 圖。整個(gè)視場(chǎng)的PSF 主要由約10°視場(chǎng)角以?xún)?nèi)的圓形PSF 和約10°視場(chǎng)角之外的徑向拖尾狀PSF 構(gòu)成。雖然10°以外的PSF 呈現(xiàn)一定的徑向拖尾狀,但PSF 的平均半徑要遠(yuǎn)大于中心視場(chǎng)圓形PSF。如果直接訓(xùn)練整張圖像,邊緣處較差的PSF 勢(shì)必會(huì)影響中心區(qū)域的還原效果,故要提升圖像恢復(fù)質(zhì)量可以將圖像先分割再訓(xùn)練。
圖1 不同視場(chǎng)PSF 放大圖[18]。(a) 約10°以?xún)?nèi)視場(chǎng)PSF;(b) 約10°至30°視場(chǎng)PSF;(c) 約30°至53°視場(chǎng)PSFFig.1 Amplification of PSF with different fields of view[18].(a) PSF within about 10 degrees;(b) PSF about 10 degrees to 30 degrees;(c) PSF about 30 degrees to 53 degrees
經(jīng)過(guò)上述觀(guān)察分析,為了解決PSF 誤差問(wèn)題,本文采用了一種新的思路,即先將圖像按視場(chǎng)環(huán)切,分為中心和邊緣兩個(gè)部分,再將這兩個(gè)部分分別做成兩個(gè)數(shù)據(jù)集,之后將兩個(gè)代表不同視場(chǎng)的數(shù)據(jù)集分別輸入各自對(duì)應(yīng)的網(wǎng)絡(luò)訓(xùn)練,最后將網(wǎng)絡(luò)對(duì)兩部分圖像的恢復(fù)結(jié)果拼接到一起得到最終結(jié)果。具體流程如圖2所示。
圖2 新思路具體實(shí)施流程(紅色、藍(lán)色和黑色框分別表示訓(xùn)練、測(cè)試和二者共有的步驟,紅色、藍(lán)色和黑色箭頭分別表示訓(xùn)練、測(cè)試和二者共有的流程)Fig.2 The concrete implementation process of the new idea(The red,blue and black boxes represent training,testing and the steps shared by them respectively,and the red,blue and black arrows represent training,testing and the processes shared by them respectively)
在分割過(guò)程中,為了防止圖像拼接后接縫處留有暗環(huán)印記,本文采用了一種結(jié)合高斯函數(shù)的分割方式。對(duì)于一個(gè)寬度為m、高度為n的圖像,首先生成兩個(gè)與其等大的二維網(wǎng)格?寬度網(wǎng)格x取值范圍,高度網(wǎng)格y取值范圍,之后使用如下公式生成與圖像等大的高斯強(qiáng)度網(wǎng)格:
其中:g為 生成高斯強(qiáng)度網(wǎng)格,a為高斯函數(shù)高度,x和y分別為之前生成的寬度和高度網(wǎng)格,R為被分割圓形范圍的半徑。最后將圖像與高斯強(qiáng)度網(wǎng)格相乘完成高斯分割,并可以通過(guò)大圓減小圓的方式得到對(duì)應(yīng)不同視場(chǎng)的環(huán)形區(qū)域。
實(shí)驗(yàn)用的菲涅爾透鏡采用文獻(xiàn)[18]所提出的方法設(shè)計(jì),采用FLIR Grasshopper3 GS3-U3-123S6C 傳感器和華碩PA32U 顯示器構(gòu)建實(shí)驗(yàn)系統(tǒng)。該系統(tǒng)中鏡頭視場(chǎng)角為53°,裝載在傳感器上,傳感器距離顯示屏約1.2 m,傳感器像面中心點(diǎn)正對(duì)顯示屏中心點(diǎn),二者等高且相對(duì)無(wú)傾斜、旋轉(zhuǎn)和俯仰角度關(guān)系。具體系統(tǒng)如圖3 所示。
圖3 整體硬件系統(tǒng)(紅色方框內(nèi)為傳感器)Fig.3 Overall hardware system (sensors in the red box)
訓(xùn)練網(wǎng)絡(luò)采用和文獻(xiàn)[18]相同的變體U-Net+GAN+知覺(jué)損失網(wǎng)絡(luò)架構(gòu),用Adobe 5K 數(shù)據(jù)集進(jìn)行網(wǎng)絡(luò)訓(xùn)練。我們首先從數(shù)據(jù)集官網(wǎng)下載了1772 張數(shù)據(jù)集圖像,將其設(shè)定為三通道48 位、高度2160 pixels、寬度等比縮放的格式以適應(yīng)顯示屏大小和拍攝需要。在對(duì)系統(tǒng)進(jìn)行相機(jī)標(biāo)定和漸暈、背景校正后,對(duì)處理好的數(shù)據(jù)集圖像進(jìn)行投屏拍攝和配準(zhǔn),得到寬2972 pixels、高1910 pixels 的48 位深度PNG 格式數(shù)據(jù)集。具體步驟流程如圖4 所示。
圖4 圖像拍攝配準(zhǔn)流程Fig.4 Image shooting and registration process
取其中54 張作為測(cè)試集,將剩余的1718 張用2.2 節(jié)分割方法分為寬與高均為2544 pixels、對(duì)應(yīng)視場(chǎng)為 10° 的中心部分,和與處理后數(shù)據(jù)集等大、對(duì)應(yīng)視場(chǎng)為 10°~53° 的邊緣部分,做成如圖5 和圖6 所示的訓(xùn)練集,分別放入各自的網(wǎng)絡(luò)中進(jìn)行訓(xùn)練。其中,所有圖像均未加Gamma,網(wǎng)絡(luò)訓(xùn)練采用的GPU 為英偉達(dá)GeForce 2080 Ti。
圖5 中心部分?jǐn)?shù)據(jù)集示例(左側(cè)為拍攝圖,右側(cè)為原始圖)Fig.5 Sample of center partial dataset (shot image on the left,original image on the right)
圖6 邊緣部分?jǐn)?shù)據(jù)集示例(左側(cè)為拍攝圖,右側(cè)為原始圖),中間留洞原因詳見(jiàn)后文Fig.6 Sample of edge partial dataset (shot image on the left,original image on the right).The reasons for leaving holes in the middle are detailed in the following article
待訓(xùn)練結(jié)束后,將之前處理好的54 張測(cè)試集圖片和我們自己拍攝的36 張實(shí)景圖片(21 張室內(nèi)景物圖,15 張室外景物圖),同樣用2.2 節(jié)的高斯分割方法分為中心和邊緣兩部分,將兩部分送入各自對(duì)應(yīng)的網(wǎng)絡(luò)中進(jìn)行恢復(fù),最后將兩個(gè)網(wǎng)絡(luò)輸出的結(jié)果拼接得到最終的恢復(fù)圖像。
由于測(cè)試集是和訓(xùn)練集一同拍攝處理的,所以分割后的兩個(gè)部分與訓(xùn)練集對(duì)應(yīng)部分大小、格式相同。因?yàn)楸疚牟捎玫淖凅wU-Net 網(wǎng)絡(luò)不是端到端的網(wǎng)絡(luò),即網(wǎng)絡(luò)會(huì)造成輸出圖像尺寸改變,所以經(jīng)網(wǎng)絡(luò)處理后兩部分均保存為24 位深度,中心部分尺寸變?yōu)閷捙c高均為2304 pixels,邊緣部分尺寸變?yōu)閷?816 pixels、高1792 pixels。將兩部分圖像拼接得到最終輸出結(jié)果圖,并將該結(jié)果與原始清晰圖、未處理拍攝圖和直接用Peng 等人[18]方法恢復(fù)圖進(jìn)行對(duì)比,得到如圖7 所示結(jié)果。其中,7(a)為測(cè)試集的原始圖像,7(b)為輸入網(wǎng)絡(luò)的模糊測(cè)試集圖像,7(c)為用文獻(xiàn)[18]方法得到的輸出圖像,7(d)為本文文方法得到的輸出圖像,所有圖像均為24 位深度且都被加上了1.8 的Gamma值,原始清晰圖和未處理拍攝圖均被裁成和網(wǎng)絡(luò)輸出圖一樣的尺寸以便比較。由圖可以看出,本方法恢復(fù)得到的圖像質(zhì)量更好,如從測(cè)試集第二組圖中的樹(shù)屋頂及茂密枝葉、第三組圖中的細(xì)密樹(shù)枝及樹(shù)干以及第四組中建筑窗戶(hù)等,能夠看到新方法讓圖像細(xì)節(jié)更加自然和豐富,更接近原圖;而原方法除細(xì)節(jié)缺失外,還存在一定程度的鬼影,如第二組樹(shù)葉圖像以及第四組黑背景下的條狀物體。
圖7 測(cè)試集恢復(fù)結(jié)果示例,每張圖片下方列出了用紅框選出的兩處細(xì)節(jié)。(a) 清晰圖像;(b) 模糊圖像;(c) 文獻(xiàn)[18]方法得到結(jié)果;(d) 本文方法得到結(jié)果Fig.7 Sample of test set after restoration,with two details highlighted in red boxes are listed below each image.(a) Ground truth images;(b) Blurred images;(c) Results obtained by means of Ref.[18];(d) Results of our method
用單鏡片拍攝實(shí)際場(chǎng)景得到寬4096 pixels、高3000 pixels 的48 位深度PNG 格式圖像,分割后得到對(duì)應(yīng)視場(chǎng)為10° 且寬與高均為3654 pixels 的中心部分和對(duì)應(yīng)視場(chǎng)為10°~53° 且與原圖等大的邊緣部分。兩部分分別經(jīng)過(guò)各自對(duì)應(yīng)的網(wǎng)絡(luò)處理后均從48 位降到24 位,中心部分大小變成寬與高均為3584 pixels,邊緣部分大小變成寬4096 pixels、高2816 pixels。同樣,將兩部分拼接得到最終輸出結(jié)果圖,并類(lèi)似地將該結(jié)果與原始拍攝圖和直接用文獻(xiàn)[18]方法恢復(fù)圖進(jìn)行對(duì)比,得到如圖8 所示結(jié)果。其中,8(a)為原始實(shí)拍圖像,8(b)為用文獻(xiàn)[18]方法得到的恢復(fù)結(jié)果,8(c)為本文方法得到的恢復(fù)結(jié)果,所有圖像均為24 位深度且都被加上了1.8 的Gamma 值,原始拍攝圖被裁成和網(wǎng)絡(luò)輸出圖一樣的尺寸以便比較。
圖8 實(shí)拍圖恢復(fù)結(jié)果示例,每張圖上方或下方列出了用紅框選出的一處細(xì)節(jié)。(a) 模糊圖像;(b) 文獻(xiàn)[18]方法得到結(jié)果;(c) 本文方法得到結(jié)果Fig.8 Sample of real pictures after restoration,with a detail selected in a red box is listed above or below each image.(a) Blurred images;(b) Results obtained by means of literature [18];(c) Results of our method
由圖8 可以看到,實(shí)景拍攝恢復(fù)得到的圖像的清晰度和原始方法相比也有較大提高,如第一組圖中的毛衣細(xì)節(jié),書(shū)脊文字細(xì)節(jié),第三組草坪的細(xì)節(jié)以及第四組圖中座椅套圖案細(xì)節(jié)等,都有明顯的提升。
為了更進(jìn)一步證明本文的思路對(duì)該大視場(chǎng)單鏡片計(jì)算成像系統(tǒng)起到了改進(jìn)和優(yōu)化作用,首先采用圖像評(píng)價(jià)常用的峰值信噪比(peak signal to noise ratio,PSNR)指標(biāo),對(duì)擁有標(biāo)準(zhǔn)清晰圖像的測(cè)試集進(jìn)行評(píng)價(jià)。具體評(píng)價(jià)結(jié)果如表1 所示。
表1 PSNR 評(píng)價(jià)結(jié)果對(duì)比Table 1 Comparison of PSNR evaluation results
之后繼續(xù)采用結(jié)合亮度、對(duì)比度與結(jié)構(gòu)因素更貼近人眼觀(guān)感的結(jié)構(gòu)相似性(structural similarity,SSIM)[20]指標(biāo),對(duì)測(cè)試集進(jìn)行評(píng)價(jià)。具體評(píng)價(jià)結(jié)果如表2 所示。
表2 SSIM 評(píng)價(jià)結(jié)果對(duì)比Table 2 Comparison of SSIM evaluation results
通過(guò)客觀(guān)定量評(píng)價(jià)可以發(fā)現(xiàn),雖然在PSNR 指標(biāo)上用本文的方法得到的結(jié)果比用Peng 等人[18]方法得到的結(jié)果略遜一籌,這主要由于分割產(chǎn)生的漸變視場(chǎng)過(guò)渡區(qū)導(dǎo)致恢復(fù)圖像的亮度相比原圖發(fā)生了變化,但是通過(guò)比較可以發(fā)現(xiàn)圖像在清晰度和振鈴鬼影問(wèn)題上相比之前結(jié)果確有改進(jìn)提升,而在SSIM 指標(biāo)上用本文的方法得到的結(jié)果比Peng 等人[18]方法要高出一大截。所以,總體來(lái)看本文提出的新思路確實(shí)改進(jìn)和優(yōu)化了Peng 等人[18]提出的大視場(chǎng)單鏡片計(jì)算成像系統(tǒng),讓系統(tǒng)恢復(fù)圖像的質(zhì)量得到了提升,變得更適宜人眼觀(guān)看。
總體來(lái)看,本文提出的方法:先將圖片按視場(chǎng)高斯環(huán)切分割,再分別訓(xùn)練對(duì)應(yīng)各個(gè)視場(chǎng)的網(wǎng)絡(luò),最后將各個(gè)網(wǎng)絡(luò)原始輸出按視場(chǎng)關(guān)系拼接得到最終結(jié)果,應(yīng)用在Peng 等人[18]提出的大視場(chǎng)單鏡片計(jì)算成像系統(tǒng)上之后,其最終輸出圖像結(jié)果從主觀(guān)人眼評(píng)價(jià)角度來(lái)看,更清晰、舒適,更貼近原始圖像;從客觀(guān)定量評(píng)價(jià)角度來(lái)看,在PSNR 相差無(wú)幾的情況下SSIM 值有了較大的提升。本文最終成功實(shí)現(xiàn)了對(duì)Peng 等人[18]提出的大視場(chǎng)單鏡片計(jì)算成像系統(tǒng)的改進(jìn)和優(yōu)化,成功讓其整體圖像恢復(fù)質(zhì)量更上一層樓,使其恢復(fù)效果更適宜人眼觀(guān)看。
雖然環(huán)形分割訓(xùn)練對(duì)圖像的清晰度有提升作用,但針對(duì)邊緣視場(chǎng)PSF 的徑向發(fā)散特性,通過(guò)對(duì)圖像進(jìn)行一定的空間變換使PSF 的形狀一致,可以進(jìn)一步提高本文方法的訓(xùn)練效果,具體方法將在我們后續(xù)工作中進(jìn)一步展開(kāi)。