技術(shù)領(lǐng)域:
本發(fā)明涉及無線通信領(lǐng)域,尤其涉及壓縮感知領(lǐng)域中一種基于stomp的改進(jìn)壓縮感知重構(gòu)算法。
背景技術(shù):
:
壓縮感知理論是一種新興的信號(hào)壓縮采樣技術(shù)。該理論中的核心問題是信號(hào)的重構(gòu)問題,常用的重構(gòu)方法主要有貪婪追蹤算法、凸松弛算法和組合算法這三大類。貪婪追蹤算法由于算法結(jié)構(gòu)簡(jiǎn)單、計(jì)算量小等優(yōu)點(diǎn)備受關(guān)注,而正交匹配追蹤(orthogonalmatchingpursuit,omp)類算法為其主流,更成為研究者研究的重點(diǎn),國(guó)內(nèi)外許多研究者對(duì)此類算法進(jìn)行了研究與改進(jìn)。
貪婪追蹤算法是通過貪婪迭代的方法來更新支撐集,逐步逼近原始解,目前常用的貪婪算法有omp算法、分段正交匹配追蹤(stagewiseorthogonalmatchingpursuit,stomp)算法、正則化正交匹配追蹤(regularizedorthogonalmatchingpursuit,romp)算法、壓縮采樣匹配追蹤(compressivesamplingmatchingpursuit,cosamp)算法、子空間追蹤(subpuistpursuit,sp)算法、稀疏度自適應(yīng)匹配追蹤(sparsityadaptivematchingpursuit,samp)算法等。
stomp算法因每次迭代根據(jù)閾值選擇得到的是多個(gè)匹配原子而不是單個(gè)原子,減少了迭代次數(shù),相對(duì)于omp算法進(jìn)行了一定程度的簡(jiǎn)化,使運(yùn)行時(shí)間為常用匹配算法里較少的一種,且它不需要知道稀疏度。由于并沒有運(yùn)用稀疏度這一先驗(yàn)信息,且原子的選擇跟閾值設(shè)置緊密相關(guān),固其重構(gòu)精度不夠理想。
sp算法在omp的基礎(chǔ)上,引入回溯思想,為了提高算法的收斂速度和算法效率,通過回溯的思想從原子庫里選擇多個(gè)相關(guān)原子同時(shí)剔除部分不相關(guān)原子,在每次迭代中保證了原子的可信賴度;但其對(duì)稀疏度依賴性大,若錯(cuò)誤估計(jì)了稀疏度的值,算法精確重構(gòu)的能力會(huì)下降。
romp算法在omp的基礎(chǔ)上改進(jìn)了原子的選擇標(biāo)準(zhǔn),通過正則化過程對(duì)原子進(jìn)行了二次選擇。它結(jié)合了貪婪算法的速度和凸優(yōu)化方法的強(qiáng)有力的理論保證,給出了不同終止準(zhǔn)則下的重構(gòu)誤差的上限。romp算法的運(yùn)行時(shí)間與omp算法的運(yùn)行時(shí)間在理論上是相當(dāng)?shù)模倚枰烙?jì)稀疏度,但它具有較高的重構(gòu)精度。
綜上,對(duì)于現(xiàn)在已經(jīng)出現(xiàn)的壓縮感知重構(gòu)算法,均存在重構(gòu)精度低或復(fù)雜度高的問題,這就亟需本領(lǐng)域技術(shù)人員解決相應(yīng)的技術(shù)問題。
技術(shù)實(shí)現(xiàn)要素:
:
本發(fā)明旨在至少解決現(xiàn)有技術(shù)中存在的技術(shù)問題,特別創(chuàng)新地提出了一種基于改進(jìn)stomp的壓縮感知重構(gòu)算法。
為了實(shí)現(xiàn)本發(fā)明的上述目的,本發(fā)明提供了一種基于改進(jìn)stomp的壓縮感知重構(gòu)算法,其特征在于,包括:
s1,基于分段正交匹配追蹤算法,根據(jù)閾值大小選擇執(zhí)行回溯原子選擇算法或romp算法。
s2,引入子空間正交匹配追蹤算法的回溯思想,即回溯原子選擇算法,使每次選擇的原子個(gè)數(shù)等于分段正交匹配追蹤算法中選出的列數(shù)。
s3,將回溯原子選擇算法和romp嵌入stomp中,根據(jù)相鄰兩次重構(gòu)信號(hào)能量差判斷是否進(jìn)行算法轉(zhuǎn)換或者迭代停止。
所述的一種基于改進(jìn)stomp的壓縮感知重構(gòu)算法,其特征在于,所述s1包括:
考慮原信號(hào)
x=ψθ
其中,
選擇隨機(jī)高斯矩陣作為觀測(cè)矩陣φ,其內(nèi)元素均滿足高斯分布n(0,1/n),則n維信號(hào)可由m個(gè)觀測(cè)值表示:
y=φx=φψθ=aθ
其中,
令r0=y(tǒng),并以h=β×max(th)作為判斷標(biāo)準(zhǔn),確定下一步執(zhí)行回溯原子選擇算法或romp算法,其中th=tsσs,根據(jù)經(jīng)驗(yàn)值取ts=2.5,
根據(jù)stomp,以rt表示殘差,t表示迭代次數(shù),
首先計(jì)算u=<rt-1,aj>,1≤j≤n,選u中大于閾值th=tsσs的c列,并記對(duì)應(yīng)的a列序號(hào)j構(gòu)成集合jo;然后,令λt=λt-1∪jo,at=at-1∪aj(j∈jo)。再則令ts=2.5,
當(dāng)th>h時(shí),將stomp選出的at執(zhí)行回溯原子選擇算法;
當(dāng)th<h時(shí),將stomp選出的at執(zhí)行romp算法。
所述的一種基于改進(jìn)stomp的壓縮感知重構(gòu)算法,其特征在于,所述s2包括:
當(dāng)th>h時(shí),將stomp選出的at執(zhí)行回溯原子選擇算法,引入回溯思想,確保原子可靠性,選出的稀疏系數(shù)估計(jì)值個(gè)數(shù)等于分段正交匹配選出的原子列數(shù)c。
首先,求y=atθt的最小二乘解:
所述的一種基于改進(jìn)stomp的壓縮感知重構(gòu)算法,其特征在于,所述s3包括:
將回溯原子選擇算法和romp嵌入stomp中,根據(jù)相鄰兩次重構(gòu)信號(hào)能量差的大小確定算法的轉(zhuǎn)換或迭代的停止。
在stomp中,閾值th是殘差的函數(shù),隨迭代過程中殘差的變小而變小,則以閾值th反映重構(gòu)的進(jìn)度。
當(dāng)殘差值較大,滿足th>h時(shí),迭代得到的重構(gòu)信號(hào)離目標(biāo)值較遠(yuǎn),此時(shí)執(zhí)行回溯原子選擇算法,迭代一次得到c個(gè)有效原子,迭代至相鄰兩次重構(gòu)信號(hào)的能量差小于ε1時(shí)停止執(zhí)行回溯原子選擇算法,轉(zhuǎn)而執(zhí)行romp算法。
當(dāng)殘差值較小,滿足th<h時(shí),迭代得到的重構(gòu)信號(hào)較靠近目標(biāo)值,此時(shí)選擇romp算法,迭代一次得到不大于c個(gè)有效原子,迭代至相鄰兩次重構(gòu)信號(hào)的能量差小于ε2時(shí),停止迭代,并輸出重構(gòu)信號(hào)作為最終結(jié)果。
當(dāng)th>h時(shí),執(zhí)行回溯原子選擇算法;迭代至相鄰兩次重構(gòu)得到的信號(hào)能量差滿足:
當(dāng)th<h時(shí),執(zhí)行romp算法,對(duì)原子進(jìn)行正則化;首先,構(gòu)建子空間,使其內(nèi)的元素滿足:
進(jìn)入romp算法后,迭代直到相鄰兩次重構(gòu)信號(hào)能量差滿足
本發(fā)明通過改進(jìn)stomp壓縮感知重構(gòu)算法,有效地利用閾值判斷標(biāo)準(zhǔn)保證算法收斂速度和精度,同時(shí)將相鄰兩次重構(gòu)信號(hào)的能量差作為算法轉(zhuǎn)化依據(jù)和停止迭代的依據(jù),結(jié)合了回溯原子選擇算法收斂速度快和romp算法重構(gòu)精度高的優(yōu)點(diǎn),實(shí)現(xiàn)重構(gòu)精度和收斂速度的折中。
附圖說明
本發(fā)明的上述和/或附加的方面和優(yōu)點(diǎn)從結(jié)合下面附圖對(duì)實(shí)施例的描述中將變得明顯和容易理解,其中:
圖1是本發(fā)明總體流程圖。
具體實(shí)施方式
下面詳細(xì)描述本發(fā)明的實(shí)施例,所述實(shí)施例的示例在附圖中示出,其中自始至終相同或類似的標(biāo)號(hào)表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實(shí)施例是示例性的,僅用于解釋本發(fā)明,而不能理解為對(duì)本發(fā)明的限制。
在本發(fā)明的描述中,需要理解的是,術(shù)語“縱向”、“橫向”、“上”、“下”、“前”、“后”、“左”、“右”、“豎直”、“水平”、“頂”、“底”“內(nèi)”、“外”等指示的方位或位置關(guān)系為基于附圖所示的方位或位置關(guān)系,僅是為了便于描述本發(fā)明和簡(jiǎn)化描述,而不是指示或暗示所指的裝置或元件必須具有特定的方位、以特定的方位構(gòu)造和操作,因此不能理解為對(duì)本發(fā)明的限制。
在本發(fā)明的描述中,除非另有規(guī)定和限定,需要說明的是,術(shù)語“安裝”、“相連”、“連接”應(yīng)做廣義理解,例如,可以是機(jī)械連接或電連接,也可以是兩個(gè)元件內(nèi)部的連通,可以是直接相連,也可以通過中間媒介間接相連,對(duì)于本領(lǐng)域的普通技術(shù)人員而言,可以根據(jù)具體情況理解上述術(shù)語的具體含義。
本發(fā)明提出了一種基于改進(jìn)stomp的壓縮感知重構(gòu)算法,有效地將回溯原子選擇算法和romp嵌入stomp中,基于stomp收斂速度快的優(yōu)點(diǎn),利用stomp的閾值大小標(biāo)準(zhǔn)將重構(gòu)過程分為兩個(gè)階段:重構(gòu)初始階段,即離目標(biāo)值較遠(yuǎn)時(shí)執(zhí)行回溯原子選擇算法,引入回溯思想提高原子可靠性;重構(gòu)過程末端,即接近目標(biāo)值階段的利用omp進(jìn)行高精度逼近,實(shí)現(xiàn)重構(gòu)算法收斂速度和精度的有效結(jié)合。
結(jié)合附圖1對(duì)本發(fā)明進(jìn)行詳細(xì)說明,主要包括以下步驟:
步驟1:開始。
步驟2:接收到觀測(cè)值,開始執(zhí)行stomp。
考慮原信號(hào)
y=φx=φψθ=aθ
其中,
根據(jù)stomp,以rt表示殘差,t表示迭代次數(shù),
首先計(jì)算u=<rt-1,aj>,1≤j≤n,選擇u中大于閾值th=tsσs的c列,并記下這些值對(duì)應(yīng)a的列序號(hào)j構(gòu)成集合jo。接著,令λt=λt-1∪jo,at=at-1∪aj(j∈jo)。
步驟3:確定閾值大小判斷標(biāo)準(zhǔn),選擇下一步執(zhí)行回溯原子選擇算法或romp算法。
令r0=y(tǒng),并將
取ts=2.5,
當(dāng)th>h時(shí),將步驟2選出的at執(zhí)行回溯原子選擇算法;
當(dāng)th<h時(shí),將步驟2選出的at執(zhí)行romp算法。
步驟4:執(zhí)行回溯原子選擇算法或romp算法。
當(dāng)th>h時(shí),將步驟2中選出的at執(zhí)行回溯原子選擇算法,引入回溯思想保證原子可靠性:
首先,求y=atθt的最小二乘解:
當(dāng)th<h時(shí),將步驟2選出的at執(zhí)行romp算法。
首先,構(gòu)建子空間,使其內(nèi)的元素滿足:
步驟5:判斷對(duì)應(yīng)的停止條件,進(jìn)行算法轉(zhuǎn)換或停止。
取迭代次數(shù)的經(jīng)驗(yàn)值s=10,
當(dāng)th>h時(shí),執(zhí)行回溯原子選擇算法,迭代至相鄰兩次重構(gòu)得到的信號(hào)能量差滿足:
進(jìn)入romp算法后,迭代直到相鄰兩次重構(gòu)信號(hào)能量差滿足
步驟6:判斷是否迭代次數(shù)t是否大于s=10,大于則執(zhí)行步驟8,否則執(zhí)行步驟2。
步驟7:輸出重構(gòu)信號(hào)
步驟8:結(jié)束。
在本說明書的描述中,參考術(shù)語“一個(gè)實(shí)施例”、“一些實(shí)施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結(jié)合該實(shí)施例或示例描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)包含于本發(fā)明的至少一個(gè)實(shí)施例或示例中。在本說明書中,對(duì)上述術(shù)語的示意性表述不一定指的是相同的實(shí)施例或示例。而且,描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)可以在任何的一個(gè)或多個(gè)實(shí)施例或示例中以合適的方式結(jié)合。
盡管已經(jīng)示出和描述了本發(fā)明的實(shí)施例,本領(lǐng)域的普通技術(shù)人員可以理解:在不脫離本發(fā)明的原理和宗旨的情況下可以對(duì)這些實(shí)施例進(jìn)行多種變化、修改、替換和變型,本發(fā)明的范圍由權(quán)利要求及其等同物限定。