本發(fā)明屬于計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種圖像的稀疏重構(gòu)方法及裝置。
背景技術(shù):
圖像的稀疏重構(gòu)又可稱為圖像的壓縮感知、圖像的壓縮傳感等,是通過(guò)壓縮感知理論開(kāi)發(fā)圖像信號(hào)的稀疏性,使得在圖像的采樣頻率遠(yuǎn)小于傳統(tǒng)奈奎斯特采樣率的條件下依舊能夠精確地重建圖像信號(hào),因此圖像的稀疏重構(gòu)有效地解決了由于圖像信息量大而導(dǎo)致壓縮過(guò)程中圖像信號(hào)部分丟失、圖像壓縮效率低的問(wèn)題。
目前,研究人員已經(jīng)提出了許多解決在圖像的稀疏重構(gòu)中l(wèi)0范數(shù)優(yōu)化問(wèn)題的方法,以實(shí)現(xiàn)高效率、高精度的圖像重構(gòu),這些方法包括Homotopy(同倫法)、BP(誤差反向算法)等,然而,l0范數(shù)的優(yōu)化過(guò)程尚存在收斂能力不足、易陷入局部最優(yōu)等問(wèn)題,導(dǎo)致圖像重構(gòu)的重構(gòu)精度不佳、且重構(gòu)過(guò)程耗費(fèi)的軟硬件資源較多。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種圖像的稀疏重構(gòu)方法及裝置,旨在解決由于現(xiàn)有技術(shù)無(wú)法提供一種有效的圖像重構(gòu)方法,導(dǎo)致圖像重構(gòu)精度不佳、且重構(gòu)過(guò)程耗費(fèi)的軟硬件資源較多的問(wèn)題。
一方面,本發(fā)明提供了一種圖像的稀疏重構(gòu)方法,所述方法包括下述步驟:
獲取圖像的壓縮矩陣,確定所述壓縮矩陣中每列數(shù)據(jù)的待優(yōu)化目標(biāo);
判斷當(dāng)前的優(yōu)化次數(shù)是否超過(guò)預(yù)設(shè)的優(yōu)化閾值;
當(dāng)所述優(yōu)化次數(shù)未超過(guò)所述優(yōu)化閾值時(shí),對(duì)所述待優(yōu)化目標(biāo)的當(dāng)前解集合進(jìn)行優(yōu)化,更新優(yōu)化次數(shù),并跳轉(zhuǎn)至判斷當(dāng)前的優(yōu)化次數(shù)是否超過(guò)所述優(yōu)化閾值的步驟,否則,獲取所述待優(yōu)化目標(biāo)的優(yōu)化結(jié)果;
根據(jù)所述所有的優(yōu)化結(jié)果,獲取所述圖像的稀疏系數(shù)矩陣,并根據(jù)預(yù)設(shè)的稀疏基,獲取重構(gòu)的圖像。
另一方面,本發(fā)明提供了一種圖像的稀疏重構(gòu)裝置,所述裝置包括:
優(yōu)化目標(biāo)確定模塊,用于獲取圖像的壓縮矩陣,確定所述壓縮矩陣中每列數(shù)據(jù)的待優(yōu)化目標(biāo);
判斷模塊,用于判斷當(dāng)前的優(yōu)化次數(shù)是否超過(guò)預(yù)設(shè)的優(yōu)化閾值;
優(yōu)化模塊,用于當(dāng)所述優(yōu)化次數(shù)未超過(guò)所述優(yōu)化閾值時(shí),對(duì)所述待優(yōu)化目標(biāo)的當(dāng)前解集合進(jìn)行優(yōu)化,更新優(yōu)化次數(shù),并觸發(fā)所述判斷模塊執(zhí)行判斷當(dāng)前的優(yōu)化次數(shù)是否超過(guò)所述優(yōu)化閾值的操作,否則,獲取所述待優(yōu)化目標(biāo)的優(yōu)化結(jié)果;以及
重構(gòu)圖像獲取模塊,用于根據(jù)所述所有的優(yōu)化結(jié)果,獲取所述圖像的稀疏系數(shù)矩陣,并根據(jù)預(yù)設(shè)的稀疏基,獲取重構(gòu)的圖像。
本發(fā)明根據(jù)信號(hào)的壓縮感知理論,將圖像的重構(gòu)問(wèn)題轉(zhuǎn)換為優(yōu)化問(wèn)題,并通過(guò)圖像的壓縮矩陣,確定了該優(yōu)化問(wèn)題中的待優(yōu)化目標(biāo),對(duì)該優(yōu)化目標(biāo)進(jìn)行多次的優(yōu)化,根據(jù)優(yōu)化結(jié)果獲得該圖像的稀疏系數(shù)矩陣,得到重構(gòu)后的圖像,從而不僅實(shí)現(xiàn)了圖像的重構(gòu),而且通過(guò)提高整個(gè)優(yōu)化過(guò)程的收斂速度和收斂能力,有效地降低了圖像重構(gòu)過(guò)程中軟硬件資源的消耗,提高了圖像的重構(gòu)效率和重構(gòu)精度。
附圖說(shuō)明
圖1是本發(fā)明實(shí)施例一提供的一種圖像的稀疏重構(gòu)方法的實(shí)現(xiàn)流程圖;
圖2是本發(fā)明實(shí)施例二提供的一種圖像的稀疏重構(gòu)方法中對(duì)待優(yōu)化目標(biāo)進(jìn)行優(yōu)化的實(shí)現(xiàn)流程圖;
圖3是本發(fā)明實(shí)施例三提供的一種圖像的稀疏重構(gòu)裝置的結(jié)構(gòu)示意圖;以及
圖4是本發(fā)明實(shí)施例四提供的一種圖像的稀疏重構(gòu)裝置中優(yōu)化模塊的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
以下結(jié)合具體實(shí)施例對(duì)本發(fā)明的具體實(shí)現(xiàn)進(jìn)行詳細(xì)描述:
實(shí)施例一:
圖1示出了本發(fā)明實(shí)施例一提供的一種圖像的稀疏重構(gòu)方法的實(shí)現(xiàn)流程,為了便于說(shuō)明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分,詳述如下:
在步驟S101中,獲取圖像的壓縮矩陣,確定壓縮矩陣中每列數(shù)據(jù)的待優(yōu)化目標(biāo)。
在本發(fā)明實(shí)施例中,圖像經(jīng)過(guò)壓縮傳感后得到的多個(gè)觀測(cè)向量可構(gòu)成圖像的壓縮矩陣,在壓縮傳感過(guò)程中,可利用預(yù)設(shè)的稀疏基矩陣B∈Rn×n對(duì)圖像X∈Rn×p進(jìn)行正交變換,使得圖像稀疏化,其中,正交變換的公式可為X=B·S,S為圖像X在稀疏基矩陣B下的稀疏系數(shù)矩陣,再通過(guò)預(yù)設(shè)的觀測(cè)矩陣A∈Rm×n對(duì)圖像X∈Rn×p稀疏后的每列數(shù)據(jù)進(jìn)行觀測(cè),得到相應(yīng)的觀測(cè)向量,其中,觀測(cè)的公式可為Yi=A·Xi=A·B·Si=M·Si,Yi為X稀疏化后第i列數(shù)據(jù)的觀測(cè)向量,M為信息算子。
在獲取到圖像的壓縮矩陣后,可根據(jù)壓縮矩陣中的每列數(shù)據(jù),確定每列數(shù)據(jù)對(duì)應(yīng)的待優(yōu)化目標(biāo),進(jìn)而將圖像的重構(gòu)問(wèn)題轉(zhuǎn)換為該待優(yōu)化目標(biāo)的優(yōu)化問(wèn)題。具體地,待優(yōu)化目標(biāo)為l1范數(shù),其中,第i列數(shù)據(jù)對(duì)應(yīng)的l1范數(shù)為λ為預(yù)設(shè)的標(biāo)量權(quán)重。
在步驟S102中,判斷當(dāng)前的優(yōu)化次數(shù)是否超過(guò)預(yù)設(shè)的優(yōu)化閾值。
在本發(fā)明實(shí)施例中,優(yōu)化次數(shù)為對(duì)待優(yōu)化目標(biāo)進(jìn)行優(yōu)化的次數(shù),優(yōu)化閾值為可對(duì)待優(yōu)化目標(biāo)進(jìn)行優(yōu)化的最大次數(shù)。
具體地,當(dāng)對(duì)待優(yōu)化目標(biāo)進(jìn)行第一次優(yōu)化時(shí),可預(yù)先設(shè)置優(yōu)化次數(shù)的值為0。
在步驟S103中,當(dāng)優(yōu)化次數(shù)未超過(guò)優(yōu)化閾值時(shí),對(duì)待優(yōu)化目標(biāo)的當(dāng)前解集合進(jìn)行優(yōu)化,更新優(yōu)化次數(shù),并跳轉(zhuǎn)至判斷當(dāng)前的優(yōu)化次數(shù)是否超過(guò)預(yù)設(shè)優(yōu)化閾值的步驟,否則,獲取待優(yōu)化目標(biāo)的優(yōu)化結(jié)果。
在本發(fā)明實(shí)施例中,將優(yōu)化次數(shù)與優(yōu)化閾值進(jìn)行比較,當(dāng)優(yōu)化次數(shù)未超過(guò)優(yōu)化閾值時(shí),可認(rèn)為當(dāng)前優(yōu)化次數(shù)不夠,應(yīng)對(duì)優(yōu)化次數(shù)進(jìn)行加一操作,并繼續(xù)對(duì)待優(yōu)化目標(biāo)進(jìn)行優(yōu)化,當(dāng)優(yōu)化次數(shù)超過(guò)優(yōu)化閾值時(shí),可認(rèn)為對(duì)待優(yōu)化目標(biāo)的優(yōu)化結(jié)束,應(yīng)獲取相應(yīng)的優(yōu)化結(jié)果。
具體地,可先獲取待優(yōu)化目標(biāo)的當(dāng)前解集合,當(dāng)優(yōu)化次數(shù)為0時(shí),該當(dāng)前解集合即預(yù)設(shè)的初始解集合,初始解集合中的解可為隨機(jī)值,接著,可根據(jù)優(yōu)化次數(shù)與優(yōu)化閾值的比較結(jié)果,執(zhí)行不同的操作:當(dāng)優(yōu)化次數(shù)未超過(guò)優(yōu)化閾值時(shí),可對(duì)當(dāng)前解集合中的解進(jìn)行變異、交叉、選擇以及局部搜索操作,得到一個(gè)優(yōu)化后的解集合,并將當(dāng)前解集合更新為該優(yōu)化后的解集合,繼而再次判斷優(yōu)化次數(shù)是否超過(guò)優(yōu)化閾值,如果沒(méi)有則繼續(xù)對(duì)待優(yōu)化目標(biāo)進(jìn)行下一次的優(yōu)化,如此循環(huán),直到優(yōu)化次數(shù)超過(guò)優(yōu)化閾值。此時(shí),可計(jì)算當(dāng)前解集合中所有解在待優(yōu)化目標(biāo)的公式中的函數(shù)值,獲取所有函數(shù)值中最小函數(shù)值所對(duì)應(yīng)的解,并將該解確定為待優(yōu)化目標(biāo)的優(yōu)化結(jié)果。
在步驟S104中,根據(jù)所有的優(yōu)化結(jié)果,獲取圖像的稀疏系數(shù)矩陣,并根據(jù)預(yù)設(shè)的稀疏基,獲取重構(gòu)的圖像。
在本發(fā)明實(shí)施例中,圖像壓縮矩陣中每列數(shù)據(jù)的待優(yōu)化目標(biāo)經(jīng)過(guò)優(yōu)化后,都對(duì)應(yīng)著一個(gè)優(yōu)化結(jié)果,將這些優(yōu)化結(jié)果進(jìn)行組合,可得到圖像的稀疏系數(shù)矩陣S,預(yù)設(shè)的稀疏基即步驟S101中提到的稀疏基矩陣B,最終可根據(jù)圖像的原始矩陣等于稀疏系數(shù)矩陣與稀疏基矩陣之積(X=B·S),計(jì)算出圖像的原始矩陣,得到重構(gòu)后的圖像。
在本發(fā)明實(shí)施例中,獲取圖像壓縮矩陣中每列數(shù)據(jù)對(duì)應(yīng)的待優(yōu)化目標(biāo),當(dāng)優(yōu)化次數(shù)未超過(guò)優(yōu)化閾值時(shí),循環(huán)對(duì)待優(yōu)化目標(biāo)的優(yōu)化操作,具體的優(yōu)化操作包括變異、交叉、選擇以及基于軟閾值迭代局部搜索算法的局部搜索操作,直至優(yōu)化次數(shù)超過(guò)優(yōu)化閾值,最后通過(guò)所有待優(yōu)化目標(biāo)的優(yōu)化結(jié)果,得到圖像的稀疏系數(shù)矩陣,實(shí)現(xiàn)對(duì)圖像的重構(gòu),從而通過(guò)提高整個(gè)優(yōu)化過(guò)程的收斂速度和收斂能力,有效地降低了圖像重構(gòu)過(guò)程中軟硬件資源的消耗,提高了圖像的重構(gòu)效率和重構(gòu)精度。
實(shí)施例二:
圖2示出了本發(fā)明實(shí)施例二提供的一種圖像的稀疏重構(gòu)方法中對(duì)待優(yōu)化目標(biāo)的當(dāng)前解集合進(jìn)行優(yōu)化的實(shí)現(xiàn)流程,詳述如下:
如實(shí)施例一中描述的,圖像壓縮矩陣中每列數(shù)據(jù)都對(duì)應(yīng)著一個(gè)待優(yōu)化目標(biāo),在本發(fā)明實(shí)施例中,對(duì)其中任一待優(yōu)化目標(biāo)的優(yōu)化過(guò)程進(jìn)行描述:
在步驟S201中,根據(jù)預(yù)設(shè)的策略概率,在待優(yōu)化目標(biāo)的當(dāng)前解集合中選取預(yù)設(shè)數(shù)量個(gè)當(dāng)前解,并根據(jù)預(yù)設(shè)的多個(gè)變異策略,對(duì)預(yù)設(shè)數(shù)量個(gè)當(dāng)前解中的每個(gè)當(dāng)前xi進(jìn)行變異。
在本發(fā)明實(shí)施例中,預(yù)先設(shè)置策略概率集合qg={q1,g,...,qk,g,...,qK,g}和多種變異策略,策略概率集合中的qk,g表示當(dāng)優(yōu)化次數(shù)為g時(shí)第k種變異策略對(duì)應(yīng)的策略概率,在變異操作中,依次采用K種變異策略對(duì)當(dāng)前解集合中預(yù)設(shè)數(shù)量個(gè)解進(jìn)行變異,其中,當(dāng)采用的變異策略不同時(shí),預(yù)設(shè)數(shù)量可能不同,具體地,當(dāng)在第g次優(yōu)化過(guò)程中采用第k種變異策略進(jìn)行變異操作時(shí),可從當(dāng)前解集合中選取qk,g×NP個(gè)當(dāng)前解,并將這qk,g×NP個(gè)當(dāng)前解中的每個(gè)當(dāng)前解xi按照第k種變異策略進(jìn)行變異,其中,NP為當(dāng)前解集合中當(dāng)前解的數(shù)目。
具體地,當(dāng)優(yōu)化次數(shù)為0時(shí)或在第一次優(yōu)化過(guò)程中,可對(duì)當(dāng)前解集合隨機(jī)進(jìn)行初始化,并將當(dāng)前解集合中的所有值初始化為K為變異策略的數(shù)目。
在步驟S202中,獲取變異操作后每個(gè)當(dāng)前解xi對(duì)應(yīng)的變異解xi',并根據(jù)預(yù)設(shè)的交叉概率,將當(dāng)前解xi與變異解xi'進(jìn)行交叉。
在本發(fā)明實(shí)施例中,在當(dāng)前解xi采用第k種變異策略變異得到變異解xi'后,可在預(yù)設(shè)的第k種變異策略的交叉概率集合CRk={CRk,1,...,CRk,i,...CRk,NP}(NP為當(dāng)前解集合中當(dāng)前解的數(shù)目)中獲取第k種變異策略對(duì)應(yīng)當(dāng)前解xi的交叉概率CRk,i,并將當(dāng)前解xi與變異解xi'按照該交叉概率CRk,i進(jìn)行交叉,因此根據(jù)當(dāng)前解在變異過(guò)程中采用的變異策略的不同,該當(dāng)前解交叉過(guò)程中的交叉概率也可能不同。
可選地,可預(yù)先設(shè)置總交叉概率集合CR={CR1,...,CRk,...,CRK},CRk表示第k種變異策略的交叉概率集合,CRk={CRk,1,...,CRk,i,...CRk,NP},其中,CRk,i表示第k種變異策略對(duì)應(yīng)當(dāng)前解xi的交叉概率,當(dāng)優(yōu)化次數(shù)為0或者在第1次優(yōu)化過(guò)程中時(shí),可初始化K種變異策略的交叉概率集合,其中,CRk,i可初始化為0。
在步驟S203中,獲取交叉操作后每個(gè)當(dāng)前解xi對(duì)應(yīng)的交叉解ui,并將當(dāng)前解xi的函數(shù)值與交叉解ui的函數(shù)值進(jìn)行比較,當(dāng)交叉解ui的函數(shù)值不超過(guò)當(dāng)前解xi的函數(shù)值時(shí),將交叉解ui存儲(chǔ)在預(yù)設(shè)的第一解集合中,否則,將當(dāng)前解xi存儲(chǔ)在第一解集合中。
在本發(fā)明實(shí)施例中,當(dāng)每個(gè)當(dāng)前解xi與變異解xi'交叉后得到交叉解ui時(shí),可將當(dāng)前解xi和交叉解ui分別代入待優(yōu)化目標(biāo)的公式得到函數(shù)值f(xi)和函數(shù)值f(ui),其中,將函數(shù)值f(xi)與函數(shù)值f(ui)進(jìn)行比較,當(dāng)函數(shù)值f(ui)不超過(guò)函數(shù)值f(ui)時(shí),可將交叉解ui存儲(chǔ)在預(yù)設(shè)的第一解集合中的對(duì)應(yīng)位置處,否則,將當(dāng)前解xi存儲(chǔ)在該第一解集合中的對(duì)應(yīng)位置處。
可選地,當(dāng)函數(shù)值f(ui)不超過(guò)函數(shù)值f(ui)時(shí),可將當(dāng)前解xi使用的交叉概率CRk,i存儲(chǔ)在預(yù)設(shè)的交叉成功概率集合CRlist(k)中,并對(duì)預(yù)設(shè)的第k種策略的進(jìn)化成功次數(shù)nsk,g進(jìn)行加一操作,否則,對(duì)預(yù)設(shè)的第k種策略的進(jìn)化失敗次數(shù)nfk,g進(jìn)行加一操作,以便后續(xù)根據(jù)交叉成功概率集合CRlist(k)、第k種策略的進(jìn)化成功次數(shù)nsk,g以及第k種策略的進(jìn)化失敗次數(shù)nfk,g等數(shù)據(jù),對(duì)策略概率和交叉概率進(jìn)行更新操作。
優(yōu)選地,可預(yù)設(shè)設(shè)置學(xué)習(xí)閾值,當(dāng)優(yōu)化次數(shù)超過(guò)學(xué)習(xí)閾值時(shí),可根據(jù)不同變異策略在優(yōu)化過(guò)程中的貢獻(xiàn),對(duì)策略概率集合qg={q1,g,...,qk,g,...,qK,g}中的策略概率和總交叉概率集合CR={CR1,...,CRk,...,CRK}中K種集合的交叉概率集合進(jìn)行更新,從而實(shí)現(xiàn)對(duì)變異策略的智能選擇,增加了優(yōu)化過(guò)程中解的多樣性,有效地提高了優(yōu)化過(guò)程的收斂速度和收斂能力。
作為示例地,策略概率集合qg={q1,g,...,qk,g,...,qK,g}的qk,g的更新公式可為:
其中,Sk,g為在優(yōu)化次數(shù)為第g次時(shí)當(dāng)前解集合中的解采用第k種變異策略成功進(jìn)入第一解集合的概率,ε為預(yù)設(shè)參數(shù)。
作為示例地,在對(duì)第k種策略的交叉概率集合CRk={CRk,1,...,CRk,i,...CRk,NP}進(jìn)行更新時(shí),可通過(guò)下述步驟實(shí)現(xiàn):
(1)檢測(cè)交叉成功概率集合CRlist(k)是否為空;
(2)當(dāng)交叉成功概率集合CRlist(k)不為空時(shí),計(jì)算交叉成功概率集合CRlist(k)的中值,將第k種策略的交叉概率集合CRk={CRk,1,...,CRk,i,...CRk,NP}設(shè)置為以該中值為均值、以預(yù)設(shè)常數(shù)為標(biāo)準(zhǔn)差的高斯隨機(jī)值;
(3)當(dāng)交叉成功概率集合CRlist(k)為空時(shí),獲取高斯隨機(jī)值CRmk,并將第k種策略的交叉概率集合CRk={CRk,1,...,CRk,i,...CRk,NP}設(shè)置為以高斯隨機(jī)值CRmk為均值、以預(yù)設(shè)常數(shù)為標(biāo)準(zhǔn)差的高斯隨機(jī)值。
在步驟S204中,根據(jù)預(yù)設(shè)的軟閾值迭代局部搜索算法,對(duì)第一解集合中每個(gè)解進(jìn)行局部搜索,獲取每個(gè)解對(duì)應(yīng)的局部搜索解,并將第一解集合中的解與局部搜索解進(jìn)行比較操作,并將比較后的解存儲(chǔ)在預(yù)設(shè)的第二解集合中。
在本發(fā)明實(shí)施例中,軟閾值迭代局部搜索算法具有較好的局部搜索能力和收斂速度,通過(guò)該局部搜索算法,在第一解集合中進(jìn)行梯度搜索,以得到每個(gè)解對(duì)應(yīng)的局部搜索解,并將該局部搜索解與第一解集合中的解進(jìn)行步驟S203中的函數(shù)比較操作,將比較后的解存儲(chǔ)在預(yù)設(shè)的第二解集合中。
在步驟S205中,將第二解集合確定為待優(yōu)化目標(biāo)的當(dāng)前解集合。
在本發(fā)明實(shí)施例中,待優(yōu)化目標(biāo)的當(dāng)前解集合經(jīng)過(guò)變異、交叉、選擇以及局部搜索后,得到第二解集合,之后,將該第二解集合設(shè)置為待優(yōu)化目標(biāo)的當(dāng)前解集合。
在本發(fā)明實(shí)施例中,對(duì)待優(yōu)化目標(biāo)的當(dāng)前解集合進(jìn)行變異、交叉、選擇,得到第一解集合,接著,采用預(yù)設(shè)的軟閾值迭代收縮局部搜索算法,對(duì)待第一解集合進(jìn)行局部搜索,得到第二解集合,并將第二解集合設(shè)置為待優(yōu)化目標(biāo)的當(dāng)前解集合,從而不僅完成對(duì)待優(yōu)化目標(biāo)的整個(gè)優(yōu)化過(guò)程,而且有效地提高了優(yōu)化過(guò)程的收斂速度和收斂能力。
本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分步驟是可以通過(guò)程序來(lái)指令相關(guān)的硬件來(lái)完成,所述的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,所述的存儲(chǔ)介質(zhì),如ROM/RAM、磁盤、光盤等。
實(shí)施例三:
圖3示出了本發(fā)明實(shí)施例三提供的一種圖像的稀疏重構(gòu)裝置的結(jié)構(gòu),為了便于說(shuō)明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分,其中包括:
優(yōu)化目標(biāo)確定模塊31,用于獲取圖像的壓縮矩陣,確定壓縮矩陣中每列數(shù)據(jù)的待優(yōu)化目標(biāo)。
在本發(fā)明實(shí)施例中,圖像經(jīng)過(guò)壓縮傳感后得到的多個(gè)觀測(cè)向量可構(gòu)成圖像的壓縮矩陣,在壓縮傳感過(guò)程中,可利用預(yù)設(shè)的稀疏基矩陣B∈Rn×n對(duì)圖像X∈Rn×p進(jìn)行正交變換,使得圖像稀疏化,其中,正交變換的公式可為X=B·S,S為圖像X在稀疏基矩陣B下的稀疏系數(shù)矩陣,再通過(guò)預(yù)設(shè)的觀測(cè)矩陣A∈Rm×n對(duì)圖像X∈Rn×p稀疏后的每列數(shù)據(jù)進(jìn)行觀測(cè),得到相應(yīng)的觀測(cè)向量,其中,觀測(cè)的公式可為Yi=A·Xi=A·B·Si=M·Si,Yi為X稀疏化后第i列數(shù)據(jù)的觀測(cè)向量,M為信息算子。
在獲取到圖像的壓縮矩陣后,可根據(jù)壓縮矩陣中的每列數(shù)據(jù),確定每列數(shù)據(jù)對(duì)應(yīng)的待優(yōu)化目標(biāo),進(jìn)而將圖像的重構(gòu)問(wèn)題轉(zhuǎn)換為該待優(yōu)化目標(biāo)的優(yōu)化問(wèn)題。具體地,待優(yōu)化目標(biāo)為l1范數(shù),其中,第i列數(shù)據(jù)對(duì)應(yīng)的l1范數(shù)為λ為預(yù)設(shè)的標(biāo)量權(quán)重。
判斷模塊32,用于判斷當(dāng)前的優(yōu)化次數(shù)是否超過(guò)預(yù)設(shè)的優(yōu)化閾值。
在本發(fā)明實(shí)施例中,優(yōu)化次數(shù)為對(duì)待優(yōu)化目標(biāo)進(jìn)行優(yōu)化的次數(shù),優(yōu)化閾值為可對(duì)待優(yōu)化目標(biāo)進(jìn)行優(yōu)化的最大次數(shù)。
具體地,當(dāng)對(duì)待優(yōu)化目標(biāo)進(jìn)行第一次優(yōu)化時(shí),可預(yù)先設(shè)置優(yōu)化次數(shù)的值為0。
優(yōu)化模塊33,用于當(dāng)優(yōu)化次數(shù)未超過(guò)優(yōu)化閾值時(shí),對(duì)待優(yōu)化目標(biāo)的當(dāng)前解集合進(jìn)行優(yōu)化,更新優(yōu)化次數(shù),并觸發(fā)判斷模塊32執(zhí)行判斷當(dāng)前的優(yōu)化次數(shù)是否超過(guò)優(yōu)化閾值的操作,否則,獲取待優(yōu)化目標(biāo)的優(yōu)化結(jié)果。
在本發(fā)明實(shí)施例中,將優(yōu)化次數(shù)與優(yōu)化閾值進(jìn)行比較,當(dāng)優(yōu)化次數(shù)未超過(guò)優(yōu)化閾值時(shí),可認(rèn)為當(dāng)前優(yōu)化次數(shù)不夠,應(yīng)對(duì)優(yōu)化次數(shù)進(jìn)行加一操作,并對(duì)待優(yōu)化目標(biāo)進(jìn)行優(yōu)化,當(dāng)優(yōu)化次數(shù)超過(guò)優(yōu)化閾值時(shí),可認(rèn)為對(duì)待優(yōu)化目標(biāo)的優(yōu)化結(jié)束,應(yīng)獲取相應(yīng)的優(yōu)化結(jié)果。
具體地,可先獲取待優(yōu)化目標(biāo)的當(dāng)前解集合,當(dāng)優(yōu)化次數(shù)為0時(shí),該當(dāng)前解集合即預(yù)設(shè)的初始解集合,初始解集合中的解可為隨機(jī)值,接著,可根據(jù)優(yōu)化次數(shù)與優(yōu)化閾值的比較結(jié)果,執(zhí)行不同的操作:當(dāng)優(yōu)化次數(shù)未超過(guò)優(yōu)化閾值時(shí),可對(duì)當(dāng)前解集合中的解進(jìn)行變異、交叉、選擇以及局部搜索操作,得到一個(gè)優(yōu)化后的解集合,并將當(dāng)前解集合更新為該優(yōu)化后的解集合,繼而再次判斷優(yōu)化次數(shù)是否超過(guò)優(yōu)化閾值,如果沒(méi)有則繼續(xù)對(duì)待優(yōu)化目標(biāo)進(jìn)行下一次的優(yōu)化,如此循環(huán),直到優(yōu)化次數(shù)超過(guò)優(yōu)化閾值。此時(shí),可計(jì)算當(dāng)前解集合中所有解在待優(yōu)化目標(biāo)的公式中的函數(shù)值,獲取所有函數(shù)值中最小函數(shù)值所對(duì)應(yīng)的解,并將該解確定為待優(yōu)化目標(biāo)的優(yōu)化結(jié)果。
重構(gòu)圖像獲取模塊34,用于根據(jù)所有的優(yōu)化結(jié)果,獲取圖像的稀疏系數(shù)矩陣,并根據(jù)預(yù)設(shè)的稀疏基,獲取重構(gòu)的圖像。
在本發(fā)明實(shí)施例中,圖像壓縮矩陣中每列數(shù)據(jù)的待優(yōu)化目標(biāo)經(jīng)過(guò)優(yōu)化后,都對(duì)應(yīng)著一個(gè)優(yōu)化結(jié)果,因此,將這些優(yōu)化結(jié)果進(jìn)行組合,可得到圖像的稀疏系數(shù)矩陣S,預(yù)設(shè)的稀疏基即優(yōu)化目標(biāo)確定模塊31中提到的稀疏基矩陣B,最終可根據(jù)圖像的原始矩陣等于稀疏系數(shù)矩陣與稀疏基矩陣之積(X=B·S),計(jì)算出圖像的原始矩陣,得到重構(gòu)后的圖像。
在本發(fā)明實(shí)施例中,獲取圖像壓縮矩陣中每列數(shù)據(jù)對(duì)應(yīng)的待優(yōu)化目標(biāo),當(dāng)優(yōu)化次數(shù)未超過(guò)優(yōu)化閾值時(shí),循環(huán)對(duì)待優(yōu)化目標(biāo)的優(yōu)化操作,具體的優(yōu)化操作包括變異、交叉、選擇以及基于軟閾值迭代局部搜索算法的局部搜索操作,直至優(yōu)化次數(shù)超過(guò)優(yōu)化閾值,最后通過(guò)所有待優(yōu)化目標(biāo)的優(yōu)化結(jié)果,得到圖像的稀疏系數(shù)矩陣,實(shí)現(xiàn)對(duì)圖像的重構(gòu),從而通過(guò)提高整個(gè)優(yōu)化過(guò)程的收斂速度和收斂能力,有效地降低了圖像重構(gòu)過(guò)程中軟硬件資源的消耗,提高了圖像的重構(gòu)效率和重構(gòu)精度。
實(shí)施例四:
圖4示出了本發(fā)明實(shí)施例四提供的一種圖像的稀疏重構(gòu)裝置中優(yōu)化模塊的結(jié)構(gòu),為了便于說(shuō)明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分,其中包括:
如實(shí)施例三中描述的,圖像壓縮矩陣中每列數(shù)據(jù)都對(duì)應(yīng)著一個(gè)待優(yōu)化目標(biāo),在本發(fā)明實(shí)施例中,對(duì)優(yōu)化模塊中33中對(duì)其中任一個(gè)待優(yōu)化目標(biāo)的優(yōu)化操作進(jìn)行描述:
變異模塊41,用于根據(jù)預(yù)設(shè)的策略概率,在待優(yōu)化目標(biāo)的當(dāng)前解集合中選取預(yù)設(shè)數(shù)量個(gè)當(dāng)前解,并根據(jù)預(yù)設(shè)的多個(gè)變異策略,對(duì)預(yù)設(shè)數(shù)量個(gè)當(dāng)前解中的每個(gè)當(dāng)前xi進(jìn)行變異。
在本發(fā)明實(shí)施例中,預(yù)先設(shè)置策略概率集合qg={q1,g,...,qk,g,...,qK,g}和多種變異策略,策略概率集合中的qk,g表示當(dāng)優(yōu)化次數(shù)為g時(shí)第k種變異策略對(duì)應(yīng)的策略概率,在變異操作中,依次采用K種變異策略對(duì)當(dāng)前解集合中預(yù)設(shè)數(shù)量個(gè)解進(jìn)行變異,其中,當(dāng)采用的變異策略不同時(shí),預(yù)設(shè)數(shù)量可能不同,具體地,當(dāng)在第g次優(yōu)化過(guò)程中采用第k種變異策略進(jìn)行變異操作時(shí),可從當(dāng)前解集合中選取qk,g×NP個(gè)當(dāng)前解,并將這qk,g×NP個(gè)當(dāng)前解中的每個(gè)當(dāng)前解xi按照第k種變異策略進(jìn)行變異,其中,NP為當(dāng)前解集合中當(dāng)前解的數(shù)目。
具體地,當(dāng)優(yōu)化次數(shù)為0時(shí)或在第一次優(yōu)化過(guò)程中,可對(duì)當(dāng)前解集合隨機(jī)進(jìn)行初始化,并將當(dāng)前解集合中的所有值初始化為K為變異策略的數(shù)目。
交叉模塊42,用于獲取變異操作后每個(gè)當(dāng)前解xi對(duì)應(yīng)的變異解xi',并根據(jù)預(yù)設(shè)的交叉概率,將當(dāng)前解xi與變異解xi'進(jìn)行交叉。
在本發(fā)明實(shí)施例中,在當(dāng)前解xi采用第k種變異策略變異得到變異解xi'后,可在預(yù)設(shè)的第k種變異策略的交叉概率集合CRk={CRk,1,...,CRk,i,...CRk,NP}(NP為當(dāng)前解集合中當(dāng)前解的數(shù)目)中獲取第k種變異策略對(duì)應(yīng)當(dāng)前解xi的交叉概率CRk,i,并將當(dāng)前解xi與變異解xi'按照該交叉概率CRk,i進(jìn)行交叉,因此根據(jù)當(dāng)前解在變異過(guò)程中采用的變異策略的不同,該當(dāng)前解交叉過(guò)程中的交叉概率也可能不同。
可選地,可預(yù)先設(shè)置總交叉概率集合CR={CR1,...,CRk,...,CRK},CRk表示第k種變異策略的交叉概率集合,CRk={CRk,1,...,CRk,i,...CRk,NP},其中,CRk,i表示第k種變異策略對(duì)應(yīng)當(dāng)前解xi的交叉概率,當(dāng)優(yōu)化次數(shù)為0或者在第1次優(yōu)化過(guò)程中時(shí),可初始化K種變異策略的交叉概率集合,其中,CRk,i可初始化為0。
選擇模塊43,用于獲取交叉操作后每個(gè)當(dāng)前解xi對(duì)應(yīng)的交叉解ui,并將當(dāng)前解xi的函數(shù)值與交叉解ui的函數(shù)值進(jìn)行比較,當(dāng)交叉解ui的函數(shù)值不超過(guò)當(dāng)前解xi的函數(shù)值時(shí),將交叉解ui存儲(chǔ)在預(yù)設(shè)的第一解集合中,否則,將當(dāng)前解xi存儲(chǔ)在第一解集合中。
在本發(fā)明實(shí)施例中,當(dāng)每個(gè)當(dāng)前解xi與變異解xi'交叉后得到交叉解ui時(shí),可將當(dāng)前解xi和交叉解ui分別代入待優(yōu)化目標(biāo)的公式得到函數(shù)值f(xi)和函數(shù)值f(ui),其中,將函數(shù)值f(xi)與函數(shù)值f(ui)進(jìn)行比較,當(dāng)函數(shù)值f(ui)不超過(guò)函數(shù)值f(ui)時(shí),可將交叉解ui存儲(chǔ)在預(yù)設(shè)的第一解集合中的對(duì)應(yīng)位置處,否則,將當(dāng)前解xi存儲(chǔ)在該第一解集合中的對(duì)應(yīng)位置處。
可選地,當(dāng)函數(shù)值f(ui)不超過(guò)函數(shù)值f(ui)時(shí),可將當(dāng)前解xi使用的交叉概率CRk,i存儲(chǔ)在預(yù)設(shè)的交叉成功概率集合CRlist(k)中,并對(duì)預(yù)設(shè)的第k種策略的進(jìn)化成功次數(shù)nsk,g進(jìn)行加一操作,否則,對(duì)預(yù)設(shè)的第k種策略的進(jìn)化失敗次數(shù)nfk,g進(jìn)行加一操作,以便后續(xù)根據(jù)交叉成功概率集合CRlist(k)、第k種策略的進(jìn)化成功次數(shù)nsk,g以及第k種策略的進(jìn)化失敗次數(shù)nfk,g等數(shù)據(jù),對(duì)策略概率和交叉概率進(jìn)行更新操作。
局部搜索模塊44,用于根據(jù)預(yù)設(shè)的軟閾值迭代局部搜索算法,對(duì)第一解集合中每個(gè)解進(jìn)行局部搜索,獲取每個(gè)解對(duì)應(yīng)的局部搜索解,并將第一解集合中的解與局部搜索解進(jìn)行比較操作,并將比較后的解存儲(chǔ)在預(yù)設(shè)的第二解集合中。
在本發(fā)明實(shí)施例中,軟閾值迭代局部搜索算法具有較好的局部搜索能力和收斂速度,通過(guò)該局部搜索算法,在第一解集合中進(jìn)行梯度搜索,以得到每個(gè)解對(duì)應(yīng)的局部搜索解,并將該局部搜索解與第一解集合中的解進(jìn)行選擇模塊33中的函數(shù)比較操作,將比較后的解存儲(chǔ)在預(yù)設(shè)的第二解集合中。
解集合更新模塊45,用于將第二解集合確定為待優(yōu)化目標(biāo)的當(dāng)前解集合。
在本發(fā)明實(shí)施例中,待優(yōu)化目標(biāo)的當(dāng)前解集合經(jīng)過(guò)變異、交叉、選擇以及局部搜索后,得到第二解集合,之后,將該第二解集合設(shè)置為待優(yōu)化目標(biāo)的當(dāng)前解集合。
優(yōu)選地,優(yōu)化模塊還包括概率更新模塊46,其中:
概率更新模塊46,用于當(dāng)優(yōu)化次數(shù)超過(guò)預(yù)設(shè)的學(xué)習(xí)閾值時(shí),更新策略概率和交叉概率。
優(yōu)選地,可預(yù)設(shè)設(shè)置學(xué)習(xí)閾值,當(dāng)優(yōu)化次數(shù)超過(guò)學(xué)習(xí)閾值時(shí),可根據(jù)不同變異策略在優(yōu)化過(guò)程中的貢獻(xiàn),對(duì)策略概率集合qg={q1,g,...,qk,g,...,qK,g}中的策略概率和總交叉概率集合CR={CR1,...,CRk,...,CRK}中K種集合的交叉概率集合進(jìn)行更新,從而實(shí)現(xiàn)對(duì)變異策略的智能選擇,增加了優(yōu)化過(guò)程中解的多樣性,有效地提高了優(yōu)化過(guò)程的收斂速度和收斂能力。
作為示例地,策略概率集合qg={q1,g,...,qk,g,...,qK,g}的qk,g的更新公式可為:
其中,Sk,g為在優(yōu)化次數(shù)為第g次時(shí)當(dāng)前解集合中的解采用第k種變異策略成功進(jìn)入第一解集合的概率,ε為預(yù)設(shè)參數(shù)。
作為示例地,第k種策略的交叉概率集合CRk={CRk,1,...,CRk,i,...CRk,NP}的更新步驟可為:
(1)檢測(cè)交叉成功概率集合CRlist(k)是否為空;
(2)當(dāng)交叉成功概率集合CRlist(k)不為空時(shí),計(jì)算交叉成功概率集合CRlist(k)的中值,將第k種策略的交叉概率集合CRk={CRk,1,...,CRk,i,...CRk,NP}設(shè)置為以該中值為均值、以預(yù)設(shè)常數(shù)為標(biāo)準(zhǔn)差的高斯隨機(jī)值;
(3)當(dāng)交叉成功概率集合CRlist(k)為空時(shí),獲取高斯隨機(jī)值CRmk,并將第k種策略的交叉概率集合CRk={CRk,1,...,CRk,i,...CRk,NP}設(shè)置為以高斯隨機(jī)值CRmk為均值、以預(yù)設(shè)常數(shù)為標(biāo)準(zhǔn)差的高斯隨機(jī)值。
在本發(fā)明實(shí)施例中,對(duì)待優(yōu)化目標(biāo)的當(dāng)前解集合進(jìn)行變異、交叉、選擇,得到第一解集合,接著,采用預(yù)設(shè)的軟閾值迭代收縮局部搜索算法,對(duì)待第一解集合進(jìn)行局部搜索,得到第二解集合,并將第二解集合設(shè)置為待優(yōu)化目標(biāo)的當(dāng)前解集合,從而不僅完成對(duì)待優(yōu)化目標(biāo)的整個(gè)優(yōu)化過(guò)程,而且有效地提高了優(yōu)化過(guò)程的收斂速度和收斂能力。
在本發(fā)明實(shí)施例中,圖像的稀疏重構(gòu)裝置的各模塊可由相應(yīng)的硬件或軟件模塊實(shí)現(xiàn),各模塊可以為獨(dú)立的軟、硬件模塊,也可以集成為一個(gè)軟、硬件模塊,在此不用以限制本發(fā)明。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。