本發(fā)明涉及計(jì)算機(jī)圖像處理領(lǐng)域,特別是涉及一種圖像分塊壓縮感知的正則化解碼方法。
背景技術(shù):
壓縮感知是一種突破奈奎斯特采樣定理的全新信號處理框架。信息壓縮和信號重構(gòu)是壓縮感知的兩個重要組成部分。信息壓縮方法主要分成兩類,對整幅圖像進(jìn)行壓縮與對圖像分塊后分別進(jìn)行壓縮。整體壓縮感知往往需要存儲較大的測量矩陣,占用較大內(nèi)存,同時,整體壓縮感知的計(jì)算量也十分龐大。
為此,科研人員提出了分塊壓縮方法,該方法先將圖像分成指定大小的小塊,再對每一小塊圖像使用同一的測量矩陣進(jìn)行壓縮。例如中國專利文獻(xiàn)cn106301384a的“一種基于分塊壓縮感知的信號重構(gòu)方法”:將原始信號均勻分成子塊,對子塊稀疏變換后濾波;得到的子信號再進(jìn)行觀測,得到觀測向量;利用觀測向量和測量矩陣恢復(fù)出子信號,再對子信號線性組合得到重構(gòu)信號。分塊壓縮感知具有存儲測量矩陣較小,重構(gòu)算法計(jì)算更加簡單的優(yōu)點(diǎn);但是該算法對每個子信號單獨(dú)重構(gòu),然后線性組合,魯棒性不強(qiáng)并且容易引起重構(gòu)圖像塊效應(yīng)。
在文獻(xiàn)“blockcompressedsensingofnaturalimages”中,lugan為了解決重構(gòu)圖像塊效應(yīng),引入維納濾波器到pl(projectedlandweber)算法作為信號恢復(fù)算法,減小分塊效應(yīng)。重構(gòu)算法迭代過程為:首先對整幅圖像做維納濾波,然后通過landweber投影和硬閾值處理進(jìn)行信號重構(gòu)。該算法有效降低了重構(gòu)圖像的塊效應(yīng),但是由于維納濾波的引入引起了重構(gòu)圖像的質(zhì)量衰減。
技術(shù)實(shí)現(xiàn)要素:
為了解決現(xiàn)有技術(shù)中存在的上述缺陷,解決分塊壓縮感知重構(gòu)問題并且提高重構(gòu)圖像峰值信噪比,本發(fā)明的目的是:提供一種分塊壓縮感知的正則化解碼方法。
本發(fā)明解決其技術(shù)問題所采取的技術(shù)方案是:
一種分塊壓縮感知的正則化解碼方法,包括如下步驟:
(1)輸入待處理圖像,其中,待處埋圖像x的大小為n×n;
(2)對圖像進(jìn)行分塊,將圖像分塊成b×b的小塊圖像,對分塊后的子圖像展開成列向量xj,其中
(3)根據(jù)分塊后的圖像所需的采樣率m決定測量矩陣φ的大小,得到測量矩陣為m×b2行,b2列矩陣;對數(shù)據(jù)進(jìn)行測量,得到測量值yj=φxj,選擇測量矩陣為高斯隨機(jī)正交測量矩陣;
(4)利用測量值和測量矩陣對原信號進(jìn)行重構(gòu),輸出重構(gòu)圖像;
xj表示分塊后的子圖像矩陣按列展開成的列向量,j為子圖像的次序,共
φ表示測量矩陣,根據(jù)采樣率選擇列數(shù),行數(shù)由圖像分塊大小決定;
yj為每一個分塊圖像展成列向量的測量值;
所述的步驟(4)中的重構(gòu)算法如下:
步驟1:設(shè)置最大迭代次數(shù)為smax,停機(jī)準(zhǔn)則ε,初始化x(0)=φty,將x(0)線性重組為圖像x(0),令s=0,置x(s,0)=x(0);
步驟2:梯度下降,
步驟3:將x(s,1)線性變換成x(s,1),即對圖像分塊后重排序成新的矩陣;對得到的x(s,1)做稀疏變換,得到變換系數(shù)
步驟4:對得到的x(s,2)做凸集投影x(s+1,0)=pocs(x(s,2),λj);
步驟5:s=s+1,若s<smax且||x(s+1,0)-x(s,0)||>ε,返回步驟2,否則輸出x(s+1,0)并退出迭代。
x(0)表示由列向量xj組成的矩陣,上標(biāo)表示對應(yīng)迭代次數(shù)所得結(jié)果;smax表示最大迭代次數(shù),ε為停機(jī)準(zhǔn)則,設(shè)置成固定常數(shù);
x(0)為將x(0)重組成圖像,即將x(0)中的每一列排成圖像矩陣,并按次序組合;
||x(s)||tv表示圖像x(s)的全變差,||·||0表示取零范數(shù)。
pocs(x,λj)表示凸集投影,λj表示凸集投影過程中,第j塊子圖像的投影參數(shù)。
α表示平衡圖像的稀疏性和其整體結(jié)構(gòu)參數(shù)。
μ(s)為梯度下降的步長因子。
δ為梯度下降過程防止出現(xiàn)分母為0取的常數(shù)。
所述的步驟3的稀疏變換采用雙樹復(fù)小波變換,該變換能反應(yīng)圖像的邊緣信息;而閾值處理相應(yīng)地選擇雙閾值處理。
重構(gòu)算法中步驟4凸集投影具體方程為xj=xj+λjφt(yj-φxj)。
由于采用了上述的技術(shù)方案,本發(fā)明的有益效果是:通過采用本發(fā)明的分塊壓縮感知圖像重構(gòu)算法,有效地減少了分塊壓縮感知帶來的塊效應(yīng);并且與現(xiàn)有方法比,有更高的峰值信噪比以及更好的圖像視覺效果。
附圖說明
圖1是本發(fā)明的一種分塊壓縮感知的正則化解碼方法算法流程圖。
具體實(shí)施方式
下面結(jié)合附圖和一個典型的具體實(shí)施方式對本發(fā)明的一種分塊壓縮感知的正則化解碼方法做詳細(xì)說明,該算法具體包括如下部分:
壓縮端利用分塊壓縮感知對圖像進(jìn)行壓縮,步驟如下:
輸入待處理的圖像,其中,待處理圖像x大小為n×n,將圖像分塊成b×b的小塊圖像,對分塊后的子圖像展開成列向量xj,其中
根據(jù)分塊后的圖像所需的采樣率m決定測量矩陣φ的大小,得到測量矩陣為
m×b2行,b2列矩陣;對數(shù)據(jù)進(jìn)行測量,得到測量值yj=φxj,選擇測量矩陣為高斯隨機(jī)正交測量矩陣;實(shí)現(xiàn)壓縮目的。
利用測量值和測量矩陣對原信號進(jìn)行重構(gòu),輸出重構(gòu)圖像;構(gòu)建如式所示的規(guī)劃問題。
式(1)中,α∈r+是正則化參數(shù),用于平衡圖像矩陣x的稀疏性和其整體結(jié)構(gòu)信息。使用拉格朗日乘子法可將式中的有約束優(yōu)化問題轉(zhuǎn)為式所示的無約束優(yōu)化問題;其中,λj是拉格朗日乘子。
對于規(guī)劃問題,可以繼續(xù)使用梯度下降法進(jìn)行迭代求解,其相應(yīng)的迭代格式為
其中,參數(shù)μ(s)為步長因子。式中g(shù)1(x)是表示正則項(xiàng)||x||tv關(guān)于矩陣x的梯度,它是一個矩陣,其坐標(biāo)(i,j)的系數(shù)表達(dá)式為
式(4)中δ>0用以避免實(shí)際計(jì)算中出現(xiàn)分母為0的情況。
由于||ψ-1x||0關(guān)于x不可微,因此式中g(shù)2(x)難以直接求解。根據(jù)規(guī)劃問題,在迭代式中,圖像矩陣變量沿著||ψ-1x(s)||0的負(fù)梯度方向下降的目的,是為了使得||ψ-1x(s+1)||0盡可能小,而最終得到在ψ域中是最稀疏的圖像解碼矩陣??梢允褂瞄撝禐V波代替g2(x(s))的求解。
閾值濾波分為3步:雙樹復(fù)小波變換,雙閾值濾波,雙樹復(fù)小波反變換。雙閾值濾波是一種被廣泛應(yīng)用于去除高斯白噪聲的濾波方法。本發(fā)明使用ddwt這種需要比較父子變換稀疏變換,使用雙閾值濾波如式(5)。
式(5)中,
對于g3(x),根據(jù)式,有
式(6)中,
xj=xj+λjφt(yj-φxj)(7)
事實(shí)上,除了參數(shù)λj,式幾乎完全一致,它們對圖像矩陣x的每個子塊xj進(jìn)行凸集投影,保證最終解碼矩陣的各個子塊滿足規(guī)劃問題中的約束條件yj=φxj,j=0,1,…,n-1。用函數(shù)pocs(x(s),λj)表示迭代式中g(shù)3(x(s))的作用;它首先將矩陣x(s)分塊為
綜上,迭代式分為3步實(shí)現(xiàn),1是梯度下降
重構(gòu)算法步驟如下:
步驟1:設(shè)置最大迭代次數(shù)為smax,停機(jī)準(zhǔn)則ε,初始化x(0)=φty,將x(0)線性重組為圖像x(0),令s=0,置x(s,0)=x(0);
步驟2:梯度下降,
步驟3:將x(s,1)線性變換成x(s,1),即對圖像分塊后重排序成新的矩陣。對得到的x(s,1)做稀疏變換,得到變換系數(shù)
步驟4:對得到的x(s,2)做凸集投影x(s+1,0)=pocs(x(s,2),λj);
步驟5s=s+1,若s<smax且||x(s+1,0)-x(s,0)||>ε,返回步驟2,否則輸出x(s+1,0)并退出迭代。
算法涉及到一些參數(shù),有α,μ(s),λj等。參數(shù)α用于平衡矩陣x的稀疏性和其整體結(jié)構(gòu)信息,它與原始圖像數(shù)據(jù)x相關(guān),屬于超參數(shù),應(yīng)在迭代算法開始之前取定。參數(shù)μ(s)是迭代的步長因子。根據(jù)最優(yōu)化理論,步長因子μ(s)應(yīng)使得規(guī)劃問題的目標(biāo)函數(shù)在迭代格式所確定的搜索方向上取得最小值。然而,由于我們使用閾值濾波和凸集投影去實(shí)現(xiàn)式所示的迭代格式,這使得在算法中,參數(shù)μ(s)與參數(shù)α在事實(shí)上有相同的作用,因此本發(fā)明建議步長因子μ(s)取定為常數(shù)μ,在迭代算法開始之前確定其值。
導(dǎo)數(shù)為0是無約束化問題解的必要條件。由式(8)左側(cè)可知右側(cè)表示一個大小為n×1的列向量。
那么,應(yīng)有
λj(s)φt(yj-φxj(s,0))=vector(block(x(s2)-x(s,0)j)
兩邊取范數(shù)后,得式(10)。參數(shù)λj(s)可在事實(shí)上起到步長因子的作用。由此,便可實(shí)現(xiàn)本發(fā)明的分塊圖像正則化解碼方法。
應(yīng)當(dāng)認(rèn)識到,以上描述只是本發(fā)明的一個特定實(shí)施例,本發(fā)明并不僅僅局限于以上圖示或描述的特定的結(jié)構(gòu),權(quán)利要求將覆蓋本發(fā)明的實(shí)質(zhì)精神及范圍內(nèi)的所有變化方案。