
本本發(fā)明屬于圖像處理技術領域,更進一步涉及圖像重構,具體是一種基于聯(lián)合稀疏和先驗約束的壓縮感知圖像重構方法。
背景技術:隨著信息技術的迅速發(fā)展,圖像處理技術被越來越多的應用到人們的生產和生活中。如利用衛(wèi)星所獲取的圖像進行資源調查、災害監(jiān)測、城市規(guī)劃,利用醫(yī)學圖像進行疾病的檢測,利用工業(yè)圖像對零件進行分類和質量檢測等。奈奎斯特定理指出,只有當采樣速率達到信號帶寬的兩倍以上時,采集到的數(shù)字信號才能完整地保留原始信號中的信息,而在現(xiàn)實世界中,由于實際應用中圖像數(shù)據(jù)量巨大,為了降低對信息存儲、處理和傳輸?shù)某杀?,人們對信號進行高速奈奎斯特采樣和壓縮編碼后再進行存儲和傳輸。但是這種處理方式造成了嚴重的資源浪費,針對這一問題,D.L.Donoho、CandèsE.J.等人提出了一種新的數(shù)據(jù)采集技術——壓縮感知。壓縮感知技術是利用信號的稀疏性,在遠小于奈奎斯特采樣速率的條件下進行采樣,然后通過非線性重構算法準確地重構信號,這樣大大降低了設備存儲限制和計算的復雜度。目前壓縮感知已成為學術界研究的熱點,并不斷被應用在圖像處理領域和無線傳感領域中。壓縮感知理論主要包括信號的稀疏表示、信號的觀測和信號的重構等三個方面。其中,信號重構是壓縮感知技術的關鍵和核心。在壓縮感知技術中,圖像信號重構的過程是對數(shù)字化信號進行處理的過程,這個過程離不開求解欠定方程組問題。E.Candes等人證明了,如果信號是稀疏或者可壓縮的,求解欠定方程組的問題可以轉化為最小化l0范數(shù)問題,從而可重構信號。壓縮感知重構的本源問題是l0范數(shù)下非凸優(yōu)化問題,該問題是非確定性多項式問題即NP難問題。目前直接求解l0范數(shù)問題的方法是以正交匹配追蹤OMP算法為代表的貪婪算法和以迭代閾值收縮IHT為代表的門限算法兩類。OMP算法是在每次迭代的過程中,基于貪婪的思想并通過局部優(yōu)化的手段選擇最能匹配信號結構的一個原子,并經過一系列逐步遞增的方法構建信號的稀疏逼近。OMP算法每一次的迭代主要有兩個步驟:原子選擇和殘差更新。OMP算法通過Gram-Schmidt正交化方法對已選擇原子集合進行正交化處理,這樣一來每次迭代所選取的最匹配原子均滿足一定的條件,殘差部分隨著迭代次數(shù)的增大而迅速減少,因此用少量原子的線性組合來重構原始圖像信號,從而有效地減少了迭代次數(shù)。但是OMP算法不能對所有圖像信號都實現(xiàn)精確重構,重構結果不是很精確,算法也不具有魯棒性。IHT算法也是基于l0范數(shù)的重構方法,直接關注稀疏信號的非零元素的個數(shù),尋找最能逼近稀疏信號的K項支撐,迭代過程如下式所示:xn+1=HK(xn+ΦT(y-Φxn))其中,xn+1是第n+1次迭代時的重構信號,HK(θ)是一個非線性算子,它的功能是保留矢量θ中幅度最大的前K個元素,將其他元素都置為零,xn是第n次迭代時的重構信號,Φ是高斯隨機觀測矩陣,y是觀測向量。IHT算法的缺點對測量矩陣的過分依賴,計算復雜度高,運算時間長,閾值的大小對圖像信號的重構結果影響較大。以上兩種算法有一個共同的缺點,那就是不能保證收斂到全局最優(yōu),造成圖像的重構結果不夠精確。因此,基于最小化l0范數(shù)的非凸壓縮感知重構方法還需要進一步地探索和研究。西安電子科技大學的專利申請“基于濾波算子的交替優(yōu)化壓縮感知圖像重構方法”(公開號:CN102568017A,申請?zhí)枺?01210001645.8,申請日:2012年1月4日)中公開了一種基于濾波算子的交替優(yōu)化壓縮感知圖像重構方法,該方法利用稀疏系數(shù)位置的先驗信息來指導求解稀疏系數(shù)的l0范數(shù),并把濾波和凸集投影作為進化算子引入到進化重構框架中,重構的圖像紋理和邊緣清晰。但效果的提升很大一部分是由于濾波和凸集操作起作用的,并未充分考慮圖像本身的結構信息,因為我們希望通過盡可能地利用圖像的結構信息來指導重構過程以獲得較好的重構效果。
技術實現(xiàn)要素:本發(fā)明的目的在于針對現(xiàn)有壓縮感知重構技術中在重構圖像的過程中,并未考慮圖像本身的結構特征,只是單純地從數(shù)學角度出發(fā)進行圖像重構算法的設計,導致重構效果不佳的問題,設計了更加合理的交叉變異算子及基于局部聚類塊間相互約束的選擇策略,提出了一種基于聯(lián)合稀疏和先驗約束的壓縮感知重構方法,提高了重構圖像的質量。為實現(xiàn)上述目的,本發(fā)明采取以下技術方案:一種基于聯(lián)合稀疏和先驗約束的壓縮感知重構方法,包括以下步驟:(1)輸入低頻子帶Y0和三個高頻子帶的分塊觀測Yt,其中t∈{v,h,d},表示子帶的方向,其中v表示垂直方向,h表示為水平方向,d表示對角方向;(2)獲得三個高頻子帶對應的位置矩陣Pt;(2a)將三個高頻子帶系數(shù)置0,結合低頻子帶Y0,做小波逆變換,得到一幅邊緣模糊的圖像I1;(2b)用canny算子對邊緣模糊的圖像I1進行邊緣檢測,得到一幅只含有邊緣信息的圖像I2;(2c)對只含有邊緣信息的圖像I2執(zhí)行一層小波變換,得到一個低頻子帶Y1和三個含有邊緣信息的高頻子帶為St;(2d)以作為方向為t的子帶的閾值,將對應子帶St中模值大于對應閾值的位置標記為1,意為該位置處為大系數(shù),而將模值小于對應閾值的位置標記為0,意為該位置處為小系數(shù),這樣獲得三個高頻子帶對應的位置矩陣Pt,其中μt為子帶St的模值的均值,為伸縮因子,本文中取(3)對位置矩陣Pt執(zhí)行提取疫苗和注射疫苗的操作,得到位置矩陣P′t;(4)對位置矩陣P′t執(zhí)行分塊操作,得到三個高頻子帶下各塊觀測對應的位置塊p′t,i;為了記錄初始位置塊p′t,i的信息,將p′t,i保存為變量p″t,i,即p″t,i=p′t,i,后續(xù)只對變量p″t,i進行操作;其中i表示塊號,若圖像大小為512×512,則i=1,2,...256,若圖像大小為256×256,則i=1,2,...128(5)根據(jù)得到的三個子帶下各塊觀測的位置塊p″t,i對各塊觀測進行邊緣塊觀測和非邊緣塊觀測的劃分;(6)根據(jù)第(5)步的邊緣塊觀測和非邊緣塊觀測的劃分結果,對三個高頻子帶的分塊觀測Yt中所有非邊緣塊觀測執(zhí)行局部相似聚類,得到對應于三個子帶中非邊緣塊觀測聚類的集合:其中,at,i表示方向為t的子帶的第i類對應的集合,其中i=1,2,Lct,ct表示方向為t的子帶聚類的類別數(shù);(7)按照種群初始化策略分別初始化三個高頻子帶下各個聚類中心塊觀測及各個邊緣塊觀測對應的系數(shù)塊種群Q={qt,i,j},其中i表示各聚類中心塊觀測及各個邊緣塊觀測的塊號,j=1,2,Ln,n為種群規(guī)模;(8)對三個高頻子帶下的各個系數(shù)塊種群Q={qt,i,j}執(zhí)行交叉操作,得到交叉后的子代系數(shù)塊種群Q′={q′t,i,j};(9)對三個高頻子帶下的各個子代系數(shù)塊種群Q′執(zhí)行變異操作,得到變異后的子代系數(shù)塊種群Q″={q″t,i,j};(10)對各聚類中心的系數(shù)塊和邊緣的系數(shù)塊分別定義兩種不同的適應度函數(shù)以對子代種群Q″執(zhí)行相應的種群更新操作;(11)分別從三個子帶下各個子代種群Q″中選擇出各個系數(shù)塊對應的最優(yōu)系數(shù)個體,若該系數(shù)塊為非邊緣塊,則將其對應的最優(yōu)系數(shù)個體作為其同類的各個系數(shù)塊的最優(yōu)系數(shù)塊,然后對所有最優(yōu)系數(shù)塊執(zhí)行合并塊操作,形成各子帶對應的系數(shù)Bt;(12)若進化代數(shù)滿足停止條件,則轉步驟(13),否則,利用各個聚類中心系數(shù)塊和邊緣的系數(shù)塊選擇出的最優(yōu)系數(shù)個體更新該塊對應的位置塊和系數(shù)塊種群,轉入步驟(8);(13)結合保留的低頻子帶系數(shù)Y0及步驟(11)中得到的三個高頻子帶系數(shù)Bt,進行小波逆變換,得到重構圖像。所述步驟(5)中根據(jù)得到的三個子帶下各塊觀測的位置塊p″t,i對各塊觀測進行邊緣塊觀測和非邊緣塊觀測的劃分,若某塊觀測對應的位置塊p″t,i為全0矩陣,則將該塊觀測劃作非邊緣塊觀測,否則,將其作為邊緣塊觀測。所述步驟(6)中對三個高頻子帶的分塊觀測Yt中所有非邊緣塊對應的觀測執(zhí)行局部相似聚類,t∈{v,h,d},以對大小為512×512的圖像進行操作為例即塊號i=1,2,...256,具體過程如下:(6.1)計算Yt中各個非邊緣塊觀測yt,i的標準差σt,i,i表示塊號;(6.2)對各個非邊緣塊觀測都初始化一個未聚類的標志marki,即令marki=0,i表示塊號;如果方向子帶t下的第i個塊觀測為某一類的聚類中心塊觀測的話,則我們用符號at,i來表示這個類;初始時令i=1,表示從第一塊開始執(zhí)行聚類操作;(6.3)若第i個塊觀測為非邊緣塊觀測且該塊未被聚類,即marki=0,則轉(6.4),否則,轉(6.6)(6.4)將第i個塊觀測作為類at,i的聚類中心塊觀測;(6.5)觀察第i塊的八個鄰域塊中的所有塊觀測:假設j表示第i塊的八個鄰域塊中的其中一個塊觀測,若第j個塊觀測為非邊緣塊觀測且markj=0,表示第j個塊觀測未被聚類,則計算第j個塊觀測的標準差σt,j與第i個塊觀測的標準差σt,i的差值,即Cj=σt,i-σt,j,若|Cj|≤τ,其中τ為閾值,τ=0.01,則將第j個塊觀測加入聚類中心為第i個塊觀測的類at,i中,令markj=1,表示該塊已被聚類;(6.6)令i=i+1,若i≤256,則轉(6.3),否則,表示所有塊都已聚類完畢,統(tǒng)計該方向上聚類的類別數(shù),記作ct;所述步驟(10)中對各聚類中心的系數(shù)塊和邊緣的系數(shù)塊分別定義兩種不同的適應度函數(shù)以對子代種群Q″執(zhí)行相應的種群更新操作按如下過程進行:(10.1)若當前塊為非邊緣塊,也即當前塊為一個聚類中心塊,則按以下適應度函數(shù)計算各個個體的適應度f(q″t,i,j),表示如下:其中,t∈{v,h,d},表示的是該塊所屬子帶的方向,其中v表示垂直方向,h表示為水平方向,d表示對角方向;由步驟(6)可得,at,i表示方向為t的子帶中以第i塊作為聚類中心塊的類;yt,k為方向為t的子帶中類at,i中的第k塊對應的觀測,q″t,i,j為該聚類中心塊所對應的種群Q″中的第j個系數(shù)個體,f(q″t,i,j)即為個體q″t,i,j的適應度;若當前塊為邊緣塊,則按以下適應度函數(shù)計算各個...