本發(fā)明涉及圖像視頻領(lǐng)域,特別涉及一種基于學(xué)習(xí)的圖像超分辨率重構(gòu)方法。
背景技術(shù):
圖像超分辨率重構(gòu)(superresolution,sr)是指利用計(jì)算機(jī)將一幅低分辨率圖像(lowresolution,lr)或圖像序列進(jìn)行處理,恢復(fù)出高分辨率圖像(highresolution,hr)的一種圖像處理技術(shù)。hr意味著圖像具有高像素密度,可以提供更多的細(xì)節(jié),這些細(xì)節(jié)往往在應(yīng)用中起到關(guān)鍵作用。
隨著計(jì)算機(jī)技術(shù)發(fā)展,人們?cè)谲娛骂I(lǐng)域、衛(wèi)星遙感成像領(lǐng)域及醫(yī)學(xué)等領(lǐng)域?qū)Ω叻直媛蕡D像的需求越來(lái)越迫切,然而由于傳統(tǒng)設(shè)備在成像過(guò)程中會(huì)受到系統(tǒng)模糊、大氣運(yùn)動(dòng)、噪聲、成像環(huán)境等各種因素影響,導(dǎo)致獲取圖像分辨率較低,難以滿(mǎn)足特定需求。若通過(guò)硬件設(shè)備來(lái)提升分辨率這種傳統(tǒng)手段,會(huì)造成設(shè)備體積增大、制造成本高、加工困難等一系列新問(wèn)題。因此,通過(guò)軟件技術(shù)來(lái)提升圖像分辨率成為新的方式。
目前的超分辨率重構(gòu)算法主要有基于插值的重構(gòu)算法、基于模型的重構(gòu)算法和基于學(xué)習(xí)的重構(gòu)算法?;诓逯档闹貥?gòu)算法利用鄰近像素點(diǎn)的灰度值來(lái)產(chǎn)生待插值像素點(diǎn)的灰度值,原理簡(jiǎn)單、效率高,但是在邊緣等不連續(xù)處效果不理想。從重構(gòu)圖像質(zhì)量而言,基于學(xué)習(xí)的重構(gòu)算法效果更佳,可以顯著提升圖像分辨率。基于學(xué)習(xí)的超分辨率重構(gòu)算法雖然效果好,但是由于需要訓(xùn)練大量的先驗(yàn)信息,因而重構(gòu)效率卻比較低,無(wú)法實(shí)現(xiàn)實(shí)時(shí)超分辨率重構(gòu)的目的。
技術(shù)實(shí)現(xiàn)要素:
因此,為解決現(xiàn)有技術(shù)存在的技術(shù)缺陷和不足,本發(fā)明提出一種基于學(xué)習(xí)的圖像超分辨率重構(gòu)方法。
具體地,本發(fā)明一個(gè)實(shí)施例提出的一種基于學(xué)習(xí)的圖像超分辨率重構(gòu)方法,包括:
根據(jù)退化模型模糊和n倍下采樣,處理第一分辨率圖像形成第二分辨率圖像;
訓(xùn)練所述第一分辨率圖像和所述第二分辨率圖像形成圖像學(xué)習(xí)字典;
對(duì)待重構(gòu)圖像進(jìn)行區(qū)塊劃分形成多個(gè)待重構(gòu)圖像塊;
利用邊緣提取算法,根據(jù)所述第二分辨率圖像確定圖像信息量固定閾值;
若所述待重構(gòu)圖像塊的信息量大于所述固定閾值,根據(jù)所述圖像學(xué)習(xí)字典對(duì)所述待重構(gòu)圖像塊進(jìn)行圖像重構(gòu)以形成第一重構(gòu)子區(qū)域;若否,根據(jù)雙三次插值算法對(duì)所述待重構(gòu)圖像塊進(jìn)行圖像重構(gòu)以形成第二重構(gòu)子區(qū)域;
對(duì)所述第一重構(gòu)子區(qū)域和所述第二重構(gòu)子區(qū)域進(jìn)行圖像拼接得到超分辨率重構(gòu)圖像。
在本發(fā)明的一個(gè)實(shí)施例中,訓(xùn)練所述第一分辨率圖像和所述第二分辨率圖像形成圖像學(xué)習(xí)字典,包括:
根據(jù)特征提取算法提取圖像特征,獲得第一分辨率圖像特征信息和第二分辨率圖像特征信息;
根據(jù)k-svd算法,對(duì)所述第一分辨率圖像特征信息和所述第二分辨率圖像特征信息進(jìn)行訓(xùn)練以獲得第一圖像學(xué)習(xí)字典和第二圖像學(xué)習(xí)字典。
在本發(fā)明的一個(gè)實(shí)施例中,在步驟3之前,還包括:
對(duì)所述待重構(gòu)圖像去噪聲處理和去模糊處理。
在本發(fā)明的一個(gè)實(shí)施例中,利用邊緣提取算法,根據(jù)所述第二分辨率圖像確定圖像信息量固定閾值,包括:
將所述第二分辨率圖像按照設(shè)定長(zhǎng)寬進(jìn)行區(qū)塊劃分形成第二分辨率圖像塊,利用邊緣提取算法提取所述第二分辨率圖像塊的邊緣信息量;
根據(jù)所述第二分辨率圖像塊的邊緣信息量的分布情況選取x個(gè)所述邊緣信息量作為候選信息量閾值;
根據(jù)超分辨率算法的重構(gòu)時(shí)間以及對(duì)應(yīng)重構(gòu)形成的圖像分辨率,從x個(gè)所述候選信息量閾值中選擇一個(gè)作為所述固定閾值。
在本發(fā)明的一個(gè)實(shí)施例中,根據(jù)所述圖像學(xué)習(xí)字典對(duì)所述待重構(gòu)圖像塊進(jìn)行圖像重構(gòu)以形成第一重構(gòu)子區(qū)域之前,還包括:
對(duì)所述待重構(gòu)圖像塊進(jìn)行kpca降維處理。
在本發(fā)明的一個(gè)實(shí)施例中,對(duì)所述待重構(gòu)圖像塊進(jìn)行kpca降維處理,包括:
對(duì)所述待重構(gòu)圖像塊進(jìn)行濾波操作,采用2*2的濾波器組提取高頻特征以獲得所述待重構(gòu)圖像塊的高頻信息,根據(jù)所述高頻信息進(jìn)行所述kpca降維處理。
在本發(fā)明的一個(gè)實(shí)施例中,所述2*2的濾波器組為f={f1,f2,f3,f4},采用四個(gè)不同的濾波器組成,具體為:
f1=[1,-1],f2=f1t
f3=log,f3=f3t
其中,t表示矩陣轉(zhuǎn)置操作,log代表一種5×5的二維濾波算子。
在本發(fā)明的一個(gè)實(shí)施例中,所述kpca降維公式為:
其中,y表示降維后的低維數(shù)據(jù),φ為映射矩陣。
在本發(fā)明的一個(gè)實(shí)施例中,根據(jù)所述圖像學(xué)習(xí)字典對(duì)所述待重構(gòu)圖像塊進(jìn)行圖像重構(gòu)以形成第一重構(gòu)子區(qū)域,包括:
將稀疏表示系數(shù)與所述第一圖像學(xué)習(xí)字典相乘,形成所述第一重構(gòu)子區(qū)域。
在本發(fā)明的一個(gè)實(shí)施例中,所述稀疏表示系數(shù)為通過(guò)omp算法求解降維后的所述待重構(gòu)圖像塊在第二圖像學(xué)習(xí)字典下的稀疏表示系數(shù)。
基于此,本發(fā)明具備如下優(yōu)點(diǎn):
由于本發(fā)明基于學(xué)習(xí)的圖像超分辨率重構(gòu)算法實(shí)現(xiàn)圖像實(shí)時(shí)分辨率重構(gòu),成本低,不需要改變成像系統(tǒng)硬件結(jié)構(gòu)。
本發(fā)明對(duì)學(xué)習(xí)字典進(jìn)行處理,有效減少字典原子個(gè)數(shù)的同時(shí),仍能夠線(xiàn)性表示初始化字典的所有信息,從而提高了字典的訓(xùn)練效率。
本發(fā)明對(duì)待重構(gòu)圖像進(jìn)行分塊管理,通過(guò)設(shè)定信息量閾值的重構(gòu)策略對(duì)圖像塊進(jìn)行信息量判斷,根據(jù)圖像信息量的大小選擇圖像重構(gòu)的方法,大幅提升了算法的計(jì)算效率。
通過(guò)以下參考附圖的詳細(xì)說(shuō)明,本發(fā)明的其它方面和特征變得明顯。但是應(yīng)當(dāng)知道,該附圖僅僅為解釋的目的設(shè)計(jì),而不是作為本發(fā)明的范圍的限定,這是因?yàn)槠鋺?yīng)當(dāng)參考附加的權(quán)利要求。還應(yīng)當(dāng)知道,除非另外指出,不必要依比例繪制附圖,它們僅僅力圖概念地說(shuō)明此處描述的結(jié)構(gòu)和流程。
附圖說(shuō)明
下面將結(jié)合附圖,對(duì)本發(fā)明的具體實(shí)施方式進(jìn)行詳細(xì)的說(shuō)明。
圖1為本發(fā)明實(shí)施例提供的一種基于學(xué)習(xí)的圖像超分辨率重構(gòu)方法的示意圖。
具體實(shí)施方式
為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式做詳細(xì)的說(shuō)明。
實(shí)施例一
請(qǐng)參見(jiàn)圖1,圖1為本發(fā)明實(shí)施例提供的一種基于學(xué)習(xí)的圖像超分辨率重構(gòu)方法的示意圖。該方法包括如下步驟:
步驟1、根據(jù)退化模型模糊和n倍下采樣,處理第一分辨率圖像形成第二分辨率圖像;
步驟2、訓(xùn)練所述第一分辨率圖像和所述第二分辨率圖像形成圖像學(xué)習(xí)字典;
步驟3、對(duì)待重構(gòu)圖像進(jìn)行區(qū)塊劃分形成多個(gè)待重構(gòu)圖像塊;
步驟4、利用邊緣提取算法,根據(jù)所述第二分辨率圖像確定圖像信息量固定閾值;
步驟5、若所述待重構(gòu)圖像塊的信息量大于所述固定閾值,根據(jù)所述圖像學(xué)習(xí)字典對(duì)所述待重構(gòu)圖像塊進(jìn)行圖像重構(gòu)以形成第一重構(gòu)子區(qū)域;若否,根據(jù)雙三次插值算法對(duì)所述待重構(gòu)圖像塊進(jìn)行圖像重構(gòu)以形成第二重構(gòu)子區(qū)域;
步驟6、對(duì)所述第一重構(gòu)子區(qū)域和所述第二重構(gòu)子區(qū)域進(jìn)行圖像拼接得到超分辨率重構(gòu)圖像。
其中,對(duì)于步驟2,可以包括:
根據(jù)特征提取算法提取圖像特征,獲得第一分辨率圖像特征信息和第二分辨率圖像特征信息;
根據(jù)k-svd算法,對(duì)所述第一分辨率圖像特征信息和所述第二分辨率圖像特征信息進(jìn)行訓(xùn)練以獲得第一圖像學(xué)習(xí)字典和第二圖像學(xué)習(xí)字典。
其中,在于步驟3之前,還可以包括:
對(duì)所述待重構(gòu)圖像去噪聲處理和去模糊處理。
其中,對(duì)于步驟4,可以包括:
將所述第二分辨率圖像按照設(shè)定長(zhǎng)寬進(jìn)行區(qū)塊劃分形成第二分辨率圖像塊,利用邊緣提取算法提取所述第二分辨率圖像塊的邊緣信息量;
根據(jù)所述第二分辨率圖像塊的邊緣信息量的分布情況選取x個(gè)所述邊緣信息量作為候選信息量閾值;
根據(jù)超分辨率算法的重構(gòu)時(shí)間以及對(duì)應(yīng)重構(gòu)形成的圖像分辨率,從x個(gè)所述候選信息量閾值中選擇一個(gè)作為所述固定閾值。
其中,在于步驟5之前,還可以包括:
對(duì)所述待重構(gòu)圖像塊進(jìn)行kpca降維處理。
進(jìn)一步,對(duì)于對(duì)所述待重構(gòu)圖像塊進(jìn)行kpca降維處理,可以包括:
對(duì)所述待重構(gòu)圖像塊進(jìn)行濾波操作,采用2*2的濾波器組提取高頻特征以獲得所述待重構(gòu)圖像塊的高頻信息,根據(jù)所述高頻信息進(jìn)行所述kpca降維處理。
進(jìn)一步地,所述2*2的濾波器組為f={f1,f2,f3,f4},采用四個(gè)不同的濾波器組成,具體為:
f1=[1,-1],f2=f1t
f3=log,f3=f3t
其中,t表示矩陣轉(zhuǎn)置操作,log代表一種5×5的二維濾波算子。
進(jìn)一步地,所述kpca降維公式為:
其中,y表示降維后的低維數(shù)據(jù),φ為映射矩陣。
其中,對(duì)于步驟5,可以包括:
將稀疏表示系數(shù)與所述第一圖像學(xué)習(xí)字典相乘,形成所述第一重構(gòu)子區(qū)域。
進(jìn)一步地,對(duì)于步驟5中稀疏表示系數(shù)為所述稀疏表示系數(shù)為通過(guò)omp算法求解降維后的所述待重構(gòu)圖像塊在第二圖像學(xué)習(xí)字典下的稀疏表示系數(shù)。
本發(fā)明的有益效果具體為:
1、本發(fā)明實(shí)施例提出建立圖像庫(kù)訓(xùn)練字典的方法,將圖像集離線(xiàn)訓(xùn)練字典庫(kù),得到高分辨率圖像與低分辨率圖像的映射關(guān)系,優(yōu)化圖像重構(gòu)步驟,有效減少算法運(yùn)行時(shí)間,具有自適應(yīng)性和高效性。
2、本發(fā)明中算法中的閾值是基于大量對(duì)比試驗(yàn)后進(jìn)行優(yōu)化固定,在處過(guò)程中不需要進(jìn)行改變,在不影響圖像重構(gòu)效果的情況下,有效的提高了圖像重構(gòu)效率。
3、由于本發(fā)明基于學(xué)習(xí)的超分辨率重構(gòu)算法實(shí)現(xiàn)圖像實(shí)時(shí)分辨率重構(gòu),因此不需要改變成像系統(tǒng)硬件結(jié)構(gòu),具有成本低,經(jīng)濟(jì)效益高的優(yōu)點(diǎn)。
實(shí)施例二
本實(shí)施例在上述實(shí)施例的基礎(chǔ)上,對(duì)本發(fā)明的技術(shù)方案進(jìn)行詳細(xì)描述。具體地,該方法包括:
步驟1:利用大量高分辨率圖像(即第一分辨率圖像)樣本,將高分辨率圖像按照修正后的退化模型進(jìn)行模糊處理和n倍下采樣處理,得到相應(yīng)的低分辨率圖像(即第二分辨率圖像)樣本。
步驟2:對(duì)步驟1中獲得的低分辨率圖像,通過(guò)特征提取算法提取圖像特征,得到空間目標(biāo)的高分辨率特征信息xs(即第一分辨率特征信息)和低分辨率特征信息ys(即第二分辨率特征信息)。
步驟3:利用k-svd算法,對(duì)特征信息進(jìn)行聯(lián)合訓(xùn)練,得到高分辨率圖像學(xué)習(xí)字典dh(即第一圖像學(xué)習(xí)字典)和低分辨率圖像學(xué)習(xí)字典dl(即第二圖像學(xué)習(xí)字典)。
步驟3a):訓(xùn)練低分辨率圖像學(xué)習(xí)字典。基字典φ選擇過(guò)完備dct字典,利用稀疏k-svd算法求解:
則低分辨率圖像學(xué)習(xí)字典dl=φw。
步驟3b):計(jì)算高分辨率圖像學(xué)習(xí)字典。假設(shè)高分辨率圖像塊,低分辨率圖像塊在相應(yīng)的高分辨率圖像學(xué)習(xí)字典,低分辨率圖像學(xué)習(xí)字典下具有相同的稀疏表示系數(shù)a,則可以通過(guò)最小化以下公式中的逼近誤差來(lái)計(jì)算高分辨率字典dh:
使用偽逆求解:
dh=xsa+=xsat(aat)-1(3)
其中,上標(biāo)“+”表示偽逆。
步驟4:對(duì)待重構(gòu)的低分辨率圖像進(jìn)行預(yù)處理,其中主要包括圖像去噪、圖像去模糊和樣本分塊操作。其處理步驟為:
步驟4a):對(duì)步驟1中得到的低分辨率圖像去噪聲;
步驟4b):對(duì)步驟4a)得到的低分辨率圖像去模糊,得到待重構(gòu)低分辨率圖像;
步驟4c):對(duì)待重構(gòu)低分辨率圖像進(jìn)行區(qū)塊劃分,將整幅圖像按照固定長(zhǎng)寬進(jìn)行分割保存;
步驟5:對(duì)待重構(gòu)低分辨率圖像塊進(jìn)行分塊管理,通過(guò)設(shè)定信息量閾值的重構(gòu)策略對(duì)待重構(gòu)圖像塊的信息量判斷,根據(jù)圖像信息量的大小選擇待重構(gòu)圖像重構(gòu)的方法,具體處理步驟如下:
步驟5a):將步驟1得到的大量低分辨率圖像樣本進(jìn)行區(qū)塊分割,低分辨率圖像塊的長(zhǎng)寬同步驟4c;利用邊緣提取算法提取低分辨率圖像塊邊緣信息,統(tǒng)計(jì)各低分辨率圖像塊的信息量及所有圖像塊的信息量分布情況;根據(jù)信息量分布選擇若干具有代表性的信息量數(shù)值作為候選閾值,通過(guò)對(duì)照試驗(yàn)比較不同候選閾值對(duì)于超分辨率算法重構(gòu)質(zhì)量及速度的影響,根據(jù)項(xiàng)目需求確定最合適的候選閾值作為信息量固定閾值。
步驟5b):輸入待重構(gòu)的低分辨率圖像塊,采用邊緣提取算法提取圖像塊邊緣信息,當(dāng)改圖像塊信息量不超過(guò)步驟5a)確定的固定閾值時(shí),采用雙三次插值算法進(jìn)行重構(gòu);否則,采用基于學(xué)習(xí)的超分辨率重構(gòu)算法進(jìn)行圖像重構(gòu)。
該策略保證了圖像細(xì)節(jié)的重構(gòu)質(zhì)量,同時(shí)大幅提升了算法的計(jì)算速度。
其中,對(duì)于步驟5a),信息量閾值的設(shè)置還可以使用如下的實(shí)施方式:
s1:將大量低分辨率圖像樣本進(jìn)行區(qū)塊分割獲得圖像塊;
s2:利用邊緣提取算法提取低分辨率圖像塊邊緣信息,統(tǒng)計(jì)各低分辨率圖像塊的信息量及所有低分辨率圖像塊的信息量分布情況;
s3:選取低分辨率圖像塊中信息量最高的值,獲取該低分辨率圖像塊的像素值為f1,取f=f1/4,則f*40%<=閾值<=f*60%,取該范圍內(nèi)若干代表閾值,例如,可以取如下代表閾值:f*40%,f*45%,f*50%,f*55%,f*60%,計(jì)算每個(gè)閾值點(diǎn)對(duì)應(yīng)的基于學(xué)習(xí)的稀疏表示圖像超分辨率重構(gòu)算法的重構(gòu)時(shí)間和重構(gòu)后圖像的分辨率,可以根據(jù)主觀評(píng)價(jià)和psnr來(lái)判斷。然后根據(jù)使用者需求從若干代表閾值中確定固定閾值作為信息量閾值,如使用者需求更注重時(shí)間,那就調(diào)高比例,時(shí)間就快;相反使用者如果注重重構(gòu)效果,那就調(diào)低比例,帶來(lái)的就是重構(gòu)效果較好但時(shí)間較長(zhǎng)。例如,經(jīng)計(jì)算后f*50%最符合使用者需求,則取信息量閾值=f*50%。
s4:輸入待重構(gòu)的低分辨率圖像塊,采用邊緣提取算法提取圖像塊邊緣信息,當(dāng)該圖像塊信息量不超過(guò)步驟s3確定的信息量閾值時(shí)該圖像塊為低信息量圖像塊;否則,為高信息量圖像塊。優(yōu)選地,所述邊緣提取算法為canny算子邊緣檢測(cè)算法
步驟6:針對(duì)待重構(gòu)圖像塊進(jìn)行圖像濾波操作,進(jìn)行高頻特征提取,采用2*2的濾波器組,所用濾波器組為f={f1,f2,f3,f4},其由四個(gè)不同的濾波器組成,分別為:
f1=[1,-1],f2=f1t(4)
f3=log,f3=f3t(5)
其中上角標(biāo)t表示矩陣轉(zhuǎn)置操作,log代表一種5×5的二維濾波算子。經(jīng)過(guò)高頻特征提取操作后獲得圖像塊高頻信息,以xl表示。
步驟7:對(duì)采用超分辨率重構(gòu)算法的圖像塊進(jìn)行kpca降維,實(shí)現(xiàn)高維數(shù)據(jù)壓縮。降維步驟如下:
步驟7a):將高維數(shù)據(jù)集合表示為x={x1,x2,x3,…,xm},xi∈rd,kpca算法經(jīng)過(guò)非線(xiàn)性映射函數(shù)
x→φ(x)∈f,其中f是特征空間,這樣便能將每個(gè)數(shù)據(jù)x映射到一個(gè)高維特征空間。
步驟7b):核函數(shù)通過(guò)φ將進(jìn)行一個(gè)點(diǎn)x到f的對(duì)應(yīng)操作,并且由此獲得的f數(shù)據(jù)滿(mǎn)足中心化的條件,即:
其中,φ為映射矩陣,可以實(shí)現(xiàn)點(diǎn)x到f的映射,xμ為樣本圖像特征。
則特征空間f中的協(xié)方差矩陣c為:
其中,m為樣本總數(shù)。
步驟7c):求c的特征值λ≥0以及特征向量v,v=1,2,…,m
v∈f\{0},cv=λv(8)
則有
(φ(xv)·cv)=λ(φ(xv)v)(9)
考慮到所有的特征向量可表示為φ(x1),φ(x2),…,φ(xm)的線(xiàn)性組合,即:
則有:
式中,v=1,2,3,…,m,定義m×m維矩陣kμv
kμv:=(φ(xμ)·φ(xv))(12)
步驟7d):求解上式得到特征值及特征向量,對(duì)于數(shù)據(jù)集合在特征向量空間vk的投影可以寫(xiě)成:
那么,數(shù)據(jù)被投影到協(xié)方差矩陣的特征向量vk上,投影結(jié)果(也就是低維數(shù)據(jù)的表示y)可以表示為:
步驟8:對(duì)經(jīng)過(guò)降維壓縮后的圖像塊數(shù)據(jù)進(jìn)行超分辨率重構(gòu),具體步驟如下:
步驟8a):采用omp算法求解待重構(gòu)子區(qū)域y在低分辨率圖像學(xué)習(xí)字典dl下的稀疏表示系數(shù)β,即求解如下方程:
其中t0為給定的稀疏度,βi為矩陣β中的子元素。
步驟8b):將求得的稀疏表示系數(shù)β與高分辨率圖像學(xué)習(xí)字典dh相乘,得到重構(gòu)的超分辨率重構(gòu)子區(qū)域(即第一子區(qū)域),即:
x=dhβ(16)
其中x為求得的超分辨率重構(gòu)子區(qū)域。
步驟9:對(duì)步驟8中求得的超分辨率重構(gòu)子區(qū)域以及步驟5中雙三次插值算法進(jìn)行重構(gòu)形成的重構(gòu)子區(qū)域進(jìn)行圖像拼接,得到超分辨率重構(gòu)圖像。
綜上所述,本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明基于學(xué)習(xí)的圖像超分辨率重構(gòu)方法進(jìn)行了闡述,以上實(shí)施例的說(shuō)明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實(shí)施方式及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說(shuō)明書(shū)內(nèi)容不應(yīng)理解為對(duì)本發(fā)明的限制,本發(fā)明的保護(hù)范圍應(yīng)以所附的權(quán)利要求為準(zhǔn)。