![計算機(jī)視覺應(yīng)用開發(fā)課件:圖像超分辨重建_第1頁](http://file4.renrendoc.com/view9/M01/3C/22/wKhkGWdcZzeAPEYsAACf9Nlqzi8265.jpg)
![計算機(jī)視覺應(yīng)用開發(fā)課件:圖像超分辨重建_第2頁](http://file4.renrendoc.com/view9/M01/3C/22/wKhkGWdcZzeAPEYsAACf9Nlqzi82652.jpg)
![計算機(jī)視覺應(yīng)用開發(fā)課件:圖像超分辨重建_第3頁](http://file4.renrendoc.com/view9/M01/3C/22/wKhkGWdcZzeAPEYsAACf9Nlqzi82653.jpg)
![計算機(jī)視覺應(yīng)用開發(fā)課件:圖像超分辨重建_第4頁](http://file4.renrendoc.com/view9/M01/3C/22/wKhkGWdcZzeAPEYsAACf9Nlqzi82654.jpg)
![計算機(jī)視覺應(yīng)用開發(fā)課件:圖像超分辨重建_第5頁](http://file4.renrendoc.com/view9/M01/3C/22/wKhkGWdcZzeAPEYsAACf9Nlqzi82655.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
圖像超分辨重建認(rèn)識圖像分辨率分辨率的基本概念01任務(wù)分辨率的作用02任務(wù)學(xué)習(xí)目標(biāo)了解圖像分辨率的基本概念了解圖像分辨率的作用1分辨率的基本概念1分辨率的基本概念在了解什么是分辨率之前,先了解另一個名詞——像素。像素(pixel):每個圖像都由一組像素構(gòu)成,像素是圖像原生的基礎(chǔ)構(gòu)件,沒有比像素更好的粒度(granularity)了。一般來說,認(rèn)為像素是圖像中某個給定位置出現(xiàn)的光的“顏色”或者“強度”。如果將圖像看成一個網(wǎng)格,網(wǎng)格中的每個方塊就包含一個像素。
例如,如果有一個分辨率為10×10的圖像,這就說明圖像被表示為一個像素網(wǎng)格,這個網(wǎng)格有10行10列。整體來說,圖像中共有10×10=100個像素,如右圖所示:1分辨率的基本概念當(dāng)然平時所見的圖像,遠(yuǎn)遠(yuǎn)不止于此,一般普通的圖片都在500×300左右。這樣說來,圖片能被一個300×500的像素網(wǎng)格所表示,500行300列。總體來看共有150000個像素。?大多數(shù)的像素以兩種方式來表示:灰度和彩色?;叶葓D中每個像素的取值范圍僅僅是0-255,0對應(yīng)黑色,255對應(yīng)白色。0-255中間的數(shù)值則對應(yīng)著灰色。而彩色像素通常以RGB色彩空間來表示,每個像素分別有R、G、B三個值。這三個顏色分別用0-255區(qū)間中的整數(shù)來表示,代表著這個顏色的成分有多少。因為取值范圍在[0,255]之間,所以通常用8位無符號整數(shù)來表示。然后把這三個值組合成RGB三元組(red,green,blue),以此來表示顏色。1分辨率的基本概念分辨率(resolution),又稱解析度,解像度,可以細(xì)分為顯示分辨率、圖像分辨率、打印分辨率和掃描分辨率等。這里著重了解一下圖像分辨率。圖像分辨率(imageresolution),指單位英寸中所包含的像素點數(shù)。它和圖像的像素有直接的關(guān)系。例如,一張圖片分辨率是500×200,也就是說這張圖片在屏幕上按1:1放大時,水平方向有500個像素點,垂直方向有200個像素點。圖像分辨率決定圖像的質(zhì)量。對于同樣尺寸的一幅圖,如果圖像分辨率越高,則組成該圖的圖像像素數(shù)目越多,像素點也越小,圖像越清晰、逼真。如:72dpi分辨率的1英寸×1英寸圖像包含5184像素,而300dpi分辨率的1英寸×1英寸圖像包含90000像素。1分辨率的基本概念圖像分辨率與顯示器分辨率是兩個不同的概念:顯示器分辨率用于確定顯示圖像的區(qū)域大小,而圖像分辨率用于確定組成一幅圖像的像素數(shù)目。如在顯示器分辨率為1024×768的顯示屏上,一幅圖像分辨率為320×240的圖像約占顯示屏的1/12,而一幅圖像分辨率為2400×3000的圖像在這個顯示屏上是不能完全顯示的。對于具有相同圖像分辨率的圖像,屏幕分辨率越低(如800×600),則圖像看起來較大,但屏幕上顯示的項目少;屏幕分辨率越高(如1024×768),則圖像看起來就越小。2分辨率的作用2分辨率的作用圖像分辨率決定圖像的質(zhì)量。對于同樣尺寸的一幅圖,如果圖像分辨率越高,則組成該圖的圖像像素數(shù)目越多,像素點也越小,圖像越清晰、逼真,自然。圖像分辨率是一組用于評估圖像中蘊含細(xì)節(jié)信息豐富程度的性能參數(shù),包括時間分辨率、空間分辨率及色階分辨率等,體現(xiàn)了成像系統(tǒng)實際所能反映物體細(xì)節(jié)信息的能力。相較于低分辨率圖像,高分辨率圖像通常包含更大的像素密度、更豐富的紋理細(xì)節(jié)及更高的可信賴度。但在實際上情況中,受采集設(shè)備與環(huán)境、網(wǎng)絡(luò)傳輸介質(zhì)與帶寬、圖像退化模型本身等諸多因素的約束,通常并不能直接得到具有邊緣銳化、無成塊模糊的理想高分辨率圖像。2分辨率的作用如圖所示,兩張同樣大小的圖片,右邊的圖片單位尺寸中包含的像素點數(shù)比左邊的多,圖像顯得更清晰,逼真,自然。ThankYOU!圖像超分辨率概述圖像超分辨率的基本概念01任務(wù)圖像超分辨率的應(yīng)用場景02任務(wù)學(xué)習(xí)目標(biāo)了解圖像超分辨率的基本概念了解圖像超分辨率的應(yīng)用場景1圖像超分辨率的基本概念1圖像超分辨率的基本概念所謂超分辨率,就是提高原有圖像的分辨率。通過一系列低分辨率的圖像來得到一幅高分辨率的圖像過程就是超分辨率重建。就如上節(jié)中的蝴蝶翅膀圖,給定左邊的低分辨率圖像,希望通過一系列的算法來得到右邊的高分辨率圖像,這就是圖像超分辨率重建。圖像超分辨率重建,給定一張低分辨率的圖像(low-resolutionimage),通過計算機(jī)視覺中的方法、模型將其恢復(fù)成一張高分辨率的圖像(high-resolutionimage),要求恢復(fù)后的高分辨率圖像要盡可能真實。其旨在克服或補償由于圖像采集系統(tǒng)或采集環(huán)境本身的限制,導(dǎo)致的成像圖像模糊、質(zhì)量低下、感興趣區(qū)域不顯著等問題。1圖像超分辨率的基本概念2圖像超分辨率的應(yīng)用場景2圖像超分辨率的應(yīng)用場景視頻:近年來,隨著高清設(shè)備的普及,用戶端顯示設(shè)備的分辨率已經(jīng)普遍提升到了2K甚至更高的水平。相對早期的游戲、電影和照片在上述設(shè)備上往往無法得到很好的展現(xiàn),這促使了很多經(jīng)典游戲和電影的高清重制工作被提上日程。在整個重制過程中,最核心的就是多媒體素材的高清重建工作,而該部分工作在過去往往只能通過聘請專業(yè)的設(shè)計師耗費大量的資源來完成。圖像超分辨率技術(shù)的發(fā)展為上述問題提供了一個全新的解決思路。通過圖像超分辨率技術(shù),無需耗費大量的資源即可完成多媒體內(nèi)容的高清重建工作。在上述結(jié)果上,設(shè)計師僅需進(jìn)行簡單少量的修改即可達(dá)到和人工設(shè)計相媲美的結(jié)果,大大簡化了工作的流程,降低了工作的成本。2圖像超分辨率的應(yīng)用場景照片:另一方面,圖像超分辨率技術(shù)在相機(jī)拍攝過程中也有著廣泛的應(yīng)用。近年來,隨著用戶對手機(jī)拍攝功能的重視,越來越多的廠商將手機(jī)的拍攝性能作為一個重要的賣點來進(jìn)行宣傳。特別的,相機(jī)的變焦功能越來越受到用戶的關(guān)注。其中,變焦功能通??梢苑譃椋汗鈱W(xué)變焦,數(shù)碼變焦。光學(xué)變焦通過調(diào)整鏡頭來對焦距進(jìn)行調(diào)整,由于受限于設(shè)備體積的大小,調(diào)整能力比較有限。相對的,數(shù)碼變焦則是通過算法來對圖像進(jìn)行調(diào)整,以達(dá)到模擬光學(xué)變焦的目的,算法的優(yōu)劣很大程度上決定了數(shù)碼變焦的倍數(shù)以及其結(jié)果的好壞。圖像超分辨率技術(shù)相對于傳統(tǒng)的圖像插值算法,往往能夠提供更大的變焦倍數(shù)以及更好的圖像質(zhì)量,近年來廣泛被各大手機(jī)廠商所采用。2圖像超分辨率的應(yīng)用場景相對于上述領(lǐng)域,圖像超分辨率技術(shù)在很多專業(yè)領(lǐng)域也有應(yīng)用。主要包括:圖像壓縮領(lǐng)域:在視頻會議等實時性要求較高的場合,可以在傳輸前預(yù)先對圖片進(jìn)行壓縮,等待傳輸完畢,再由接收端解碼后通過超分辨率重建技術(shù)復(fù)原出原始圖像序列,極大減少存儲所需的空間及傳輸所需的帶寬。醫(yī)學(xué)成像領(lǐng)域:對醫(yī)學(xué)圖像進(jìn)行超分辨率重建,可以在不增加高分辨率成像技術(shù)成本的基礎(chǔ)上,降低對成像環(huán)境的要求,通過復(fù)原出的清晰醫(yī)學(xué)影像,實現(xiàn)對病變細(xì)胞的精準(zhǔn)探測,有助于醫(yī)生對患者病情做出更好的診斷。2圖像超分辨率的應(yīng)用場景遙感成像領(lǐng)域:高分辨率遙感衛(wèi)星的研制具有耗時長、價格高、流程復(fù)雜等特點,由此研究者將圖像超分辨率重建技術(shù)引入了該領(lǐng)域,試圖解決高分辨率的遙感成像難以獲取這一挑戰(zhàn),使得能夠在不改變探測系統(tǒng)本身的前提下提高觀測圖像的分辨率。公共安防領(lǐng)域:公共場合的監(jiān)控設(shè)備采集到的視頻往往受到天氣、距離等因素的影響,存在圖像模糊、分辨率低等問題。通過對采集到的視頻進(jìn)行超分辨率重建,可以為辦案人員恢復(fù)出車牌號碼、清晰人臉等重要信息,為案件偵破提供必要線索。視頻感知領(lǐng)域:通過圖像超分辨率重建技術(shù),可以起到增強視頻畫質(zhì)、改善視頻的質(zhì)量,提升用戶的視覺體驗的作用。ThankYOU!超分辨率重建技術(shù)基于傳統(tǒng)的超分辨率技術(shù)01任務(wù)基于深度學(xué)習(xí)的超分辨率技術(shù)02任務(wù)學(xué)習(xí)目標(biāo)掌握基于傳統(tǒng)的圖像超分辨率技術(shù)了解基于深度學(xué)習(xí)圖像超分辨率技術(shù)1基于傳統(tǒng)的超分辨率技術(shù)1基于傳統(tǒng)的超分辨率技術(shù)圖像超分辨率技術(shù)的主要任務(wù)是生成真實、清晰且人為痕跡盡可能少的高分辨率圖像,根據(jù)輸入輸出的不同,其定義有所區(qū)別,主要可分為三類:1、多圖像超分辨率:多圖像超分辨率方法利用多幅LR(低分辨率)圖像得到一幅真實且清晰的HR(高分辨率)圖像,主要采用基于重建的算法,即試圖通過模擬圖像形成模型來解決LR圖像中的混疊偽像問題。多圖像超分辨率重建算法根據(jù)重建過程所在域不同可分為頻域法和空域法。2、視頻超分辨率:視頻超分辨率輸入的是一個視頻序列,該技術(shù)不僅可以提高視頻中每一幀的分辨率,還可以利用算法在時域中增加圖像幀的數(shù)目,從而達(dá)到提高視頻整體質(zhì)量的目的。視頻超分辨率方法可以分為以下兩大類:一是增量視頻超分辨率方法;二是同時視頻超分辨率方法。1基于傳統(tǒng)的超分辨率技術(shù)3、單圖像超分辨率:單圖像超分辨率輸入的是一幅LR圖像,僅利用一幅LR圖像來重建得到HR圖像。目前傳統(tǒng)的單幅圖像超分辨率方法主要分為三類,即基于插值的圖像超分辨率算法、基于重建模型的圖像超分辨率算法和基于學(xué)習(xí)的圖像超分辨率算法。其次還有一些基于深度學(xué)習(xí)的圖像超分辨率方法也取得不錯的重建效果。本單元主要對單圖像超分辨率重建技術(shù)進(jìn)行介紹,下面將對其方法進(jìn)行簡要介紹。1基于傳統(tǒng)的超分辨率技術(shù)基于傳統(tǒng)的超分辨率技術(shù)大致課分為三類:(1)基于插值的超分辨率重建:基于插值的單圖像超分辨率算法利用基函數(shù)或插值核來逼近損失的圖像高頻信息,從而實現(xiàn)HR圖像的重建。將圖像上每個像素都看作是圖像平面上的一個點,那么對超分辨率圖像的估計可以看作是利用已知的像素信息為平面上未知的像素信息進(jìn)行擬合的過程,這通常由一個預(yù)定義的變換函數(shù)或者插值核來完成。常見的基于插值的方法包括最近鄰插值法、雙線性插值法和雙立方插值法等。但是在重建過程中,僅根據(jù)一個事先定義的轉(zhuǎn)換函數(shù)來計算超分辨率圖像,不考慮圖像的降質(zhì)退化模型,往往會導(dǎo)致復(fù)原出的圖像出現(xiàn)模糊、鋸齒等現(xiàn)象。1基于傳統(tǒng)的超分辨率技術(shù)(2)基于退化模型的超分辨率重建
從圖像的降質(zhì)退化模型出發(fā),假定高分辨率圖像是經(jīng)過了適當(dāng)?shù)倪\動變換、模糊及噪聲才得到低分辨率圖像。這種方法通過提取低分辨率圖像中的關(guān)鍵信息,并結(jié)合對未知的超分辨率圖像的先驗知識來約束超分辨率圖像的生成。常見的方法包括迭代反投影法、凸集投影法和最大后驗概率法等。(3)基于學(xué)習(xí)的超分辨率重建
基于學(xué)習(xí)的方法則是利用大量的訓(xùn)練數(shù)據(jù),從中學(xué)習(xí)低分辨率圖像和高分辨率圖像之間某種對應(yīng)關(guān)系,然后根據(jù)學(xué)習(xí)到的映射關(guān)系來預(yù)測低分辨率圖像所對應(yīng)的高分辨率圖像,從而實現(xiàn)圖像的超分辨率重建過程。常見的基于學(xué)習(xí)的方法包括流形學(xué)習(xí)、稀疏編碼方法。2基于深度學(xué)習(xí)的超分辨率技術(shù)2基于深度學(xué)習(xí)的超分辨率技術(shù)超分辨率的研究工作中,傳統(tǒng)超分辨率重建方法主要依賴于約束項的構(gòu)造以及圖像之間配準(zhǔn)的精確度達(dá)到重建效果,但其不適用于放大倍數(shù)較大的超分辨率重建。隨著放大因子的增大,人為定義的先驗知識和觀測模型所能提供的用于超分辨率重建的信息越來越少,即使增加LR圖像的數(shù)量,亦難以達(dá)到重建高頻信息的目的。深度學(xué)習(xí)的出現(xiàn)解決了傳統(tǒng)超分辨率技術(shù)中的許多瓶頸問題,在近幾年取得了巨大的成功。目前,越來越多具有深度學(xué)習(xí)功能的超分辨率模型被提出,根據(jù)是否依賴于LR圖像和對應(yīng)的HR圖像訓(xùn)練網(wǎng)絡(luò)模型,可以粗略地將其分為有監(jiān)督的超分辨率和無監(jiān)督的超分辨率,由于有監(jiān)督的超分辨率技術(shù)能夠取得較好的重建效果,是目前研究的主流方向。2基于深度學(xué)習(xí)的超分辨率技術(shù)基于深度學(xué)習(xí)的超分辨率方法中關(guān)鍵是建立學(xué)習(xí)模型,即神經(jīng)網(wǎng)絡(luò)框架。常見的基于深度學(xué)習(xí)的超分辨重建技術(shù)有SRCNN,在SRCNN基礎(chǔ)上改進(jìn)的FSRCNN,ESPCN,VDSR等。對于上一單元提及的對抗生成網(wǎng)絡(luò),不僅僅可以將其用作圖像的風(fēng)格轉(zhuǎn)換,對抗生成網(wǎng)絡(luò)還可以用于圖像的超分辨率重建工作,例如SRGAN技術(shù)。下面將會重點介紹使用SRCNN技術(shù)和SRGAN技術(shù)來完成圖像超分辨率重建任務(wù)。ThankYOU!SRCNNSRCNN的提出01任務(wù)網(wǎng)絡(luò)結(jié)構(gòu)02任務(wù)學(xué)習(xí)目標(biāo)了解SRCNN超分辨率重建網(wǎng)絡(luò)的由來掌握SRCNN超分辨率重建網(wǎng)絡(luò)的網(wǎng)絡(luò)結(jié)構(gòu)1SRCNN的提出1SRCNN的提出SRCNN是由香港中文大學(xué)ChaoDong等人提出的基于深度學(xué)習(xí)對圖像進(jìn)行重建的方法。該團(tuán)隊提出的SRCNN算法是首次使用深度學(xué)習(xí)(CNN)用來進(jìn)行圖像重建的,所以被稱為是深度學(xué)習(xí)在圖像重建領(lǐng)域的“開山制作”。2網(wǎng)絡(luò)結(jié)構(gòu)2網(wǎng)絡(luò)結(jié)構(gòu)SRCNN的網(wǎng)絡(luò)結(jié)構(gòu)非常簡單,僅僅用了三個卷積層,網(wǎng)絡(luò)結(jié)構(gòu)如圖所示:2網(wǎng)絡(luò)結(jié)構(gòu)SRCNN首先使用雙三次(bicubic)插值將低分辨率圖像放大成目標(biāo)尺寸,這三次插值分別為:1.LR特征提取(Patchextractionandrepresentation),這個階段主要是對LR進(jìn)行特征提取,并將其特征表征為一些featuremaps;2.特征的非線性映射(Non-linearmapping),這個階段主要是將第一階段提取的特征映射至HR所需的featuremaps;3.HR重建(Reconstruction),這個階段是將第二階段映射后的特征恢復(fù)為HR圖像。接著通過三層卷積網(wǎng)絡(luò)擬合非線性映射,最后輸出高分辨率圖像結(jié)果。利用三層卷積層分別實現(xiàn):1.圖像的圖像塊抽取與稀疏字典建立;2.圖像高、低分辨率特征之間的非線性映射;3.高分辨率圖像塊的重建。2網(wǎng)絡(luò)結(jié)構(gòu)Patchextraction:提取圖像Patch,進(jìn)行卷積提取特征,類似于稀疏編碼中的將圖像patch映射到低分辨率字典中。其目的是找到一組可以表達(dá)之前預(yù)處理后所得到圖像塊的一組“基”,這些基是沿著不同方向的邊緣,稀疏系數(shù)就是分配給各個基的權(quán)重。這部分可以轉(zhuǎn)化為一定數(shù)量的濾波器(卷積核)來代替。Non-linearmapping:將低分辨率的特征映射為高分辨率特征,類似于字典學(xué)習(xí)中找到圖像patch對應(yīng)的高分辨字典。將第一步得到的表達(dá)圖像塊的高維向量映射到另外一個高維向量中,通過這個高維向量表達(dá)高分辨率圖像塊,用于最后的重建。這一步驟可以使用1×1的卷積來實現(xiàn)向量維數(shù)的變換。2網(wǎng)絡(luò)結(jié)構(gòu)Reconstruction:根據(jù)高分辨率特征進(jìn)行圖像重建。類似于字典學(xué)習(xí)中的根據(jù)高分辨率字典進(jìn)行圖像重建。將最后得到的高分辨率圖像塊進(jìn)行聚合(重合的位置取平均)形成最后的高分辨率圖像。這一部分可以看成是一種線性運算,可以構(gòu)造一個線性函數(shù)(不加激活函數(shù))來實現(xiàn)?;诰矸e神經(jīng)網(wǎng)絡(luò)的超分辨率算法將這三個步驟都統(tǒng)一到一個模型中,顯著地提高了模型效率。相對于傳統(tǒng)方法提高了圖像重建質(zhì)量。但計算量較大,訓(xùn)練速度慢。隨后SRCNN中又加入一層卷積層,構(gòu)建FSRCNN網(wǎng)絡(luò),速度有較大提升。ThankYOU!PSNRPSNR的概念01任務(wù)PSNR的作用02任務(wù)學(xué)習(xí)目標(biāo)掌握PSNR的概念和計算公式了解PSNR評價指標(biāo)的作用1PSNR的概念1PSNR的概念峰值信噪比(PSNR),一種評價圖像的客觀標(biāo)準(zhǔn),應(yīng)用場景有很多。PSNR是“PeakSignaltoNoiseRatio”的縮寫。peak的中文意思是頂點,ratio的意思是比率,整個意思就是原始圖像與其評估版本(噪聲強度)之間圖像(信號強度)可能的最大像素值與最大均方誤差(MSE)的對數(shù)比率。PSNR一般是用于最大值信號和背景噪音之間的一個工程項目。通常在經(jīng)過影像壓縮之后,通常輸出的影像都會在某種程度與原始影像不同。為了衡量經(jīng)過處理后的影像品質(zhì),通常會參考PSNR值來衡量某個處理程序能否令人滿意。它是原圖像與被處理圖像之間的均方誤差相對于(2n-1)2的對數(shù)值(信號最大值的平方,n是每個采樣值的比特數(shù)),它的單位是dB。1PSNR的概念其數(shù)學(xué)公式如下所示:其中,MSE是原圖像與處理圖像之間的均方誤差,這個相信大家已經(jīng)很熟悉了,MAX是像素值的最大值。1PSNR的概念Python中兩種計算PSNR的方式#method1diff=im1-im2mse=np.mean(np.square(diff))psnr=10*np.log10(255*255/mse)#method2psnr=pare_psnr(im1,im2,255)2PSNR的作用2PSNR的作用對于圖像超分辨率,為了衡量經(jīng)過處理后的圖像品質(zhì),不能像往常一樣使用損失率或準(zhǔn)確率作為網(wǎng)絡(luò)擬合的評價指標(biāo),因此使用PSNR來衡量。PSNR是最普遍和使用最為廣泛的一種圖像客觀評價指標(biāo),然而它是基于對應(yīng)像素點間的誤差,即基于誤差敏感的圖像質(zhì)量評價。PSNR最小值為0,PSNR越大,兩張圖像差異越?。挥捎诓⑽纯紤]到人眼的視覺特性(人眼對空間頻率較低的對比差異敏感度較高,人眼對亮度對比差異的敏感度較色度高,人眼對一個區(qū)域的感知結(jié)果會受到其周圍鄰近區(qū)域的影響等),因而經(jīng)常出現(xiàn)評價結(jié)果與人的主觀感覺不一致的情況。2PSNR的作用例如右圖中:6幅圖像計算PSNR:psnr(a,b)=22.8197psnr(a,c)=24.6104psnr(a,d)=23.6994psnr(a,e)=22.9966psnr(a,f)=24.6628PSNR的差異不大,但是在人眼看來這幾張圖片是存在很大差異的。ThankYOU!基于SRCNN的圖像超分辨率重建案例描述01任務(wù)案例目標(biāo)02任務(wù)案例分析03任務(wù)案例實施04任務(wù)1案例描述1案例描述本案例基于SRCNN,在其基礎(chǔ)上增加卷積層,在T91數(shù)據(jù)集上訓(xùn)練,實現(xiàn)圖像的超分辨重建。2案例目標(biāo)案例目標(biāo)學(xué)會搭建SRCNN超分辨率重建網(wǎng)絡(luò);對重建后的圖片進(jìn)行PSNR評價來訓(xùn)練SRCNN網(wǎng)絡(luò)以實現(xiàn)圖像的超分辨率重建。23案例分析案例分析T91數(shù)據(jù)集一共包含91張圖片,一般用于測試性能。如前面所述,SRCNN網(wǎng)絡(luò)需要將圖像特征映射到低分辨率字典中,為此除了原始圖像,需要手動構(gòu)造低分辨率圖像。整個案例的流程如下:(1)加載數(shù)據(jù)集,進(jìn)行規(guī)范化;(2)構(gòu)造低分辨率圖像;(3)搭建SRCNN網(wǎng)絡(luò);(4)編譯并訓(xùn)練;(5)預(yù)測并對比。34案例實施4案例實施 1.導(dǎo)庫導(dǎo)入一些圖像超分辨率重建使用到的一些網(wǎng)絡(luò)層:卷積層、池化層、上采樣層和特征融合fromkeras.layersimportInput,Conv2D,MaxPooling2D,UpSampling2D,Add2.預(yù)處理并加載數(shù)據(jù)image=load_images("data/T91/",image_path)defload_images(inputdir,inputpath):imglist=[]foriinrange(len(inputpath)):img=cv2.imread(inputdir+inputpath[i],cv2.IMREAD_COLOR)img=cv2.resize(img,(128,128))img=img[::-1]imglist.append(img)returnimglist4案例實施3.構(gòu)造低分辨率圖像將原圖像先縮小,再放大,這樣會使其分辨率降低,以此作為低分辨率圖像,傳給模型。temp=cv2.resize(image[i,:,:,:],(64,64))temp=cv2.resize(temp,(128,128))label[i,:,:,:]=temp4.模型搭建這里使用一個改良的SRCNN網(wǎng)絡(luò)。經(jīng)過兩次降采樣(低分辨率特征提?。?jīng)過兩次上采樣(低分辨率映射到高分辨率),最后得到高分辨率特征進(jìn)行重建。4案例實施defnetwork_ddsrcnn():input_img=Input(shape=(128,128,3))enc1=Conv2D(64,kernel_size=3,activation="relu",padding="same")(input_img)enc1=Conv2D(64,kernel_size=3,activation="relu",padding="same")(enc1)down1=MaxPooling2D(pool_size=2)(enc1)enc2=Conv2D(128,kernel_size=3,activation="relu",padding="same")(down1)enc2=Conv2D(128,kernel_size=3,activation="relu",padding="same")(enc2)down2=MaxPooling2D(pool_size=2)(enc2)enc3=Conv2D(256,kernel_size=3,activation="relu",padding="same")(down2)up3=UpSampling2D(size=2)(enc3)dec3=Conv2D(128,kernel_size=3,activation="relu",padding="same")(up3)dec3=Conv2D(128,kernel_size=3,activation="relu",padding="same")(dec3)add2=Add()([dec3,enc2])up2=UpSampling2D(size=2)(add2)dec2=Conv2D(64,kernel_size=3,activation="relu",padding="same")(up2)dec2=Conv2D(64,kernel_size=3,activation="relu",padding="same")(dec2)add1=Add()([dec2,enc1])dec1=Conv2D(3,kernel_size=5,activation="linear",padding="same")(add1)model=Model(input_img,dec1)returnmodel4案例實施5.訓(xùn)練初始化一個學(xué)習(xí)率,并編寫了一個學(xué)習(xí)率回調(diào)函數(shù),用于動態(tài)調(diào)整學(xué)習(xí)率。ifepoch<500:returninitial_learningrateelse:returninitial_learningrate*0.99**epoch接下來計算評價指標(biāo)PSNR。return-10*K.log(K.mean(K.flatten((y_true-y_pred))**2))/np.log(10)編譯并訓(xùn)練。pile(loss="mean_squared_error",optimizer=adam_v2.Adam(learning_rate=initial_learningrate),metrics=[psnr])model.fit(label,image,epochs=100,batch_size=16,shuffle=True,verbose=1,callbacks=[LearningRateScheduler(lr_decay,verbose=1)])4案例實施6.預(yù)測并展示關(guān)于性能的提升,通??梢詮囊韵聨追矫鎭碇郑?.增大卷積核的大?。和ㄟ^增大卷積核的大小,可以增強重建效果,但會增加參數(shù),訓(xùn)練時間更長;2.加大網(wǎng)絡(luò)深度:加大網(wǎng)絡(luò)深度可以提高模型的重建效果,但是同樣會使網(wǎng)絡(luò)模型收斂時間更長,增加訓(xùn)練時間;3.增加訓(xùn)練集的數(shù)量:增加訓(xùn)練集的數(shù)量,在ImageNet訓(xùn)練集上的訓(xùn)練結(jié)果較現(xiàn)在的91張訓(xùn)練集,模型重建效果有所提升。ThankYOU!SRGAN基于生成對抗網(wǎng)絡(luò)的圖像超分辨率(SRGAN)01任務(wù)SRGAN網(wǎng)絡(luò)結(jié)構(gòu)02任務(wù)學(xué)習(xí)目標(biāo)了解SRGAN的由來掌握SRGAN的網(wǎng)絡(luò)結(jié)構(gòu)1基于生成對抗網(wǎng)絡(luò)的圖像超分辨率(SRGAN)1基于生成對抗網(wǎng)絡(luò)的圖像超分辨率(SRGAN)之前超分的研究雖然主要聚焦于“恢復(fù)細(xì)粒度的紋理細(xì)節(jié)”這個問題上,但將問題一直固定在最大化峰值信噪比(PeakSignal-to-NoiseRatio,PSNR)上,等價于最小化與GT圖像的均方重建誤差(meansquaredreconstructionerror,MSE)。而這也就導(dǎo)致:高頻細(xì)節(jié)(high-frequencydetails)的丟失,整體圖像過于平滑/模糊;與人的視覺感知不一致,超分圖像的精確性與人的期望不匹配(人可能更關(guān)注前景,而對背景清晰度要求不高)。1基于生成對抗網(wǎng)絡(luò)的圖像超分辨率(SRGAN)從而提出幾個改進(jìn):(1)新的backbone:SRResNet;(2)GAN-basednetwork及新的損失函數(shù):(3)adversarialloss:提升真實感(photo-realisticnaturalimages);(4)contentloss:獲取HRimage和生成圖像的感知相似性(perceptualsimilarity),而不只是像素級相似性(pixelsimilarity);或者說特征空間的相似性而不是像素空間的相似性。(5)使用主觀評估手段:MOS,更加強調(diào)人的感知。1基于生成對抗網(wǎng)絡(luò)的圖像超分辨率(SRGAN)SRGAN(Super-ResolutionGenerativeAdversarialNetwork)即超分辨率GAN,是ChristianLedig等人于16年9月提出的一種對抗神經(jīng)網(wǎng)絡(luò)。利用卷積神經(jīng)網(wǎng)絡(luò)可以實現(xiàn)單影像的超分辨率,但是正如SRCNN所展示的效果,其瓶頸仍在于如何恢復(fù)圖像的細(xì)微紋理信息。對于GAN而言,將一組隨機(jī)噪聲輸入到生成器中,生成的圖像質(zhì)量往往較差。因此,作者提出了SRGAN,并定義一個loss函數(shù)以驅(qū)動模型,SRGAN最終可以生成一幅原始影像擴(kuò)大4倍的高分辨率影像。SRGAN算法指出,盡管其他方法超分重建方法中的PSNR值會比較高,但是重建出來的圖像并不能夠很好的符合人眼主觀感受,丟失了細(xì)節(jié)紋理信息。2SRGAN網(wǎng)絡(luò)結(jié)構(gòu)2SRGAN網(wǎng)絡(luò)結(jié)構(gòu)該模型是由兩個網(wǎng)絡(luò)組成的深層次神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),將一個網(wǎng)絡(luò)與另一個網(wǎng)絡(luò)相互對立。一個神經(jīng)網(wǎng)絡(luò)稱為生成器,生成新的數(shù)據(jù)實例;另一個神經(jīng)網(wǎng)絡(luò)稱為鑒別器,評估它們的真實性,即鑒別器判斷所審查的每個數(shù)據(jù)實例是否屬于實際訓(xùn)練數(shù)據(jù)集?;谏蓪咕W(wǎng)絡(luò)的圖像超分辨率(SRGAN)將生成對抗網(wǎng)絡(luò)(GAN)應(yīng)用到圖像超分辨率領(lǐng)域。生成器模型根據(jù)輸入的低分辨率圖像生成其對應(yīng)的高分辨率圖像,而鑒別器用于判斷圖像屬于生成的高分辨率圖還是真實的高分辨率圖像。兩者相互迭代訓(xùn)練,直到鑒別器無法分辨出輸入的圖像是生成的圖像還是真實的圖像,則認(rèn)為兩者達(dá)到了納什均衡。最后生成器模型能夠生成出以假亂真的高分辨率圖像。2PSNR的作用圖為SRGAN中生成器和鑒別器的網(wǎng)絡(luò)結(jié)構(gòu)圖:生成器結(jié)構(gòu)為:16層深度殘差+1層初始的深度殘差+2次2倍反卷積+1個卷積產(chǎn)生生成結(jié)果。判別器結(jié)構(gòu)為:8層卷積+reshape,全連接。2PSNR的作用VGG-19結(jié)構(gòu):在VGG-19的第四層,返回獲取到的特征結(jié)果,進(jìn)行MSE對比。注意:VGG-19是使用已經(jīng)訓(xùn)練好的模型,這里只是拿來提取特征使用,對于生成器,根據(jù)三個運算結(jié)果數(shù)據(jù),進(jìn)行隨機(jī)梯度的優(yōu)化調(diào)整:(1)判定器生成數(shù)據(jù)的鑒定結(jié)果;(2)VGG-19的特征比較情況;(3)生成圖形與理想圖形的MSE差距。2PSNR的作用其中SRGAN的每個模塊的關(guān)系圖如圖所示:為了防止重建圖像過度平滑,SRGAN重新定義了損失函數(shù),并將其命名為感知損失(Perceptualloss)。感知損失有兩部分構(gòu)成:感知損失=內(nèi)容損失+對抗損失。2PSNR的作用對抗損失就是重建出來的圖片被判別器正確判斷的損失,這部分內(nèi)容跟一般的GAN定義相同。SRGAN的一大創(chuàng)新點就是提出了內(nèi)容損失,SRGAN希望讓整個網(wǎng)絡(luò)在學(xué)習(xí)的過程中更加關(guān)注重建圖片和原始圖片的語義特征差異,而不是逐個像素之間的顏色亮度差異。以往在計算超分重建圖像和原始高清圖像差異的時候是直接在像素圖像上進(jìn)行比較的,用的MSE準(zhǔn)則。SRGAN算法提出者認(rèn)為這種方式只會過度的讓模型去學(xué)習(xí)這些像素差異,而忽略了重建圖像的固有特征。已經(jīng)有很多模型專門提出來提取圖像固有特征然后進(jìn)行分類等任務(wù)。只需要把這些模型中的特征提取模塊截取出來,然后去計算重建圖像和原始圖像的特征,這些特征就是語義特征了,然后再在特征層上進(jìn)行兩幅圖像的MSE計算。在眾多模型中,SRGAN選用了VGG19模型,其截取的模型命名為truncated_vgg19。所謂模型截斷,也就是只提取原始模型的一部分,然后作為一個新的單獨的模型進(jìn)行使用。2PSNR的作用重新整理下內(nèi)容損失計算方式:(1)通過SRGAN模型重建出高清圖像HR;(2)通過truncated_vgg19模型對原始高清圖像H和重建出的高清圖像HR分別進(jìn)行計算,得到兩幅圖像對應(yīng)的特征圖H_fea和HR_fea;(3)計算H_fea和HR_fea的MSE值;從上述計算方式上看出,原來的計算方式是直接計算H和HR的MSE值,而改用新的內(nèi)容損失后只需要利用truncated_vgg19模型對圖像多作一次推理得到特征圖,再在特征圖上進(jìn)行計算。2PSNR的作用2PSNR的作用生成網(wǎng)絡(luò)的損失函數(shù)為:包含:
:重構(gòu)損失,生成圖像與GT圖像的逐像素點MSE損失;
:感知損失(perceptualloss),由對抗損失和內(nèi)容損失組成。
:內(nèi)容損失(contentloss),VGG網(wǎng)絡(luò)中第
i
層第
j
個卷積核輸出的featuremap(經(jīng)過激活函數(shù))的MSE損失
lVGG/i,jSR
;
:對抗損失(adversarialloss)。
2PSNR的作用判別網(wǎng)絡(luò)的損失函數(shù)為二分類交叉熵?fù)p失函數(shù):ThankYOU!基于SRGAN的圖像超分辨率重建案例描述01任務(wù)案例目標(biāo)02任務(wù)案例分析03任務(wù)案例實施04任務(wù)1案例描述1案例描述本案例基于SRGAN,并在T91數(shù)據(jù)集上訓(xùn)練,實現(xiàn)圖像的超分辨重建。2案例目標(biāo)案例目標(biāo)學(xué)會搭建SRGAN超分辨率重建網(wǎng)絡(luò);
通過約束對抗損失和內(nèi)容損失訓(xùn)練SRGAN 網(wǎng)絡(luò)以實現(xiàn)圖像的超分辨率重建。23案例分析案例分析SRGAN網(wǎng)絡(luò)同樣需要一些低分辨率圖像和原始高分辨率圖像,低分辨率圖像用做輸入數(shù)據(jù)來訓(xùn)練SRGAN網(wǎng)絡(luò)模型,高分辨率圖片用來檢測超分圖像重建的效果。為此除了原始圖像,需要手動構(gòu)造低分辨率圖像。整個案例的流程如下:(1)加載數(shù)據(jù)集,進(jìn)行規(guī)范化;(2)構(gòu)造低分辨率圖像;(3)搭建SRGAN網(wǎng)絡(luò);(4)編譯并訓(xùn)練;(5)預(yù)測并對比。34案例實施4案例實施 1.數(shù)據(jù)預(yù)處理創(chuàng)建utils.py,首先是一些預(yù)處理文件,包括讀取,存儲圖片等函數(shù)。#讀入圖片,并對圖片做尺寸裁減,并將所有圖片進(jìn)行歸一化處理img=img[start_h:start_h+fine_size,start_w:start_w+fine_size,:]img=(img-127.5)/127.5#保存圖片以及圖片名稱defsave_images(images,size,filename):returnscipy.misc.imsave(filename,np.squeeze(images))4案例實施2.定義網(wǎng)絡(luò)層創(chuàng)建layer.py,主要定義一些特定的網(wǎng)絡(luò)模塊以及所需的損失函數(shù)。其中導(dǎo)入tensorflow.contrib.slim庫要求numpy版本為1.20.0以下,scipy版本為1.2.0。#定義殘差網(wǎng)絡(luò)塊defres_block(input_x,out_channels=64,k=3,s=1,scope='res_block'):withtf.variable_scope(scope):x=input_xinput_x=slim.conv2d_transpose(input_x,out_channels,k,s)input_x=slim.batch_norm(input_x,scope='bn1')input_x=tf.nn.relu(input_x)input_x=slim.conv2d_transpose(input_x,out_channels,k,s)input_x=slim.batch_norm(input_x,scope='bn2')returnx+input_x4案例實施#定義PSNR損失函數(shù)defPSNR(real,fake):mse=tf.reduce_mean(tf.square(127.5*(real-fake)+127.5),axis=(-3,-2,-1))psnr=tf.reduce_mean(10*(tf.log(255*255/tf.sqrt(mse))/np.log(10)))returnpsnr3.訓(xùn)練模型
創(chuàng)建SRGAN.py,包含SRGAN模型的構(gòu)建以及訓(xùn)練測試過程。
定義生成器。生成器包含五個卷積模塊和五個殘差塊和兩個像素隨機(jī)操作。4案例實施conv1=tf.nn.relu(slim.conv2d_transpose(input_x,64,3,1,scope='g_conv1'))shortcut=conv1#res_block(input_x,out_channels=64,k=3,s=1,scope='res_block'):res1=res_block(conv1,64,3,1,scope='g_res1')res2=res_block(res1,64,3,1,scope='g_res2')res3=res_block(res2,64,3,1,scope='g_res3')res4=res_block(res3,64,3,1,scope='g_res4')res5=res_block(res4,64,3,1,scope='g_res5')conv2=slim.batch_norm(slim.conv2d_transpose(res5,64,3,1,scope='g_conv2'),scope='g_bn_conv2')conv2_out=shortcut+conv2#pixel_shuffle_layer(x,r,n_split):conv3=slim.conv2d_transpose(conv2_out,256,3,1,scope='g_conv3')shuffle1=tf.nn.relu(pixel_shuffle_layer(conv3,2,64))#64*2*2conv4=slim.conv2d_transpose(shuffle1,256,3,1,scope='g_conv4')shuffle2=tf.nn.relu(pixel_shuffle_layer(conv4,2,64))conv5=slim.conv2d_transpose(shuffle2,3,3,1,scope='g_conv5')self.g_vars=tf.get_collection(tf.GraphKeys.TRAINABLE_VARIA
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 范本指南留置擔(dān)保合同
- 個人服務(wù)合同
- 房地產(chǎn)銷售合作合同協(xié)議書范本
- 美容師實習(xí)生聘用合同
- 紗線采購合同模板
- 個人過橋資金借款合同
- 工程施工合同協(xié)議書范文
- 暖通工程承包合同
- 環(huán)境衛(wèi)生承包合同范本
- 長期供貨合同范本
- 2024-2025學(xué)年北京市豐臺區(qū)高三語文上學(xué)期期末試卷及答案解析
- 公路電子收費系統(tǒng)安裝合同范本
- 2021年全國高考物理真題試卷及解析(全國已卷)
- 綜合實踐項目 制作水族箱飼養(yǎng)淡水魚 教學(xué)設(shè)計-2024-2025學(xué)年魯科版生物六年級上冊
- 建設(shè)用地土壤污染風(fēng)險評估技術(shù)導(dǎo)則(HJ 25.3-2019代替HJ 25.3-2014)
- JJG 692-2010無創(chuàng)自動測量血壓計
- 徐州市2023-2024學(xué)年八年級上學(xué)期期末地理試卷(含答案解析)
- 飲料對人體的危害1
- 數(shù)字經(jīng)濟(jì)學(xué)導(dǎo)論-全套課件
- 中考記敘文閱讀
- 產(chǎn)科溝通模板
評論
0/150
提交評論