本發(fā)明涉及圖像分析領(lǐng)域,尤其是涉及了一種基于生成對抗網(wǎng)絡(luò)的視覺顯著性預(yù)測方法。
背景技術(shù):
人類視覺感知系統(tǒng)對外界信息的處理加工過程是選擇性的篩選,而不是全部接收,這一過程就是視覺顯著性。信息技術(shù)的快速發(fā)展使得成像設(shè)備技術(shù)的發(fā)展越來越迅速,人們每天所接觸的圖像數(shù)據(jù)海量提升,因此視覺顯著性預(yù)測方法的研究顯得尤為重要,當(dāng)前其較為成熟的應(yīng)用主要有:場景渲染,圖像壓縮,主動視覺以及圖像質(zhì)量評估。然而傳統(tǒng)的圖像分析技術(shù)是針對圖像整體信息進行全局處理,而對圖像信息的處理沒有優(yōu)先級之分,計算比較復(fù)雜,效率低下。因此,如何快速篩選處理圖像的目標(biāo)區(qū)域和摒棄其他無關(guān)信息成為圖像處理領(lǐng)域的一大挑戰(zhàn)。
本發(fā)明提出了一種基于生成對抗網(wǎng)絡(luò)的視覺顯著性預(yù)測方法,基于兩個深層卷積神經(jīng)網(wǎng)絡(luò)(DCNN)模塊的顯著生成對抗網(wǎng)絡(luò)(SalGAN)架構(gòu),包括發(fā)生器和鑒別器,其組合旨在預(yù)測給定輸入圖像的視覺顯著圖;SalGAN中的過濾器權(quán)重通過將內(nèi)容損失和對抗性損失組合而導(dǎo)致的感知損失進行訓(xùn)練。本發(fā)明中的損失函數(shù)是來自鑒別器的誤差和相對于標(biāo)定好的真實數(shù)據(jù)的交叉熵的組合,提高了對抗訓(xùn)練的穩(wěn)定性和收斂率;與之前單獨的交叉熵的進一步訓(xùn)練相比,對抗訓(xùn)練改善了其性能,使其更加快速高效。
技術(shù)實現(xiàn)要素:
針對穩(wěn)定性不高的問題,本發(fā)明的目的在于提供一種基于生成對抗網(wǎng)絡(luò)的視覺顯著性預(yù)測方法,基于兩個深層卷積神經(jīng)網(wǎng)絡(luò)(DCNN)模塊的顯著生成對抗網(wǎng)絡(luò)(SalGAN)架構(gòu),包括發(fā)生器和鑒別器,其組合旨在預(yù)測給定輸入圖像的視覺顯著圖;SalGAN中的過濾器權(quán)重通過將內(nèi)容損失和對抗性損失組合而導(dǎo)致的感知損失進行訓(xùn)練。
為解決上述問題,本發(fā)明提供一種基于生成對抗網(wǎng)絡(luò)的視覺顯著性預(yù)測方法,其主要內(nèi)容包括:
(一)基于兩個深層卷積神經(jīng)網(wǎng)絡(luò)(DCNN)模塊的顯著生成對抗網(wǎng)絡(luò)(SalGAN)架構(gòu);
(二)訓(xùn)練。
其中,所述的一種基于生成對抗網(wǎng)絡(luò)的視覺顯著性預(yù)測方法,對深層卷積神經(jīng)網(wǎng)絡(luò)(DCNN)的對抗訓(xùn)練可以實現(xiàn)狀態(tài)性能與簡單的編碼器—解碼器架構(gòu);基于二進制交叉熵(BCE)的內(nèi)容損失顯示,對于初始化發(fā)生器都是有效的,并且作為穩(wěn)定對抗訓(xùn)練的正則化項;同時,與單獨交叉熵的進一步訓(xùn)練相比,對抗訓(xùn)練改善了所有條形顯性度量。
其中,所述的基于兩個深層卷積神經(jīng)網(wǎng)絡(luò)(DCNN)模塊的顯著生成對抗網(wǎng)絡(luò)(SalGAN)架構(gòu),包括發(fā)生器和鑒別器,其組合旨在預(yù)測給定輸入圖像的視覺顯著圖。
進一步地,所述的發(fā)生器,SalGAN遵循卷積編碼器—解碼器架構(gòu),其中編碼器部分包括減小特征圖的最大池層,而解碼器部分使用上采樣層,卷積濾波器構(gòu)建與輸入具有相同分辨率的輸出;
網(wǎng)絡(luò)的編碼器部分在結(jié)構(gòu)上與VGG-16相同,省略了最后的匯集和完全連接層;網(wǎng)絡(luò)使用在對象分類的ImageNet數(shù)據(jù)集上訓(xùn)練的VGG-16模型權(quán)重來初始化;只有VGG-16中的最后兩組卷積層在顯著性預(yù)測的訓(xùn)練期間被修改,而較早的層相對于原始VGG-16模型保持固定;在訓(xùn)練期間固定權(quán)重節(jié)省計算資源;
解碼器體系結(jié)構(gòu)以與編碼器相同的方式構(gòu)造,但是層的順序顛倒,并且池層由上采樣層代替;在所有卷積層中使用非線性修正線性單元(ReLU),并且最終1×1卷積層與S型非線性添加,產(chǎn)生顯著圖;解碼器的權(quán)重被隨機初始化。
進一步地,所述的鑒別器,網(wǎng)絡(luò)由六個3×3內(nèi)核卷積和三個池層組成,后面是三個完全連接的層;卷積層都使用ReLU激活,而完全連接層使用tanh激活,除了最后一層,其它使用S型激活。
其中,所述的訓(xùn)練,SalGAN中的過濾器權(quán)重已經(jīng)通過將內(nèi)容和對抗性損失組合而導(dǎo)致的感知損失進行訓(xùn)練;內(nèi)容損失遵循經(jīng)典方法,其中預(yù)測顯著性圖與來自標(biāo)定好的真實數(shù)據(jù)相應(yīng)顯著性圖像在像素方面相比;對抗損失取決于鑒別器,相對于生成的顯著圖的實際/合成預(yù)測。
進一步地,所述的內(nèi)容損失,以每個像素為基礎(chǔ)計算內(nèi)容損失,其中將預(yù)測顯著圖的每個值與來自標(biāo)定好的真實數(shù)據(jù)圖的對應(yīng)對等點進行比較;給定圖像I的尺寸N=W×H,將顯著圖S表示為概率的向量,其中Sj∈RN是像素Ij被固定的概率;在預(yù)測顯著性圖和其對應(yīng)的標(biāo)定好的真實數(shù)據(jù)S之間定義內(nèi)容損失函數(shù)
首先考慮的內(nèi)容損失是均方差(MSE)或歐幾里得損失,定義為:
MSE被用作基線參考;MSE對應(yīng)于計算預(yù)測顯著性和標(biāo)定好的真實數(shù)據(jù)之間的歐幾里得距離;
標(biāo)定好的真實數(shù)據(jù)顯著圖被歸一化,使得每個值在范圍[0,1]內(nèi);因此,顯著性值可以被解釋為觀察者所關(guān)注的特定像素概率的估計;因此,在最終層上使用softmax,在預(yù)測上誘導(dǎo)多項分布;可以考慮多于單個像素,使得更適合于將每個預(yù)測值,獨立于其他預(yù)測值;因此,對最終層中的每個輸出應(yīng)用元素方式的S形,使得像素方式的預(yù)測可以被認(rèn)為是獨立的二進制隨機變量的概率;在這種設(shè)置中的適當(dāng)損失是二進制交叉熵,是所有像素上的各個二進制交叉熵(BCE)的平均值:
如上式所示。
進一步地,所述的對抗性損失,生成式對抗網(wǎng)絡(luò)(GAN)通常用于生成具有現(xiàn)實統(tǒng)計特性的圖像;這是同時擬合兩個參數(shù)函數(shù);發(fā)生器的這些函數(shù)中的第一個被訓(xùn)練函數(shù),將樣本從簡單分布(例如高斯)變換成更復(fù)雜分布(例如自然圖像)的樣本;第二函數(shù),即鑒別器,被訓(xùn)練來區(qū)分樣本與真實分布和生成的樣本;訓(xùn)練在使用生成的和實際樣本訓(xùn)練鑒別器和訓(xùn)練發(fā)生器之間交替進行,通過保持鑒別器權(quán)重恒定,并且通過鑒別器反向傳播誤差來更新發(fā)生器權(quán)重。
進一步地,所述的顯著性預(yù)測問題,首先,目標(biāo)是擬合確定性函數(shù),從圖像產(chǎn)生逼真的顯著性值,而不是來自隨機噪聲的真實圖像;因此,對發(fā)生器的輸入不是隨機噪聲,而是圖像;接著,顯著性圖對應(yīng)的圖像對于評價質(zhì)量是必要的;因此,圖像和顯著圖作為鑒別器的輸入;最后,當(dāng)使用生成式對抗網(wǎng)絡(luò)來生成逼真的圖像時,通常沒有標(biāo)定好的真實數(shù)據(jù)來比較;然而,相應(yīng)的標(biāo)定好的真實數(shù)據(jù)顯著圖是可用的;當(dāng)更新生成函數(shù)的參數(shù)時,使用損失函數(shù)是鑒別器的誤差和相對于標(biāo)定好的真實數(shù)據(jù)的交叉熵的組合,提高了對抗訓(xùn)練的穩(wěn)定性和收斂率;在對抗訓(xùn)練期間發(fā)生器的最終損失函數(shù)可以被公式化為:
其中,是fool鑒別器的概率,當(dāng)發(fā)生鑒別器的機會較低時,與發(fā)生器相關(guān)聯(lián)的損耗將增加;其中,超參數(shù)α=0.05;在鑒別器的訓(xùn)練期間,沒有內(nèi)容損失可用,并且對抗項的符號將被切換。
進一步地,所述的訓(xùn)練期間,首先通過僅使用BCE訓(xùn)練15個時期來引導(dǎo)發(fā)生器函數(shù),BCE是相對于下采樣輸出和標(biāo)定好的真實數(shù)據(jù)顯著性計算的;之后,添加鑒別器并開始對抗訓(xùn)練,鑒別器網(wǎng)絡(luò)的輸入是大小為256×192×4,包含源圖像通道和(預(yù)測或標(biāo)定好的真實數(shù)據(jù))顯著性;
使用批次大小為32的SALICON訓(xùn)練集在10,000個圖像上訓(xùn)練網(wǎng)絡(luò),這是給定硬件的內(nèi)存限制下可以使用的最大批量;在對抗訓(xùn)練期間,在每次迭代(批處理)之后交替發(fā)生器和鑒別器的訓(xùn)練;當(dāng)訓(xùn)練發(fā)生器和鑒別器(λ=1×10-4)時,使用L2加權(quán)正則化(即重量衰減);使用AdaGrad進行優(yōu)化,初始學(xué)習(xí)率為3×10-4。
附圖說明
圖1是本發(fā)明一種基于生成對抗網(wǎng)絡(luò)的視覺顯著性預(yù)測方法的系統(tǒng)流程圖。
圖2是本發(fā)明一種基于生成對抗網(wǎng)絡(luò)的視覺顯著性預(yù)測方法的顯著圖生成的示例。
圖3是本發(fā)明一種基于生成對抗網(wǎng)絡(luò)的視覺顯著性預(yù)測方法的顯著圖估計系統(tǒng)的總體架構(gòu)。
具體實施方式
需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互結(jié)合,下面結(jié)合附圖和具體實施例對本發(fā)明作進一步詳細(xì)說明。
圖1是本發(fā)明一種基于生成對抗網(wǎng)絡(luò)的視覺顯著性預(yù)測方法的系統(tǒng)流程圖。主要包括基于兩個深層卷積神經(jīng)網(wǎng)絡(luò)(DCNN)模塊的顯著生成對抗網(wǎng)絡(luò)(SalGAN)架構(gòu)和訓(xùn)練。
SalGAN中的過濾器權(quán)重已經(jīng)通過將內(nèi)容和對抗性損失組合而導(dǎo)致的感知損失進行訓(xùn)練;內(nèi)容損失遵循經(jīng)典方法,其中預(yù)測顯著性圖與來自標(biāo)定好的真實數(shù)據(jù)相應(yīng)顯著性圖像在像素方面相比;對抗損失取決于鑒別器,相對于生成的顯著圖的實際/合成預(yù)測。
其中,以每個像素為基礎(chǔ)計算內(nèi)容損失,其中將預(yù)測顯著圖的每個值與來自標(biāo)定好的真實數(shù)據(jù)圖的對應(yīng)對等點進行比較;給定圖像I的尺寸N=W×H,將顯著圖S表示為概率的向量,其中Sj∈RN是像素Ij被固定的概率;在預(yù)測顯著性圖和其對應(yīng)的標(biāo)定好的真實數(shù)據(jù)S之間定義內(nèi)容損失函數(shù)
首先考慮的內(nèi)容損失是均方差(MSE)或歐幾里得損失,定義為:
MSE被用作基線參考;MSE對應(yīng)于計算預(yù)測顯著性和標(biāo)定好的真實數(shù)據(jù)之間的歐幾里得距離;
標(biāo)定好的真實數(shù)據(jù)顯著圖被歸一化,使得每個值在范圍[0,1]內(nèi);因此,顯著性值可以被解釋為觀察者所關(guān)注的特定像素概率的估計;因此,在最終層上使用softmax,在預(yù)測上誘導(dǎo)多項分布;可以考慮多于單個像素,使得更適合于將每個預(yù)測值,獨立于其他預(yù)測值;因此,對最終層中的每個輸出應(yīng)用元素方式的S形,使得像素方式的預(yù)測可以被認(rèn)為是獨立的二進制隨機變量的概率;在這種設(shè)置中的適當(dāng)損失是二進制交叉熵,是所有像素上的各個二進制交叉熵(BCE)的平均值:
如上式所示。
其中,對抗性損失,生成式對抗網(wǎng)絡(luò)(GAN)通常用于生成具有現(xiàn)實統(tǒng)計特性的圖像;這是同時擬合兩個參數(shù)函數(shù);發(fā)生器的這些函數(shù)中的第一個被訓(xùn)練函數(shù),將樣本從簡單分布(例如高斯)變換成更復(fù)雜分布(例如自然圖像)的樣本;第二函數(shù),即鑒別器,被訓(xùn)練來區(qū)分樣本與真實分布和生成的樣本;訓(xùn)練在使用生成的和實際樣本訓(xùn)練鑒別器和訓(xùn)練發(fā)生器之間交替進行,通過保持鑒別器權(quán)重恒定,并且通過鑒別器反向傳播誤差來更新發(fā)生器權(quán)重。
關(guān)于顯著性預(yù)測問題,首先,目標(biāo)是擬合確定性函數(shù),從圖像產(chǎn)生逼真的顯著性值,而不是來自隨機噪聲的真實圖像;因此,對發(fā)生器的輸入不是隨機噪聲,而是圖像;接著,顯著性圖對應(yīng)的圖像對于評價質(zhì)量是必要的;因此,圖像和顯著圖作為鑒別器的輸入;最后,當(dāng)使用生成式對抗網(wǎng)絡(luò)來生成逼真的圖像時,通常沒有標(biāo)定好的真實數(shù)據(jù)來比較;然而,相應(yīng)的標(biāo)定好的真實數(shù)據(jù)顯著圖是可用的;當(dāng)更新生成函數(shù)的參數(shù)時,使用損失函數(shù)是鑒別器的誤差和相對于標(biāo)定好的真實數(shù)據(jù)的交叉熵的組合,提高了對抗訓(xùn)練的穩(wěn)定性和收斂率;在對抗訓(xùn)練期間發(fā)生器的最終損失函數(shù)可以被公式化為:
其中,是fool鑒別器的概率,當(dāng)發(fā)生鑒別器的機會較低時,與發(fā)生器相關(guān)聯(lián)的損耗將增加;其中,超參數(shù)α=0.05;在鑒別器的訓(xùn)練期間,沒有內(nèi)容損失可用,并且對抗項的符號將被切換。
訓(xùn)練期間,首先通過僅使用BCE訓(xùn)練15個時期來引導(dǎo)發(fā)生器函數(shù),BCE是相對于下采樣輸出和標(biāo)定好的真實數(shù)據(jù)顯著性計算的;之后,添加鑒別器并開始對抗訓(xùn)練,鑒別器網(wǎng)絡(luò)的輸入是大小為256×192×4,包含源圖像通道和(預(yù)測或標(biāo)定好的真實數(shù)據(jù))顯著性;
使用批次大小為32的SALICON訓(xùn)練集在10,000個圖像上訓(xùn)練網(wǎng)絡(luò),這是給定硬件的內(nèi)存限制下可以使用的最大批量;在對抗訓(xùn)練期間,在每次迭代(批處理)之后交替發(fā)生器和鑒別器的訓(xùn)練;當(dāng)訓(xùn)練發(fā)生器和鑒別器(λ=1×10-4)時,使用L2加權(quán)正則化(即重量衰減);使用AdaGrad進行優(yōu)化,初始學(xué)習(xí)率為3×10-4。
圖2是本發(fā)明一種基于生成對抗網(wǎng)絡(luò)的視覺顯著性預(yù)測方法的顯著圖生成的示例。對深層卷積神經(jīng)網(wǎng)絡(luò)(DCNN)的對抗訓(xùn)練可以實現(xiàn)狀態(tài)性能與簡單的編碼器—解碼器架構(gòu);基于二進制交叉熵(BCE)的內(nèi)容損失顯示,對于初始化發(fā)生器都是有效的,并且作為穩(wěn)定對抗訓(xùn)練的正則化項;同時,與單獨交叉熵的進一步訓(xùn)練相比,對抗訓(xùn)練改善了所有條形顯性度量。
圖3是本發(fā)明一種基于生成對抗網(wǎng)絡(luò)的視覺顯著性預(yù)測方法的顯著圖估計系統(tǒng)的總體架構(gòu)。基于兩個深層卷積神經(jīng)網(wǎng)絡(luò)(DCNN)模塊的顯著生成對抗網(wǎng)絡(luò)(SalGAN)架構(gòu)包括發(fā)生器和鑒別器,其組合旨在預(yù)測給定輸入圖像的視覺顯著圖。
其中,發(fā)生器,SalGAN遵循卷積編碼器—解碼器架構(gòu),其中編碼器部分包括減小特征圖的最大池層,而解碼器部分使用上采樣層,卷積濾波器構(gòu)建與輸入具有相同分辨率的輸出;
網(wǎng)絡(luò)的編碼器部分在結(jié)構(gòu)上與VGG-16相同,省略了最后的匯集和完全連接層;網(wǎng)絡(luò)使用在對象分類的ImageNet數(shù)據(jù)集上訓(xùn)練的VGG-16模型權(quán)重來初始化;只有VGG-16中的最后兩組卷積層在顯著性預(yù)測的訓(xùn)練期間被修改,而較早的層相對于原始VGG-16模型保持固定;在訓(xùn)練期間固定權(quán)重節(jié)省計算資源;
解碼器體系結(jié)構(gòu)以與編碼器相同的方式構(gòu)造,但是層的順序顛倒,并且池層由上采樣層代替;在所有卷積層中使用非線性修正線性單元(ReLU),并且最終1×1卷積層與S型非線性添加,產(chǎn)生顯著圖;解碼器的權(quán)重被隨機初始化。
其中,鑒別器,網(wǎng)絡(luò)由六個3×3內(nèi)核卷積和三個池層組成,后面是三個完全連接的層;卷積層都使用ReLU激活,而完全連接層使用tanh激活,除了最后一層,其它使用S型激活。
對于本領(lǐng)域技術(shù)人員,本發(fā)明不限制于上述實施例的細(xì)節(jié),在不背離本發(fā)明的精神和范圍的情況下,能夠以其他具體形式實現(xiàn)本發(fā)明。此外,本領(lǐng)域的技術(shù)人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā)明的精神和范圍,這些改進和變型也應(yīng)視為本發(fā)明的保護范圍。因此,所附權(quán)利要求意欲解釋為包括優(yōu)選實施例以及落入本發(fā)明范圍的所有變更和修改。