張媛媛,張紅英,2
1.西南科技大學(xué) 信息工程學(xué)院,四川 綿陽(yáng) 621010
2.西南科技大學(xué) 特殊環(huán)境機(jī)器人技術(shù)四川省重點(diǎn)實(shí)驗(yàn)室,四川 綿陽(yáng) 621010
相比于普通的低動(dòng)態(tài)范圍(low dynamic range,LDR)圖像,高動(dòng)態(tài)范圍(high dynamic range,HDR)圖像具有更大的動(dòng)態(tài)范圍,包含更多的圖像細(xì)節(jié)[1]。而由于目前成像設(shè)備的限制,直接捕獲HDR 圖像是十分困難的。因此,目前HDR 圖像的獲取方式主要是通過(guò)計(jì)算機(jī)圖像處理技術(shù)生成,主要有多曝光圖像融合和單曝光圖像生成兩種[2]。多曝光生成的方式需要同一場(chǎng)景的不同曝光程度的圖像,對(duì)場(chǎng)景靜態(tài)性要求較高。單曝光生成方法只需要構(gòu)建合適的映射就能完成圖像動(dòng)態(tài)范圍的擴(kuò)展,沒(méi)有此限制,并可以將現(xiàn)有的LDR資源轉(zhuǎn)換成HDR 資源,已逐漸成為研究熱點(diǎn)。本文主要研究單曝光生成的方法。
單曝光圖像產(chǎn)生HDR圖像是指通過(guò)對(duì)單幅低動(dòng)態(tài)范圍圖像進(jìn)行一定的處理過(guò)程以及動(dòng)態(tài)范圍的擴(kuò)展來(lái)產(chǎn)生HDR圖像[3]。目前主流的單曝光HDR生成方式主要是反色調(diào)映射和偽多曝光融合。反色調(diào)映射是指通過(guò)對(duì)色調(diào)映射過(guò)程求逆構(gòu)建反色調(diào)映射函數(shù),以此對(duì)圖像的動(dòng)態(tài)范圍進(jìn)行擴(kuò)展的過(guò)程[4]。偽曝光融合是指對(duì)正常曝光的LDR 圖像進(jìn)行處理,生成多幅偽多曝光的圖像,然后對(duì)其進(jìn)行融合產(chǎn)生HDR圖像[5]。反色調(diào)映射模型算法通常計(jì)算較為簡(jiǎn)單,對(duì)高質(zhì)量的LDR 圖像表現(xiàn)較好,但通常存在一定的色彩偏移和細(xì)節(jié)損失的情況。偽多曝光模型算法能夠較好地保留圖像細(xì)節(jié),但通常計(jì)算復(fù)雜,所需時(shí)間較長(zhǎng)。
隨著深度學(xué)習(xí)在計(jì)算機(jī)領(lǐng)域的發(fā)展,卷積神經(jīng)網(wǎng)絡(luò)在圖像處理方面表現(xiàn)出強(qiáng)大的分析處理能力,圖像生成網(wǎng)絡(luò)開(kāi)始發(fā)展,能夠根據(jù)不同的信息產(chǎn)生不同的圖像,卷積神經(jīng)網(wǎng)絡(luò)開(kāi)始被應(yīng)用HDR圖像的生成[6]。Eilertsen等[7]利用VGG16 網(wǎng)絡(luò)結(jié)構(gòu)將卷積神經(jīng)網(wǎng)絡(luò)用于單幅LDR圖像產(chǎn)生HDR圖像。通過(guò)兩個(gè)去除全連接層的VGG16網(wǎng)絡(luò)構(gòu)建一個(gè)U型結(jié)構(gòu)的網(wǎng)絡(luò),完成從低動(dòng)態(tài)到高動(dòng)態(tài)的編碼。同時(shí)在網(wǎng)絡(luò)中加入跳躍連接,充分保留原始圖像的細(xì)節(jié)信息。該方法主要針對(duì)圖像中的過(guò)曝光區(qū)域進(jìn)行重建,在圖像的明亮區(qū)域表現(xiàn)較好,但在其他區(qū)域采用了簡(jiǎn)單的反伽馬變換擴(kuò)展,當(dāng)圖像整體較暗的時(shí)候可能會(huì)出現(xiàn)偽影。Endo等[8]提出一種全自動(dòng)推理網(wǎng)絡(luò),通過(guò)模擬相機(jī)響應(yīng)函數(shù)從HDR 數(shù)據(jù)庫(kù)中創(chuàng)建LDR 圖像,通過(guò)網(wǎng)絡(luò)學(xué)習(xí)圖像的曝光變化,再?gòu)膯蝹€(gè)LDR圖像估算不同曝光的LDR圖像,最后再合成HDR圖像。Lee等[9]提出一種基于擴(kuò)張卷積的網(wǎng)絡(luò)結(jié)構(gòu)。從同一個(gè)場(chǎng)景的單個(gè)LDR圖像中推斷出不同曝光和光照條件下的LDR圖像,再融合生成LDR 圖像來(lái)產(chǎn)生HDR 圖像。該兩種方法都類(lèi)似于偽曝光融合的方法,能夠較好地?cái)U(kuò)展圖像的黑暗區(qū)域,但圖像整體有點(diǎn)偏白,使圖像亮區(qū)域的顏色不如原始LDR鮮亮。產(chǎn)生該結(jié)果的原因在于生成圖像堆時(shí),隨著曝光程度的增加,損失了原始圖像明亮區(qū)域的細(xì)節(jié),出現(xiàn)了整體為白的圖像,且由于要生成多幅圖像,算法的運(yùn)行時(shí)間也較長(zhǎng)。Marnerides 等[10]提出一種具有三個(gè)分支的擴(kuò)展網(wǎng)絡(luò),分別為局部分支、擴(kuò)張分支、全局分支,每個(gè)分支負(fù)責(zé)一個(gè)特定的方面,最后將三個(gè)分支的結(jié)果融合得到最終HDR圖像。該網(wǎng)絡(luò)的局部分支和擴(kuò)張分支避免了下采樣再上采樣的過(guò)程,能夠在很大程度上減少背景信息缺失的區(qū)域產(chǎn)生偽像的可能,但在復(fù)制全局分支結(jié)果的時(shí)候產(chǎn)生了平滑作用,可能會(huì)造成圖像在一定程度上的模糊。
現(xiàn)存的用于單曝光HDR圖像生成的網(wǎng)絡(luò)結(jié)構(gòu)都是從其他圖像生成任務(wù)的網(wǎng)絡(luò)結(jié)構(gòu)延伸出來(lái)的,都不夠完善,存在很多缺點(diǎn)。針對(duì)欠曝光區(qū)域的細(xì)節(jié)恢復(fù)和圖像色彩偏移的問(wèn)題,本文提出一種基于pix2pix 網(wǎng)絡(luò)結(jié)構(gòu)的單曝光HDR 圖像生成方法。采用pix2pix 網(wǎng)絡(luò)結(jié)構(gòu),完成LDR 圖像至HDR 圖像的轉(zhuǎn)換,通過(guò)卷積之后反卷積的方式恢復(fù)圖像細(xì)節(jié)信息,并采用絕對(duì)誤差和余弦相似度函數(shù)結(jié)合的方式構(gòu)建損失函數(shù)對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。該方法能夠有效地恢復(fù)圖像陰暗區(qū)域的細(xì)節(jié)信息,并盡可能保留明亮區(qū)域的信息,同時(shí)避免圖像泛白的情況,能夠產(chǎn)生質(zhì)量較好的HDR圖像。
本文所提方法的整個(gè)處理流程如圖1所示,通過(guò)一一對(duì)應(yīng)的LDR 圖像和HDR 圖像對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,訓(xùn)練過(guò)程中網(wǎng)絡(luò)接收LDR 圖像作為輸入,通過(guò)網(wǎng)絡(luò)輸出與對(duì)數(shù)壓縮后的HDR圖像之間的差異優(yōu)化參數(shù)。訓(xùn)練完成后,輸入測(cè)試LDR 圖像,經(jīng)過(guò)網(wǎng)絡(luò)處理得到輸出,然后對(duì)網(wǎng)絡(luò)的輸出做一個(gè)指數(shù)變換就能得到最終的HDR圖像。
圖1 算法處理流程圖Fig.1 Algorithm processing flow chart
在圖像生成算法中使用最多的是自編碼網(wǎng)絡(luò)的結(jié)構(gòu),本文采用pix2pix網(wǎng)絡(luò)結(jié)構(gòu)[11]。它是自編碼網(wǎng)絡(luò)的結(jié)構(gòu)的一種,用以從給定的特征圖生成與真實(shí)環(huán)境相似的圖像。該結(jié)構(gòu)包含8 個(gè)卷積層和8 個(gè)反卷積層,每個(gè)卷積層之后都有一個(gè)歸一化層。其基本結(jié)構(gòu)如圖2所示。
圖2 網(wǎng)絡(luò)結(jié)構(gòu)Fig.2 Network structure
該網(wǎng)絡(luò)在卷積編碼階段,只進(jìn)行8 次卷積,每一層卷積都采用3×3的卷積核,卷積步長(zhǎng)設(shè)置2,每一卷積后圖像的尺寸都減小一半,最終將特征圖像的尺寸減小至一個(gè)像素值。然后采用卷積核大小為4×4 的反卷積對(duì)特征圖像進(jìn)行擴(kuò)展,逐步恢復(fù)矩陣尺寸,卷積步長(zhǎng)設(shè)置為2。每一次反卷積后都通過(guò)跳躍連接的方式與卷積過(guò)程對(duì)應(yīng)尺寸的特征層鏈接,此時(shí)特征層的寬度擴(kuò)展為原來(lái)的兩倍,然后再進(jìn)行下一次反卷積。
在常用圖像生成網(wǎng)絡(luò)結(jié)構(gòu)中,通常采用卷積然后池化的方式來(lái)進(jìn)行下采樣,然后再采用反卷積的方式上采樣,并且在上采樣的過(guò)程中需要使用1×1的卷積方式實(shí)現(xiàn)與跳躍連接層的線性結(jié)合,因此會(huì)增加網(wǎng)絡(luò)的深度,在圖像生成任務(wù)中,容易產(chǎn)生梯度消失的情況,使生成的圖像中存在偽像。如圖3 所示,(a)為一個(gè)存在偽像的原始U-Net 網(wǎng)絡(luò)結(jié)構(gòu)實(shí)驗(yàn)結(jié)果,(b)為該圖像偽像局部放大圖像。
圖3 原始U-Net實(shí)驗(yàn)結(jié)果Fig.3 Results of original U-Net experiment
而pix2pix網(wǎng)絡(luò)結(jié)構(gòu)在卷積過(guò)程中通過(guò)設(shè)置卷積步長(zhǎng)為2使特征圖尺寸每次減小一半,以此方式來(lái)代替池化過(guò)程,在上采樣過(guò)程中也只通過(guò)反卷積的方式來(lái)融合上一次反卷積的結(jié)果和跳躍連接層,不需要進(jìn)行1×1的卷積來(lái)進(jìn)行線性組合,以此簡(jiǎn)化了網(wǎng)絡(luò)結(jié)構(gòu),減少因網(wǎng)絡(luò)過(guò)深產(chǎn)生梯度消失的可能。并且該網(wǎng)絡(luò)在每一個(gè)卷積層和反卷積后都進(jìn)行標(biāo)準(zhǔn)歸一化,以增加訓(xùn)練速度,防止過(guò)擬合。
在自編碼網(wǎng)絡(luò)結(jié)構(gòu)中,通常采用ReLU函數(shù)作為激活函數(shù),ReLU 函數(shù)是一個(gè)分段線性函數(shù),如圖3 所示,主要進(jìn)行單側(cè)抑制操作,將輸入的所有負(fù)值都取0,正值保持不變。其表達(dá)式如下:
在HDR圖像生成任務(wù)中,經(jīng)過(guò)歸一化的圖像,特別是在像素值較低的區(qū)域,包含很多細(xì)微的變化。在卷積過(guò)程中這些值可能會(huì)使結(jié)果中包含負(fù)值,如果采用ReLU函數(shù),則可能直接損失掉該部分的特征信息。為了保留這部分信息,采用Leaky ReLU函數(shù)作為卷積過(guò)程中的損失函數(shù)。其表示式如下:
區(qū)別于ReLU 函數(shù),它通過(guò)乘以一個(gè)小值的方式,使負(fù)值部分具有一定的斜率,不直接映射為0,如圖4所示。將這部分負(fù)值保留下來(lái),能夠盡可能地保留圖像的細(xì)節(jié)。
圖4 激活函數(shù)對(duì)比圖Fig.4 Comparison chart of activation function
在反卷積過(guò)程中,除最后一層外仍然采用ReLU激活函數(shù),以保證輸出沒(méi)有負(fù)值。在最后一層采用Sigmoid激活函數(shù),將輸出的值轉(zhuǎn)換到[0,1]以?xún)?nèi)。
如圖5所示,為只使用ReLU激活函數(shù)和使用Leaky ReLU激活函數(shù)的結(jié)果對(duì)比??梢钥闯鲋皇褂肦eLU函數(shù)損失了天空黑暗區(qū)域的細(xì)節(jié),且產(chǎn)生了一些偽像。
圖5 不同激活函數(shù)結(jié)果對(duì)比Fig.5 Comparison of different activation functions
損失函數(shù)是用來(lái)估量模型的預(yù)測(cè)值與真實(shí)值的不一致程度,是一個(gè)非負(fù)實(shí)值函數(shù)。它是生成網(wǎng)絡(luò)模型學(xué)習(xí)優(yōu)化的必備條件。它定義的是生成網(wǎng)絡(luò)模型的學(xué)習(xí)目標(biāo)與學(xué)習(xí)模式。在圖像生成任務(wù)中通常需要根據(jù)不同的需求來(lái)設(shè)計(jì)不同的損失函數(shù),以保證有效性和提高收斂速度。
在圖像生成任務(wù)中,最常用的損失函數(shù)是均方誤差(mean square error,MSE)函數(shù),它是真實(shí)值與預(yù)測(cè)值的差值的平方然后求平均值,表示為:
而HDR 圖像包含很豐富的細(xì)節(jié)信息,像素之間的變化很小,歸一化之后這種差異會(huì)變得更小,特別是在圖像較為黑暗的區(qū)域,可能數(shù)據(jù)變化十分微小,如果采用MSE 函數(shù)則可能忽略掉這些細(xì)微的變化,會(huì)造成圖像在一定程度上的模糊。因此,本文采用一個(gè)絕對(duì)誤差來(lái)代替,直接計(jì)算真實(shí)值與預(yù)測(cè)值的差值的絕對(duì)值,公式如下:
但只是使用絕對(duì)誤差作為損失函數(shù),無(wú)法保證圖像顏色的準(zhǔn)確性。因此,本文引入余弦相似度來(lái)確保圖像顏色不發(fā)生改變。
余弦相似度是指用向量空間中兩個(gè)向量的夾角的余弦值作為衡量?jī)蓚€(gè)個(gè)體差異的標(biāo)準(zhǔn),余弦值越接近1就表示夾角越接近0度,也就是兩個(gè)向量越相似。其計(jì)算公式為:
將單幅LDR圖像擴(kuò)展為HDR圖像最關(guān)鍵的就是對(duì)圖像亮度的擴(kuò)展,因此可以通過(guò)計(jì)算圖像亮度再計(jì)算絕對(duì)誤差。最后將損失函數(shù)確定為:
式中,L表示圖像的亮度,通過(guò)圖像亮度計(jì)算公式得到:
λ為調(diào)整余弦相似度貢獻(xiàn)值的常數(shù)因子,本文取值為5;Ii表示圖像第i位置的R、G、B分量組成的向量;k為向量的個(gè)數(shù)。這樣可以確保每個(gè)像素指向三維RGB空間的同一方向,從而保證顏色的穩(wěn)定性,特別是對(duì)于HDR圖像中經(jīng)常出現(xiàn)的低亮度值。因?yàn)檫@些分量的微小變化對(duì)絕對(duì)損失沒(méi)有太大的貢獻(xiàn),但卻會(huì)引起顏色的明顯偏移。
如圖6 所示,為采用不同損失函數(shù)的對(duì)比實(shí)驗(yàn)結(jié)果。從圖中可以看出采用均方誤差損失函數(shù)時(shí)所得的圖像十分模糊,采用絕對(duì)損失函數(shù)時(shí)所得的圖像雖然比較清晰,但顏色與原始圖像相差較大,而采用本文損失函數(shù)所得的結(jié)果能夠在擴(kuò)展圖像亮度的同時(shí)保證圖像色彩的準(zhǔn)確性。
圖6 不同損失函數(shù)對(duì)比結(jié)果Fig.6 Comparison of different loss functions
1.4.1 數(shù)據(jù)獲取
訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò)需要大量的數(shù)據(jù)集,但目前公開(kāi)的用于HDR圖像生成的數(shù)據(jù)集大多數(shù)都是針對(duì)多曝光融合的,直接用于單曝光HDR 圖像生成還較少。這樣的數(shù)據(jù)集通常包含從欠曝光到過(guò)曝光的一系列圖像,本文通過(guò)對(duì)Fairchild[12]、Kalantari[13]、Cai[14]等提供的多曝光圖像數(shù)據(jù)集進(jìn)行篩選,從中選取明暗差異較大,但包含大部分場(chǎng)景信息的圖像作為重建HDR 圖像的輸入,最終整理出600對(duì)LDR-HDR圖像對(duì)。
在其他圖像處理任務(wù)中,為了獲取更多的數(shù)據(jù),通常會(huì)采用對(duì)圖像進(jìn)行隨機(jī)色彩、亮度、旋轉(zhuǎn)、鏡像等方式進(jìn)行數(shù)據(jù)集的擴(kuò)充。在HDR 圖像生成任務(wù)中,生成的圖像會(huì)受輸入圖像色彩和亮度的影響,如果圖像色彩和亮度偏移過(guò)多,可能會(huì)造成在訓(xùn)練時(shí)模型不穩(wěn)定無(wú)法收斂的情況。因此本文只通過(guò)旋轉(zhuǎn)和鏡像的方式擴(kuò)充數(shù)據(jù)集,對(duì)圖像進(jìn)行隨機(jī)角度的旋轉(zhuǎn)與水平和垂直方向的鏡像。
卷積神經(jīng)網(wǎng)絡(luò)模型的輸入通常是固定,而人們所獲得的圖像的大小往往是不統(tǒng)一的,因此還需要將圖像裁剪至人們需要的大小。考慮到網(wǎng)絡(luò)訓(xùn)練效率,將訓(xùn)練圖像的大小設(shè)置為256×256。圖像經(jīng)過(guò)旋轉(zhuǎn)后周?chē)赡軙?huì)出現(xiàn)黑邊,如果直接進(jìn)行裁剪可能會(huì)剪切到黑邊部分,這樣不利于網(wǎng)絡(luò)的學(xué)習(xí),因此對(duì)這樣的圖像采用雙線性差值法進(jìn)行填充,保證旋轉(zhuǎn)后的圖像沒(méi)有黑邊,然后再進(jìn)行隨機(jī)位置裁剪。
1.4.2 圖像歸一化
將圖像作為神經(jīng)網(wǎng)絡(luò)的輸入還需要進(jìn)行歸一化操作,將其像素值轉(zhuǎn)化到[0,1]以?xún)?nèi)。通常普通的LDR 圖像包含255 個(gè)灰度級(jí),歸一化時(shí)將像素值除以255 就可以。但在HDR 圖像中,其儲(chǔ)存類(lèi)型可能包含的數(shù)據(jù)范圍十分廣泛,無(wú)法采用此方式進(jìn)行歸一化。因此,本文直接用圖像像素值除以該圖像像素中的最大值進(jìn)行歸一化操作,計(jì)算公式如下:
采用這種方式歸一化,能夠使LDR 圖像和HDR 圖像像素值最大的地方歸一化后值都為1。
1.4.3 HDR圖像壓縮
HDR圖像包含的細(xì)節(jié)層次豐富,數(shù)據(jù)間差異微小,與LDR 圖像的數(shù)據(jù)類(lèi)型不同,通常都采用高精度數(shù)據(jù)類(lèi)型儲(chǔ)存。直接通過(guò)將LDR圖像轉(zhuǎn)換成HDR圖像是十分困難的,網(wǎng)絡(luò)難以分辨差異。因此,本文對(duì)HDR圖像進(jìn)行一個(gè)可逆的對(duì)數(shù)變換,將數(shù)據(jù)進(jìn)行轉(zhuǎn)化,方便網(wǎng)絡(luò)學(xué)習(xí)。計(jì)算公式如下:
式中,μ代表壓縮量,通常取值為5 000;H是原始HDR圖像。在網(wǎng)絡(luò)訓(xùn)練完成后,對(duì)網(wǎng)絡(luò)的輸出結(jié)果做該函數(shù)的反變換就可以得到最終的HDR圖像。
1.4.4 訓(xùn)練環(huán)境
整個(gè)模型使用的基本環(huán)境為Python3.6.5、TensorFlowgpu1.10.0、OpenCV4.2.0、numpy1.14、cudnn7.6.5、cuda9.0。在模型的訓(xùn)練過(guò)程中,使用Adam反向傳播算法來(lái)優(yōu)化參數(shù),將初始學(xué)習(xí)率設(shè)置為0.000 1,指數(shù)衰減速率分別設(shè)置為0.99 和0.999。將訓(xùn)練的batchsize 設(shè)置為8。在GPU 為NVIDIA RTX2080Ti 的計(jì)算機(jī)上訓(xùn)練100 萬(wàn)次得到結(jié)果,訓(xùn)練時(shí)間約為2天。
現(xiàn)實(shí)世界中場(chǎng)景信息復(fù)雜,包含的信息多種多樣,面對(duì)不同的場(chǎng)景,算法預(yù)測(cè)的結(jié)果可能會(huì)出現(xiàn)差異。本文通過(guò)對(duì)不同場(chǎng)景的圖像進(jìn)行實(shí)驗(yàn),并與Eilertsen 算法[7]和Endo 算法[8]進(jìn)行對(duì)比,并從主觀感受和客觀指標(biāo)兩方面對(duì)算法性能進(jìn)行分析。
HDR 圖像與普通圖像不同,它擁有更大的動(dòng)態(tài)范圍和更豐富的細(xì)節(jié)信息,雖然可以通過(guò)色調(diào)映射的方式在普通的顯示器上進(jìn)行顯示,但很多HDR 圖像的差異信息在進(jìn)行壓縮后會(huì)弱化,使肉眼無(wú)法分辨。同時(shí),主觀視覺(jué)感受可能受到多種因素的影響,使不同的人有不同的視覺(jué)感受。因此需要一些客觀的評(píng)價(jià)指標(biāo)來(lái)進(jìn)行對(duì)比分析。
本文采用常用的圖像質(zhì)量評(píng)價(jià)指標(biāo)峰值信噪比(peak signal to noise ratio,PSNR)[15]、結(jié)構(gòu)相似度函數(shù)(structural similarity index measure,SSIM)[16]以及專(zhuān)門(mén)用于HDR圖像質(zhì)量評(píng)價(jià)的可見(jiàn)差異預(yù)測(cè)器(visible differences predictor,VDP)[17]對(duì)算法結(jié)果進(jìn)行測(cè)評(píng)。其中PSNR 與SSIM 由于數(shù)據(jù)類(lèi)型的原因,不適合直接使用HDR圖像進(jìn)行對(duì)比,使用這兩個(gè)指標(biāo)時(shí),將算法生成的HDR 圖像和標(biāo)準(zhǔn)的HDR 圖像都經(jīng)過(guò)色調(diào)映射之后再進(jìn)行對(duì)比。
PSNR 是一種基于誤差敏感的圖像質(zhì)量評(píng)價(jià),只計(jì)算圖像對(duì)應(yīng)像素點(diǎn)的差異,不考慮人眼的視覺(jué)特性,而人眼對(duì)圖像的感知會(huì)受亮度對(duì)比差異和臨近域的影響,因此PSNR 的結(jié)果經(jīng)常會(huì)出現(xiàn)與人眼主觀感受不一致的情況。PSNR 通過(guò)簡(jiǎn)單的均方誤差進(jìn)行定義,單位為dB,表示為:
式中,MAX_I表示測(cè)試圖像像素的最大值;I為測(cè)試圖像;I′為參考圖像;M和N表示圖像的寬和高。
SSIM的理論基礎(chǔ)是人眼視覺(jué)系統(tǒng)場(chǎng)景中結(jié)構(gòu)的自適應(yīng)調(diào)整,通過(guò)比較圖像結(jié)構(gòu)信息的改變來(lái)判斷圖像相似程度,從而得到客觀的質(zhì)量評(píng)價(jià)。SSIM 衡量的是圖像亮度、對(duì)比度和結(jié)構(gòu)變化三個(gè)量的復(fù)合效果,簡(jiǎn)化計(jì)算公式為:
式中,μx和μy分別表示測(cè)試圖像和標(biāo)準(zhǔn)圖像的均值;σx和σy是標(biāo)準(zhǔn)偏差;σxy是兩個(gè)圖像的協(xié)方差;c1、c2分別為小常數(shù),以避免分母為0而出現(xiàn)錯(cuò)誤。SSIM函數(shù)計(jì)算的結(jié)果在[0,1]之間,兩幅圖像越相似,計(jì)算結(jié)果就越接近于1。
HDR-VDP-2是基于人類(lèi)視覺(jué)差異來(lái)評(píng)估兩幅圖像之間的相似性。該方法認(rèn)為兩幅圖像的差異是由不同的噪聲輸入引起的,首先模擬人眼的光學(xué)特性和視網(wǎng)膜通路,再通過(guò)噪聲模擬以及多尺度分解算法模擬光在人眼內(nèi)部的散射過(guò)程,以此來(lái)模擬人眼對(duì)場(chǎng)景動(dòng)態(tài)范圍的處理過(guò)程。對(duì)結(jié)果打分,最高值為100,表示兩幅圖像完全相同。HDR-VDP-2 是專(zhuān)門(mén)針對(duì)HDR 圖像質(zhì)量評(píng)價(jià)的標(biāo)準(zhǔn),注重于衡量圖像的動(dòng)態(tài)范圍特征,對(duì)圖像的其他特征的改變不能很好體現(xiàn),如色度和結(jié)構(gòu)特征等。雖然它存在一定的局限性,但依舊被廣泛應(yīng)用于HDR 圖像質(zhì)量的評(píng)價(jià)。
為了證明本文在損失函數(shù)、網(wǎng)絡(luò)結(jié)構(gòu)上的改進(jìn)帶來(lái)的性能增益,進(jìn)行如下消融實(shí)驗(yàn)。
表1所示為采用不同網(wǎng)絡(luò)結(jié)構(gòu)訓(xùn)練100萬(wàn)次所需的訓(xùn)練時(shí)間。從表中可以看出原始U 型神經(jīng)網(wǎng)絡(luò)所需的訓(xùn)練時(shí)間最久,遠(yuǎn)超過(guò)pix2pix網(wǎng)絡(luò),而采用Leaky ReLU函數(shù)會(huì)在一定程度上增加訓(xùn)練時(shí)間,大約每增加1 000次訓(xùn)練平均增加2 s的時(shí)間。
表1 不同網(wǎng)絡(luò)訓(xùn)練時(shí)間對(duì)比Table 1 Comparison of different network training time
表2所示為只采用ReLU 激活函數(shù)和Leaky ReLU激活函數(shù)實(shí)驗(yàn)結(jié)果的客觀指標(biāo)對(duì)比結(jié)果。從表中可以看出使用LeakyReLU激活函數(shù)后,在PSNR值、SSIM值和HDR-VDP上都有更好的表現(xiàn)。
表2 不同激活函數(shù)對(duì)比Table 2 Comparison of different activation functions
表3所示為采用不同損失函數(shù)實(shí)驗(yàn)結(jié)果的客觀指標(biāo)對(duì)比。從表中可以看出只使用均方誤差損失函數(shù)的結(jié)果并不理想,而使用絕對(duì)誤差損失函數(shù)在SSIM 值和HDR-VDP 上的表現(xiàn)都優(yōu)于均方誤差函數(shù),但PSNR 值卻較低。而使用絕對(duì)誤差結(jié)合余弦相似度作為損失函數(shù)所得的結(jié)果在PSNR值、SSIM值和HDR-VDP上都有明顯的提高。
表3 不同的損失函數(shù)對(duì)比Table 3 Comparison of different loss functions
同時(shí)將本文結(jié)果與現(xiàn)有兩種較經(jīng)典的基于卷積神經(jīng)網(wǎng)絡(luò)算法的實(shí)驗(yàn)結(jié)果進(jìn)行比較分析。
圖7展示了一個(gè)有建筑物背光面的場(chǎng)景的實(shí)驗(yàn)結(jié)果(示例1)。其中圖(a)為原始LDR圖像,圖(b)為Endo算法結(jié)果,圖(c)為Eilertsen 算法結(jié)果,圖(d)為本文算法結(jié)果。圖中對(duì)欠曝光區(qū)域和過(guò)曝光區(qū)域都進(jìn)行了標(biāo)注。通過(guò)對(duì)比可以看出,Endo 算法能夠較好地恢復(fù)圖像的欠曝光區(qū)域,但圖像整體存在一個(gè)偏白的情況。Eilertsen算法結(jié)果圖像顏色較為鮮亮,但欠曝光區(qū)域信息恢復(fù)不足,且圖像過(guò)曝光區(qū)域存在一定的細(xì)節(jié)損失。本文算法產(chǎn)生的結(jié)果圖像顏色鮮亮并且能夠較好地恢復(fù)圖像欠曝光區(qū)域的細(xì)節(jié)信息,同時(shí)較好地保留過(guò)曝光區(qū)域的信息。
表4為圖7對(duì)應(yīng)的客觀評(píng)價(jià)指標(biāo)的計(jì)算結(jié)果。從表中可以看出本文算在PSNR和HDR-VDR指標(biāo)上高于其他兩種算法,SSIM結(jié)果高于Endo算法,略低于Eilertsen算法,整體表現(xiàn)較好。
圖7 示例1實(shí)驗(yàn)結(jié)果對(duì)比圖Fig.7 Comparison of experimental results of example 1
表4 示例1客觀評(píng)標(biāo)指標(biāo)對(duì)比Table 4 Comparison of objective evaluation indexes of example 1
如圖8所示,展示的是一個(gè)既具有室外明亮區(qū)域又具有室內(nèi)陰暗區(qū)域的場(chǎng)景圖像(示例2)。從圖中可以看出三種算法都能夠較好地恢復(fù)圖像中欠曝光區(qū)域的細(xì)節(jié)信息,但在圖像中的過(guò)曝光區(qū)域Endo算法和Eilertsen算法都存在顏色偏白的現(xiàn)象,視覺(jué)效果不如原始LDR圖像。本文算法不僅能夠較好地恢復(fù)欠曝光區(qū)域細(xì)節(jié)信息,還能較好地還原圖像色彩信息,產(chǎn)生顏色鮮亮的HDR圖像。
圖8 示例2實(shí)驗(yàn)結(jié)果對(duì)比圖Fig.8 Comparison of experimental results of example 2
表5為圖8所對(duì)應(yīng)的客觀評(píng)價(jià)指標(biāo)的計(jì)算結(jié)果。從表中可以看出本文算法結(jié)果的PSNR、SSIM、HDR-VDP值均高于其他兩種算法。
表5 示例2客觀評(píng)標(biāo)指標(biāo)對(duì)比Table 5 Comparison of objective evaluation indexes of example 2
為了體現(xiàn)算法的有效性,本文還統(tǒng)計(jì)了100幅測(cè)試圖像的PSNR、SSIM、HDR-VDP 結(jié)果的平均值,本文算法的PSNR平均值為25.564 5 dB,SSIM平均值為0.919 3,HDR-VDP 平均值為70.150 2。Endo 算法的PSNR 平均值為20.452 4 dB,SSIM平均值為0.908 0,HDR-VDP平均值為63.944 9。Eilertsen算法的PSNR平均值為20.733 1 dB,SSIM 平均值為0.842 4,HDR-VDP 平均值為67.506 1。本文算法的結(jié)果均高于其他幾種算法。
針對(duì)HDR圖像生成過(guò)程中欠曝光區(qū)域的細(xì)節(jié)恢復(fù)和圖像色彩偏移的問(wèn)題,本文提出一種使用pix2pix 網(wǎng)絡(luò)結(jié)構(gòu)生成單曝光HDR 圖像的生成結(jié)構(gòu),相比于普通的圖像生成網(wǎng)絡(luò)結(jié)構(gòu),pix2pix結(jié)構(gòu)取消了池化層,簡(jiǎn)化了網(wǎng)絡(luò)結(jié)構(gòu),在卷積過(guò)程中采用Leaky ReLU 激活函數(shù),能夠有效地保留圖像的細(xì)節(jié)信息。為保證圖像的色彩不發(fā)生偏移,采用絕對(duì)誤差和余弦相似度函數(shù)結(jié)合的方式構(gòu)建損失函數(shù),選取了明暗差異較大的圖像構(gòu)建數(shù)據(jù)集對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。然后通過(guò)不同場(chǎng)景的圖像進(jìn)行實(shí)驗(yàn),并與其他幾種算法做了比較。通過(guò)對(duì)比分析,本文算法能夠在擴(kuò)展圖像動(dòng)態(tài)范圍的同時(shí)有效地恢復(fù)圖像陰暗區(qū)域的細(xì)節(jié)信息,并盡可能保留明亮區(qū)域的信息,同時(shí)避免圖像泛白的情況,但由于網(wǎng)絡(luò)結(jié)構(gòu)的限制,對(duì)于一些特殊的圖像依舊會(huì)出現(xiàn)偽像的情況。