本發(fā)明涉及圖像重建領(lǐng)域,尤其是涉及了一種基于衰減網(wǎng)絡(luò)通過滑動屬性操縱圖像的方法。
背景技術(shù):
圖像重建是指根據(jù)對物體的探測獲取的數(shù)據(jù)來重新建立圖像,而用于重建圖像的數(shù)據(jù)一般是分時、分步取得的,然后從分散或不完整的數(shù)據(jù)來創(chuàng)建二維或三維圖像,而對于一些成像技術(shù)來說則需要應(yīng)用數(shù)學(xué)公式來重新生成更加清晰的圖像以使其變得更加可讀和有用。圖像重建是圖像處理中一個重要研究分支,其重要意義在于獲取被檢測物體內(nèi)部結(jié)構(gòu)的圖像而不對物體造成任何物理上的損傷。它在各個不同的應(yīng)用領(lǐng)域中顯示出獨特的重要性,例如醫(yī)療放射學(xué)、核醫(yī)學(xué)、電子顯微、無線電雷達(dá)天文學(xué)、光顯微和全息成像學(xué)及理論視覺等領(lǐng)域都多有應(yīng)用。
本發(fā)明提出了一種基于衰減網(wǎng)絡(luò)通過滑動屬性操縱圖像的方法,訓(xùn)練了一種新的編碼-譯碼架構(gòu)用來通過在隱性空間中直接分解出圖像的顯著信息和屬性值來對圖像進(jìn)行重建。在經(jīng)過訓(xùn)練后,推測模型可以通過改變圖像屬性值來產(chǎn)生一個輸入圖像的不同版本。通過使用連續(xù)屬性值,可以選擇在生成的圖像中可感知特定屬性的多少,而這種特性就允許用戶使用滑動旋鈕來修改人像的面部表情或更新某些對象的顏色。目前最先進(jìn)的方法是依賴于在訓(xùn)練階段通過替換屬性值來在像素空間中訓(xùn)練對抗網(wǎng)絡(luò),相比這種方法本發(fā)明的訓(xùn)練方案更加簡單并可以很好的擴(kuò)展到多種屬性。此外本發(fā)明的模型可以在很大程度上改變圖像中屬性的感知價值,且同時能夠保持圖像的自然度。
技術(shù)實現(xiàn)要素:
針對本發(fā)明訓(xùn)練了一種新的編碼-譯碼架構(gòu)用來通過在隱性空間中直接分解出圖像的顯著信息和屬性值來對圖像進(jìn)行重建。在經(jīng)過訓(xùn)練后,推測模型可以通過改變圖像屬性值來產(chǎn)生一個輸入圖像的不同版本。通過使用連續(xù)屬性值,可以選擇在生成的圖像中可感知特定屬性的多少,而這種特性就允許用戶使用滑動旋鈕來修改人像的面部表情或更新某些對象的顏色。目前最先進(jìn)的方法是依賴于在訓(xùn)練階段通過替換屬性值來在像素空間中訓(xùn)練對抗網(wǎng)絡(luò),相比這種方法本發(fā)明的訓(xùn)練方案更加簡單并可以很好的擴(kuò)展到多種屬性。此外本發(fā)明的模型可以在很大程度上改變圖像中屬性的感知價值,且同時能夠保持圖像的自然度。
為解決上述問題,本發(fā)明提供一種基于衰減網(wǎng)絡(luò)通過滑動屬性操縱圖像的方法,其主要內(nèi)容包括:
(一)衰減網(wǎng)絡(luò);
(二)編碼-譯碼架構(gòu);
(三)不同屬性隱形表示的學(xué)習(xí);
(四)推測模型學(xué)習(xí)算法;
(五)編碼-譯碼架構(gòu)在神經(jīng)網(wǎng)絡(luò)中的實施方法。
其中,所述的衰減網(wǎng)絡(luò),讓
其中,所述的編碼-譯碼架構(gòu),基于編碼-解碼架構(gòu)在隱形空間上進(jìn)行區(qū)域?qū)褂?xùn)練,其中編碼器
這里并不用對圖像重建損失進(jìn)行切確的選擇,而在這個階段為了獲得紋理更加清晰的圖像,除了均方誤差(mse)還可以使用像對抗生成網(wǎng)絡(luò)(gan)這樣的對抗損失,但使用平均絕對值誤差或均方誤差仍然是必要的,這樣可以確保重建的圖像與原始圖像相匹配,而在理想情況下,修改d(e(x),y)中的y將產(chǎn)生具有不同感知屬性的圖像,但與其他方面與輸入圖像x相似。
進(jìn)一步地,所述的不同屬性隱形表示的學(xué)習(xí),在沒有附加限制條件時解碼器會忽略圖像的屬性,這時在測試時間修改y沒有任何效果,而為了避免這種行為,其解決方法是去學(xué)習(xí)相關(guān)屬性不變的隱形表示,這里通過不變性可以做到讓所給出的兩個不同版本的目標(biāo)x和x′與它們相應(yīng)的屬性值是相同的,例如同一個人戴眼鏡與不帶眼鏡時的兩幅圖與兩個相應(yīng)的隱形表述e(x)和e(x′)也應(yīng)該是相同的;當(dāng)滿足這種不變性時,解碼器必須使用該屬性來重建原始圖像,而訓(xùn)練集不包含相同圖像的不同版本,因此在計算損失時不能簡單地加入該限制條件,所以建議通過在隱形空間中進(jìn)行對抗訓(xùn)練來加入這一限制條件,為此需要訓(xùn)練稱為鑒別器的附加神經(jīng)網(wǎng)絡(luò)來識別給出e(x)的訓(xùn)練對(x,y)的真實屬性y,這里通過學(xué)習(xí)編碼器e來獲得不變性會讓鑒別器不能識別正確的屬性,這就好比在gan中一樣,它對應(yīng)一個雙人游戲,其中鑒別器旨在讓其識別屬性的能力最大化,而e旨在防止它成為一個好的鑒別器。
進(jìn)一步地,所述的鑒別器目標(biāo),鑒別器會輸出一個屬性向量
其中鑒別器的目的是為了預(yù)測給定其隱形表示的輸入圖像的屬性。
進(jìn)一步地,所述的對抗目標(biāo),其特征在于,此處編碼器的目標(biāo)是去計算一個隱形表示來優(yōu)化兩個對象,首先解碼器應(yīng)該能夠在給出e(x)和y時重建圖像x,并且在同時鑒別器不能在給出e(x)的情況下預(yù)測出y,這里認(rèn)為當(dāng)鑒別器對于屬性k預(yù)測1-yk會發(fā)生錯誤,所以在給出鑒別器參數(shù)時編碼-解碼架構(gòu)的絕對損失值如等式(3)所示:
其中λe>0控制圖像重建質(zhì)量與隱形表示的不變性之間的權(quán)衡情況,這里λe的較大值將會限制包含在e(x)中的x的信息量,并會導(dǎo)致產(chǎn)生模糊圖像,而且λe的較小值將會限制解碼器對隱形編碼y的依賴性從而導(dǎo)致在變換屬性時產(chǎn)生的不良效應(yīng)。
進(jìn)一步地,所述的推測模型學(xué)習(xí)算法,在給出編碼器的當(dāng)前狀態(tài)時最優(yōu)的鑒別器參數(shù)滿足
其中根據(jù)時間t的更新給出的當(dāng)前參數(shù)為
進(jìn)一步地,所述的編碼-譯碼架構(gòu)在神經(jīng)網(wǎng)絡(luò)中的實施方法,讓編碼-解碼架構(gòu)適應(yīng)到神經(jīng)網(wǎng)絡(luò)中來,此處令ck為包含k個濾波器的卷積修正線性單元(relu)層,這里卷積使用大小為4×4的內(nèi)核,其跨度值為2,填充值為1,從而使得編碼器的每一層的輸入值大小為2,其中在編碼器中使用斜率值為2的漏式relu,并在解碼器中使用簡單的relu,這里編碼器如式子(6)所示由以下7層組成:
c16-c32-c64-c128-c256-c512-c512(6)
而由于輸入圖像的大小為256×256,因此一幅圖像的隱形表示由大小為2×2的512幅特征圖組成,這里為了向解碼器提供圖像屬性,需要將隱形編碼附加到作為輸入給到解碼器的每一層上,其中圖像的隱形編碼是熱編碼向量的級聯(lián)以表示圖像的屬性值,這里二進(jìn)制屬性用[1,0]和[0,1]來表示,因此將隱形編碼作為額外的常數(shù)輸入通道附加到解碼器的卷積中,這里用n表示屬性的數(shù)量,且編碼器與解碼器是對稱的,因此如式子(7)所示使用轉(zhuǎn)置卷積進(jìn)行提升采樣:
c512+2n-c512t2n-c256+2n-c128+2n-c64+2n-c32+2n-c16+2n(7)
此處鑒別器是一個c512層,其跟隨著一個由大小分別為512和n的兩層全連接的神經(jīng)網(wǎng)絡(luò)。
進(jìn)一步地,所述的鑒別器代價規(guī)劃,對鑒別器的損失系數(shù)λe使用可變權(quán)重,這里先將λe設(shè)為0并且像正常的自動編碼器一樣訓(xùn)練模型,然后在前500,000次迭代中λe的值線性遞增到0.0001從而緩慢激勵模型來產(chǎn)生不變的表示,而沒有這個規(guī)劃的話將會觀察到即使是在λe的值非常低的情況下來自鑒別器的損失值也會對編碼器造成很大的影響。
進(jìn)一步地,所述的模型選擇,使用兩個標(biāo)準(zhǔn)來自動執(zhí)行模型選擇,這里首先使用mse所測量的原始圖像上的圖像重建誤差,然后里對于第二個標(biāo)準(zhǔn)通過訓(xùn)練分類器來預(yù)測圖像屬性,而在每個執(zhí)行周期的結(jié)尾在驗證集中交換每個圖像的屬性并去測量對于解碼的圖像分類器的表現(xiàn)情況,這里的兩個指標(biāo)用于過濾掉潛在的良好模型,而最終模型的選擇將會基于人對于從已交換屬性來重建的訓(xùn)練集中獲取的圖像所進(jìn)行的評估來進(jìn)行。
附圖說明
圖1是本發(fā)明一種基于衰減網(wǎng)絡(luò)通過滑動屬性操縱圖像的方法的編碼-解碼架構(gòu)圖。
圖2是本發(fā)明一種基于衰減網(wǎng)絡(luò)通過滑動屬性操縱圖像的方法的花朵在不同粉色屬性值的圖像重建示例圖。
具體實施方式
需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互結(jié)合,下面結(jié)合附圖和具體實施例對本發(fā)明作進(jìn)一步詳細(xì)說明。
圖1是本發(fā)明一種基于衰減網(wǎng)絡(luò)通過滑動屬性操縱圖像的方法的編碼-解碼架構(gòu)圖。圖中的輸入是一個圖像與屬性對(x,y),編碼器將x映射到其隱形表示z上,而鑒別器則被訓(xùn)練來在給出z的時候預(yù)測出y而此時編碼器則被訓(xùn)練來讓鑒別器在只給出z的時候無法預(yù)測出y,因此解碼器需要給出(z,y)才能重建出圖像x。整體來說主要包括衰減網(wǎng)絡(luò)、編碼-譯碼架構(gòu)、不同屬性隱形表示的學(xué)習(xí)、推測模型學(xué)習(xí)算法、編碼-譯碼架構(gòu)在神經(jīng)網(wǎng)絡(luò)中的實施方法。
其中,所述的衰減網(wǎng)絡(luò),讓
其中,所述的編碼-譯碼架構(gòu),基于編碼-解碼架構(gòu)在隱形空間上進(jìn)行區(qū)域?qū)褂?xùn)練,其中編碼器
這里并不用對圖像重建損失進(jìn)行切確的選擇,而在這個階段為了獲得紋理更加清晰的圖像,除了均方誤差(mse)還可以使用像對抗生成網(wǎng)絡(luò)(gan)這樣的對抗損失,但使用平均絕對值誤差或均方誤差仍然是必要的,這樣可以確保重建的圖像與原始圖像相匹配,而在理想情況下,修改d(e(x),y)中的y將產(chǎn)生具有不同感知屬性的圖像,但與其他方面與輸入圖像x相似。
進(jìn)一步地,所述的不同屬性隱形表示的學(xué)習(xí),在沒有附加限制條件時解碼器會忽略圖像的屬性,這時在測試時間修改y沒有任何效果,而為了避免這種行為,其解決方法是去學(xué)習(xí)相關(guān)屬性不變的隱形表示,這里通過不變性可以做到讓所給出的兩個不同版本的目標(biāo)x和x′與它們相應(yīng)的屬性值是相同的,例如同一個人戴眼鏡與不帶眼鏡時的兩幅圖與兩個相應(yīng)的隱形表述e(x)和e(x′)也應(yīng)該是相同的;當(dāng)滿足這種不變性時,解碼器必須使用該屬性來重建原始圖像,而訓(xùn)練集不包含相同圖像的不同版本,因此在計算損失時不能簡單地加入該限制條件,所以建議通過在隱形空間中進(jìn)行對抗訓(xùn)練來加入這一限制條件,為此需要訓(xùn)練稱為鑒別器的附加神經(jīng)網(wǎng)絡(luò)來識別給出e(x)的訓(xùn)練對(x,y)的真實屬性y,這里通過學(xué)習(xí)編碼器e來獲得不變性會讓鑒別器不能識別正確的屬性,這就好比在gan中一樣,它對應(yīng)一個雙人游戲,其中鑒別器旨在讓其識別屬性的能力最大化,而e旨在防止它成為一個好的鑒別器。
進(jìn)一步地,所述的鑒別器目標(biāo),鑒別器會輸出一個屬性向量
其中鑒別器的目的是為了預(yù)測給定其隱形表示的輸入圖像的屬性。
進(jìn)一步地,所述的對抗目標(biāo),其特征在于,此處編碼器的目標(biāo)是去計算一個隱形表示來優(yōu)化兩個對象,首先解碼器應(yīng)該能夠在給出e(x)和y時重建圖像x,并且在同時鑒別器不能在給出e(x)的情況下預(yù)測出y,這里認(rèn)為當(dāng)鑒別器對于屬性k預(yù)測1-yk會發(fā)生錯誤,所以在給出鑒別器參數(shù)時編碼-解碼架構(gòu)的絕對損失值如等式(3)所示:
其中λe>0控制圖像重建質(zhì)量與隱形表示的不變性之間的權(quán)衡情況,這里λe的較大值將會限制包含在e(x)中的x的信息量,并會導(dǎo)致產(chǎn)生模糊圖像,而且λe的較小值將會限制解碼器對隱形編碼y的依賴性從而導(dǎo)致在變換屬性時產(chǎn)生的不良效應(yīng)。
進(jìn)一步地,所述的推測模型學(xué)習(xí)算法,在給出編碼器的當(dāng)前狀態(tài)時最優(yōu)的鑒別器參數(shù)滿足
其中根據(jù)時間t的更新給出的當(dāng)前參數(shù)為
進(jìn)一步地,所述的編碼-譯碼架構(gòu)在神經(jīng)網(wǎng)絡(luò)中的實施方法,讓編碼-解碼架構(gòu)適應(yīng)到神經(jīng)網(wǎng)絡(luò)中來,此處令ck為包含k個濾波器的卷積修正線性單元(relu)層,這里卷積使用大小為4×4的內(nèi)核,其跨度值為2,填充值為1,從而使得編碼器的每一層的輸入值大小為2,其中在編碼器中使用斜率值為2的漏式relu,并在解碼器中使用簡單的relu,這里編碼器如式子(6)所示由以下7層組成:
c16-c32-c64-c128-c256-c512-c512(6)
而由于輸入圖像的大小為256×256,因此一幅圖像的隱形表示由大小為2×2的512幅特征圖組成,這里為了向解碼器提供圖像屬性,需要將隱形編碼附加到作為輸入給到解碼器的每一層上,其中圖像的隱形編碼是熱編碼向量的級聯(lián)以表示圖像的屬性值,這里二進(jìn)制屬性用[1,0]和[0,1]來表示,因此將隱形編碼作為額外的常數(shù)輸入通道附加到解碼器的卷積中,這里用n表示屬性的數(shù)量,且編碼器與解碼器是對稱的,因此如式子(7)所示使用轉(zhuǎn)置卷積進(jìn)行提升采樣:
c512+2n-c512+2n-c256+2n-c128+2n-c64+2n-c32+2n-c16+2n(7)
此處鑒別器是一個c512層,其跟隨著一個由大小分別為512和n的兩層全連接的神經(jīng)網(wǎng)絡(luò)。
進(jìn)一步地,所述的鑒別器代價規(guī)劃,對鑒別器的損失系數(shù)λe使用可變權(quán)重,這里先將λe設(shè)為0并且像正常的自動編碼器一樣訓(xùn)練模型,然后在前500,000次迭代中λe的值線性遞增到0.0001從而緩慢激勵模型來產(chǎn)生不變的表示,而沒有這個規(guī)劃的話將會觀察到即使是在λe的值非常低的情況下來自鑒別器的損失值也會對編碼器造成很大的影響。
進(jìn)一步地,所述的模型選擇,使用兩個標(biāo)準(zhǔn)來自動執(zhí)行模型選擇,這里首先使用mse所測量的原始圖像上的圖像重建誤差,然后里對于第二個標(biāo)準(zhǔn)通過訓(xùn)練分類器來預(yù)測圖像屬性,而在每個執(zhí)行周期的結(jié)尾在驗證集中交換每個圖像的屬性并去測量對于解碼的圖像分類器的表現(xiàn)情況,這里的兩個指標(biāo)用于過濾掉潛在的良好模型,而最終模型的選擇將會基于人對于從已交換屬性來重建的訓(xùn)練集中獲取的圖像所進(jìn)行的評估來進(jìn)行。
圖2是本發(fā)明一種基于衰減網(wǎng)絡(luò)通過滑動屬性操縱圖像的方法的花朵在不同粉色屬性值的圖像重建示例圖。圖中在增加粉色屬性值時花會變的更接近粉色,而在降低粉色屬性值時會讓花更接近黃色或橙色。
對于本領(lǐng)域技術(shù)人員,本發(fā)明不限制于上述實施例的細(xì)節(jié),在不背離本發(fā)明的精神和范圍的情況下,能夠以其他具體形式實現(xiàn)本發(fā)明。此外,本領(lǐng)域的技術(shù)人員可以對本發(fā)明進(jìn)行各種改動和變型而不脫離本發(fā)明的精神和范圍,這些改進(jìn)和變型也應(yīng)視為本發(fā)明的保護(hù)范圍。因此,所附權(quán)利要求意欲解釋為包括優(yōu)選實施例以及落入本發(fā)明范圍的所有變更和修改。