本發(fā)明屬于數(shù)字圖像處理領(lǐng)域,特別涉及基于稀疏表示的SAR圖像去噪方法。
背景技術(shù):
合成孔徑雷達(dá)(Synthetic Aperture Radar,SAR)可以穿透性的觀察視場(chǎng),能夠自動(dòng)識(shí)別目標(biāo),在惡劣的環(huán)境下也能獲得較高的成像分辨率。在軍事偵查、海洋監(jiān)測(cè)、測(cè)繪等應(yīng)用領(lǐng)域具有很高的應(yīng)用價(jià)值。由于SAR系統(tǒng)使用相干的電磁波成像,導(dǎo)致SAR圖像中存在大量的相干斑點(diǎn)噪聲,嚴(yán)重影響對(duì)SAR圖像的理解和解譯,因此相干斑點(diǎn)噪聲的抑制研究對(duì)SAR圖像的可解譯性和后續(xù)應(yīng)用,具有重要的意義。
國內(nèi)外許多專家學(xué)者進(jìn)行了大量有益的探索,其中利用過完備字典稀疏表示方法成為解決問題的一種較為優(yōu)秀的手段。過完備字典的稀疏表示方法有兩個(gè)關(guān)鍵性的步驟:構(gòu)建過完備字典和圖像稀疏編碼算法。字典有基于小波變換、Gabor變換、Curvelet變換等的固定字典和基于MOD、RL-DLA、KSVD等算法訓(xùn)練得到的學(xué)習(xí)字典兩種形式。常見的稀疏編碼方法有匹配追蹤、基追蹤、框架方法和正交匹配追蹤方法。其中Michal Aharon提出的KSVD字典學(xué)習(xí)算法,自適應(yīng)訓(xùn)練字典,在去除SAR圖像斑點(diǎn)噪聲時(shí)能夠取得比固定字典更好的效果。但是現(xiàn)階段的稀疏表示方法大都存在以下缺點(diǎn):用過完備字典稀疏表示圖像的每一個(gè)成分其實(shí)質(zhì)是一個(gè)NP難問題,很難得到較為稀疏的字典系數(shù);字典訓(xùn)練時(shí)間成本較大,字典原子更新較為困難。因此,為了擺脫上述困難,急需一種自適應(yīng)稀疏編碼的新方法,
技術(shù)實(shí)現(xiàn)要素:
:
為了克服上述背景技術(shù)的缺陷,本發(fā)明提供一種SAR圖像的去噪方法,提高訓(xùn)練字典時(shí)字典原子更新的合理性和訓(xùn)練字典表示圖像成分的稀疏性。
為了解決上述技術(shù)問題本發(fā)明的所采用的技術(shù)方案為:
一種SAR圖像的去噪方法:
步驟1,選取SAR圖像訓(xùn)練樣本集并初始化離散余弦變換字典DCT字典;
步驟2,獲取表示當(dāng)前訓(xùn)練樣本的稀疏系數(shù)與表示訓(xùn)練樣本殘差的稀疏系數(shù)的集合,并對(duì)集合中各個(gè)稀疏系數(shù)由大到小進(jìn)行排序,對(duì)前K個(gè)稀疏系數(shù)對(duì)應(yīng)的字典原子進(jìn)行求解,得到表示訓(xùn)練樣本的稀疏系數(shù);
步驟3,利用重構(gòu)訓(xùn)練樣本的誤差最大項(xiàng)對(duì)應(yīng)的訓(xùn)練樣本或者是加權(quán)誤差的歸一化更新字典原子;
步驟4,去除字典中相關(guān)性大于預(yù)設(shè)上限或者對(duì)應(yīng)稀疏系數(shù)小于預(yù)設(shè)下限的原子得到自適應(yīng)學(xué)習(xí)字典。
較佳地,步驟1包括:輸入所述SAR圖像,隨機(jī)選擇所述SAR圖像的像元中的80%個(gè)像元的集合作為訓(xùn)練樣本集,并創(chuàng)建離散余弦變換字典DCT作為初始化字典。
較佳地,步驟2具體包括:
步驟21,計(jì)算訓(xùn)練樣本的殘差Reidual和初始化字典的相似性,記錄相似性較大的前兩個(gè)字典原子;
步驟22,計(jì)算上一循環(huán)表示訓(xùn)練樣本所使用的字典原子與上一步驟獲得兩個(gè)原子組成矩陣的偽逆矩陣,左乘訓(xùn)練樣本的殘差得到表示殘差的稀疏系數(shù);
步驟23,計(jì)算上一循環(huán)表示訓(xùn)練樣本所使用的字典原子對(duì)應(yīng)的稀疏系數(shù)與表示殘差的稀疏系數(shù)的和,選取最大的前K個(gè)稀疏系數(shù)對(duì)應(yīng)的字典原子Cell;
步驟24,計(jì)算字典原子Cell組成矩陣的偽逆矩陣,左乘訓(xùn)練樣本得到表示訓(xùn)練樣本的稀疏系數(shù);
步驟25,記錄所采用的字典原子及其對(duì)應(yīng)的稀疏系數(shù),根據(jù)當(dāng)前選取的字典原子及其對(duì)應(yīng)的稀疏系數(shù)更新訓(xùn)練樣本的殘差;
步驟26,判斷當(dāng)前選擇的字典原子是否能夠稀疏的表示訓(xùn)練樣本,若是,則進(jìn)入步驟27,若否,則回到步驟23;
步驟27,保存初始化DCT字典表示訓(xùn)練樣本的稀疏系數(shù)。
較佳地,K的初始值為0,每次迭代值取K的值為Min(K+2,T),其中T為迭代后選取字典原子的個(gè)數(shù)。
較佳地,步驟3具體包括:
步驟31,判斷初始化字典的原子對(duì)應(yīng)的稀疏系數(shù)是否全部為零,若是,則進(jìn)入32,若否,轉(zhuǎn)步驟33;
步驟32,計(jì)算當(dāng)前字典及其對(duì)應(yīng)稀疏系數(shù)重構(gòu)訓(xùn)練樣本集的誤差,選擇誤差最大項(xiàng)對(duì)應(yīng)的訓(xùn)練樣本,歸一化后進(jìn)行更新字典原子;
步驟33,計(jì)算未使用該字典原子重構(gòu)訓(xùn)練樣本的誤差Error,并以該字典原子對(duì)應(yīng)的稀疏系數(shù)對(duì)誤差Error進(jìn)行加權(quán)得到加權(quán)誤差ErrorP;
步驟34,利用歸一化加權(quán)誤差ErrorP進(jìn)行更新字典原子;
步驟35,樣本誤差Error的轉(zhuǎn)置乘以更新后字典原子得到更新后的稀疏系數(shù)。
較佳地,步驟26中判斷當(dāng)前選擇的字典原子是否能夠稀疏的表示訓(xùn)練樣本具體是指:計(jì)算連續(xù)兩次循環(huán)訓(xùn)練樣本殘差的變化量,若變化量小于10-2則表示當(dāng)前選擇的字典原子能夠稀疏的表示訓(xùn)練樣本,若變化量大于10-2,表示當(dāng)前選擇的字典原子不能夠稀疏的表示訓(xùn)練樣本。
較佳地,步驟4中的預(yù)設(shè)上限為0.99,預(yù)設(shè)下限為10-7。
較佳地,步驟4包括:利用當(dāng)前字典重構(gòu)訓(xùn)練樣本集誤差最大項(xiàng)對(duì)應(yīng)訓(xùn)練樣本的歸一化結(jié)果更新字典中相關(guān)性較大或者對(duì)應(yīng)稀疏系數(shù)過小的字典原子;字典更新完成時(shí),保存根據(jù)訓(xùn)練樣本學(xué)習(xí)得到的過完備字典。
本發(fā)明的有益效果在于:本發(fā)明基于自適應(yīng)稀疏表示的SAR圖像去噪方法主要是通過在SAR影像中隨機(jī)選擇部分區(qū)域作為訓(xùn)練樣本集,初始化離散余弦變換字典。選擇和訓(xùn)練樣本較相似的前兩個(gè)字典原子,利用表示當(dāng)前訓(xùn)練樣本的字典原子和新選擇的兩個(gè)字典原子求解其偽逆矩陣,計(jì)算偽逆矩陣與訓(xùn)練樣本殘差的乘積得到表示訓(xùn)練樣本殘差的稀疏系數(shù),選擇表示訓(xùn)練樣本殘差與表示當(dāng)前訓(xùn)練樣本的稀疏系數(shù)和最大的前K個(gè)稀疏系數(shù)對(duì)應(yīng)的字典原子。計(jì)算K個(gè)字典原子組成矩陣的偽逆矩陣與訓(xùn)練樣本的乘積,得到表示訓(xùn)練樣本的稀疏系數(shù)。記錄當(dāng)前選擇的字典原子及其稀疏系數(shù),更新訓(xùn)練樣本的殘差;當(dāng)達(dá)到重構(gòu)訓(xùn)練樣本的標(biāo)準(zhǔn)時(shí)記錄表示訓(xùn)練樣本的稀疏系數(shù)。根據(jù)字典原子對(duì)應(yīng)的稀疏系數(shù)是否全部為零,選擇對(duì)應(yīng)的更新字典原子的方式。如果字典原子沒有被訓(xùn)練樣本集使用過,利用當(dāng)前字典重構(gòu)訓(xùn)練樣本集誤差最大項(xiàng)對(duì)應(yīng)訓(xùn)練樣本的歸一化結(jié)果更新字典原子;如果字典原子被訓(xùn)練樣本集使用,則計(jì)算未使用該字典原子重構(gòu)訓(xùn)練樣本集的誤差,以該原子對(duì)應(yīng)的稀疏系數(shù)為權(quán)重對(duì)誤差進(jìn)行加權(quán),利用加權(quán)誤差的歸一化進(jìn)行更新字典原子。利用當(dāng)前字典重構(gòu)訓(xùn)練樣本集誤差最大項(xiàng)對(duì)應(yīng)訓(xùn)練樣本的歸一化結(jié)果更新字典中相關(guān)性較大或者對(duì)應(yīng)稀疏系數(shù)過小的字典原子;字典更新完成時(shí),保存根據(jù)訓(xùn)練樣本學(xué)習(xí)得到的過完備字典。與現(xiàn)有技術(shù)相比本發(fā)明的優(yōu)點(diǎn)包括:利用累加的稀疏系數(shù)最大的前K項(xiàng)對(duì)應(yīng)的字典原子進(jìn)行計(jì)算表示訓(xùn)練樣本的稀疏系數(shù),避免僅僅依靠字典和訓(xùn)練樣本的相似性進(jìn)行選擇字典原子造成字典系數(shù)不夠稀疏的缺點(diǎn),并且加快了求解字典稀疏系數(shù)的速度;利用重構(gòu)訓(xùn)練樣本的誤差最大項(xiàng)對(duì)應(yīng)的訓(xùn)練樣本或者是加權(quán)誤差的歸一化更新字典原子,避免對(duì)誤差矩陣進(jìn)行奇異值分解造成‘超出內(nèi)存’和運(yùn)算量過大的問題;更新字典中相關(guān)性較大或者對(duì)應(yīng)稀疏系數(shù)過小的字典原子,提高了自適應(yīng)學(xué)習(xí)字典的合理性。
附圖說明
圖1為本發(fā)明實(shí)施例的流程圖。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明做進(jìn)一步的說明,本實(shí)施例的一種SAR圖像的去噪方法具體包括以下步驟:
步驟1,選取SAR圖像訓(xùn)練樣本集并初始化離散余弦變換字典(DCT)字典;輸入所述SAR圖像,具體說就是輸入SAR圖像,隨機(jī)選擇SAR圖像的像元中的80%個(gè)所述像元的集合作為訓(xùn)練樣本集,并創(chuàng)建所述離散余弦變換字典DCT作為初始化字典。
步驟2,獲取表示當(dāng)前訓(xùn)練樣本的稀疏系數(shù)與表示訓(xùn)練樣本殘差的稀疏系數(shù)的集合,并對(duì)所述集合中各個(gè)稀疏系數(shù)由大到小進(jìn)行排序,對(duì)前K(初始值為K=0,每次迭代值為Min(K+2,T),T為迭代后選取字典原子的個(gè)數(shù))個(gè)稀疏系數(shù)對(duì)應(yīng)的字典原子進(jìn)行求解,得到表示訓(xùn)練樣本的稀疏系數(shù);
步驟21,計(jì)算訓(xùn)練樣本的殘差(Reidual)和初始化字典的相似性,記錄相似性較大的前兩個(gè)字典原子;
步驟22,計(jì)算上一循環(huán)表示訓(xùn)練樣本所使用的字典原子與上一步驟獲得兩個(gè)原子組成矩陣的偽逆矩陣,左乘訓(xùn)練樣本的殘差得到表示殘差的稀疏系數(shù);
步驟23,計(jì)算上一循環(huán)表示訓(xùn)練樣本所使用的字典原子對(duì)應(yīng)的稀疏系數(shù)與表示殘差的稀疏系數(shù)的和,選取最大的前K個(gè)稀疏系數(shù)對(duì)應(yīng)的字典原子Cell;K的初始值為0,每次迭代值取所述K的值為Min(K+2,T),其中T為迭代后選取字典原子的個(gè)數(shù);
步驟24,計(jì)算字典原子Cell組成矩陣的偽逆矩陣,左乘訓(xùn)練樣本得到表示訓(xùn)練樣本的稀疏系數(shù);
步驟25,記錄所采用的字典原子及其對(duì)應(yīng)的稀疏系數(shù),根據(jù)當(dāng)前選取的字典原子及其對(duì)應(yīng)的稀疏系數(shù)更新訓(xùn)練樣本的殘差;
步驟26,若當(dāng)前選擇的字典原子是否能夠稀疏的表示訓(xùn)練樣本,若是,則進(jìn)入步驟27,若否,則回到所述步驟23;計(jì)算連續(xù)兩次循環(huán)訓(xùn)練樣本殘差的變化量,若變化量小于10-2則表示當(dāng)前選擇的字典原子能夠稀疏的表示訓(xùn)練樣本,若變化量大于10-2,表示當(dāng)前選擇的字典原子不能夠稀疏的表示訓(xùn)練樣本;
步驟27,保存所述初始化DCT字典表示訓(xùn)練樣本的稀疏系數(shù)。
步驟3,利用重構(gòu)訓(xùn)練樣本的誤差最大項(xiàng)對(duì)應(yīng)的訓(xùn)練樣本或者是加權(quán)誤差的歸一化更新字典原子,具體包括:
步驟31,判斷初始化字典的原子對(duì)應(yīng)的稀疏系數(shù)是否全部為零,若是,則進(jìn)入32,若否,轉(zhuǎn)步驟33;
步驟32,計(jì)算當(dāng)前字典及其對(duì)應(yīng)稀疏系數(shù)重構(gòu)訓(xùn)練樣本集的誤差,選擇誤差最大項(xiàng)對(duì)應(yīng)的訓(xùn)練樣本,歸一化后進(jìn)行更新字典原子;
步驟33,計(jì)算未使用該字典原子重構(gòu)訓(xùn)練樣本的誤差Error,并以該字典原子對(duì)應(yīng)的稀疏系數(shù)對(duì)誤差Error進(jìn)行加權(quán)得到加權(quán)誤差ErrorP;
步驟34,利用歸一化加權(quán)誤差ErrorP進(jìn)行更新字典原子;
步驟35,樣本誤差Error的轉(zhuǎn)置乘以更新后字典原子得到更新后的稀疏系數(shù)。
步驟4,去除字典中相關(guān)性大于預(yù)設(shè)上限0.99或者對(duì)應(yīng)稀疏系數(shù)小于預(yù)設(shè)下限10-7的原子得到自適應(yīng)學(xué)習(xí)字典。
利用當(dāng)前字典重構(gòu)訓(xùn)練樣本集誤差最大項(xiàng)對(duì)應(yīng)訓(xùn)練樣本的歸一化結(jié)果更新字典中相關(guān)性較大或者對(duì)應(yīng)稀疏系數(shù)過小的字典原子;字典更新完成時(shí),保存根據(jù)訓(xùn)練樣本學(xué)習(xí)得到的過完備字典。
以下為應(yīng)用本實(shí)施例對(duì)具體SAR圖像進(jìn)行去燥處理的舉例說明:
步驟S1,輸入RADASAT2衛(wèi)星C波段HH極化,大小為1024x1024的SAR圖像,從中隨機(jī)選取訓(xùn)練樣本集;創(chuàng)建離散余弦變換字典(DCT)作為初始化字典,字典大小為144x576,應(yīng)用本發(fā)明的技術(shù)路線,試圖根據(jù)輸入圖像自適應(yīng)的學(xué)習(xí)得到過完備字典,并應(yīng)用學(xué)習(xí)得到的過完備字典重構(gòu)輸入圖像;
步驟S2,計(jì)算初始化字典的轉(zhuǎn)置與訓(xùn)練樣本殘差Residual(初始值為訓(xùn)練樣本的值Y)的乘積得到字典原子與樣本殘差相似性矩陣,記錄相似性較大的前兩個(gè)字典原子Cell0;
步驟S3,計(jì)算表示當(dāng)前訓(xùn)練樣本的字典原子Cell與Cell0組成矩陣的偽逆矩陣,偽逆矩陣與訓(xùn)練樣本殘差的乘積得到表示樣本殘差的稀疏系數(shù)B0;
步驟S4,計(jì)算表示當(dāng)前訓(xùn)練樣本的字典原子對(duì)應(yīng)的稀疏系數(shù)與B0的和,選取較大的前K個(gè)稀疏系數(shù)對(duì)應(yīng)的字典原子Cell;
步驟S5,計(jì)算字典原子Cell組成矩陣的偽逆矩陣,偽逆矩陣與訓(xùn)練樣本的乘積得到表示訓(xùn)練樣本的稀疏系數(shù)B;
步驟S6,記錄本次循環(huán)所采用的字典原子Cell及其對(duì)應(yīng)的稀疏系數(shù)B,更新訓(xùn)練樣本的殘差Residual=Y(jié)-Cell*B;
步驟S7,計(jì)算連續(xù)兩次循環(huán)訓(xùn)練樣本殘差的變化向量,如果變化向量的膜小于10-2表明選擇字典原子能夠重構(gòu)訓(xùn)練樣本則繼續(xù)步驟S8,如果變化向量的膜大于10-2表明選擇字典原子不能夠重構(gòu)訓(xùn)練樣本則轉(zhuǎn)步驟S2;
步驟S8,記錄初始化字典對(duì)應(yīng)的稀疏系數(shù),判斷字典原子對(duì)應(yīng)的稀疏系數(shù)是否全部為零,由此選擇更新字典原子的方式,如果是全部為零則進(jìn)行步驟S10,如果不是,則進(jìn)行步驟S11;
步驟S10,當(dāng)前字典及其對(duì)應(yīng)稀疏系數(shù)的乘積得到重構(gòu)訓(xùn)練樣本集,計(jì)算重構(gòu)訓(xùn)練樣本集與原始訓(xùn)練樣本集的誤差,對(duì)誤差最大項(xiàng)對(duì)應(yīng)的訓(xùn)練樣本進(jìn)行歸一化,更新字典原子;
步驟S11,計(jì)算未使用該字典原子重構(gòu)訓(xùn)練樣本集的誤差Error,并對(duì)Error以該字典原子對(duì)應(yīng)的稀疏系數(shù)為權(quán)重進(jìn)行加權(quán)得到加權(quán)誤差ErrorP;
步驟S12,利用ErrorP的歸一化結(jié)果更新該字典原子;
步驟S13,計(jì)算誤差Error的轉(zhuǎn)置與更新后字典的乘積得到更新字典原子對(duì)應(yīng)的稀疏系數(shù)。
步驟S14,查找更新后字典中相關(guān)性較大或者是對(duì)應(yīng)稀疏系數(shù)大于10-7的個(gè)數(shù)小于3的原子,計(jì)算當(dāng)前字典重構(gòu)訓(xùn)練樣本集的誤差,利用誤差最大項(xiàng)對(duì)應(yīng)訓(xùn)練樣本的歸一化結(jié)果更新字典原子。
步驟S15,至此得到根據(jù)訓(xùn)練樣本進(jìn)行自適應(yīng)學(xué)習(xí)的過完備字典,保存過完備字典“TrainedDictionary.mat”。
通過步驟S2至S8將學(xué)習(xí)得到的字典針對(duì)整幅輸入SAR圖像進(jìn)行稀疏表示,得到重構(gòu)后的SAR圖像。
應(yīng)當(dāng)理解的是,對(duì)本領(lǐng)域普通技術(shù)人員來說,可以根據(jù)上述說明加以改進(jìn)或變換,而所有這些改進(jìn)和變換都應(yīng)屬于本發(fā)明所附權(quán)利要求的保護(hù)范圍。