麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

基于fpga的正交匹配追蹤方法

文檔序號(hào):6235894閱讀:229來(lái)源:國(guó)知局
基于fpga的正交匹配追蹤方法
【專利摘要】本發(fā)明公開(kāi)了一種基于FPGA的正交匹配追蹤方法,主要解決現(xiàn)有雷達(dá)系統(tǒng)處理復(fù)雜算法能力有限及處理速度慢的問(wèn)題,其實(shí)現(xiàn)方法是:根據(jù)雷達(dá)回波數(shù)據(jù)得到觀測(cè)向量和字典矩陣;初始化誤差余量為觀測(cè)向量并對(duì)其補(bǔ)零至2048長(zhǎng)度后調(diào)用FFT核對(duì)其做逆傅里葉變換;對(duì)FFT核輸出的數(shù)據(jù)取模的平方并找到最大值的位置,即為誤差余量相關(guān)性最大的列位置索引;根據(jù)找到的列位置索引更新列向量集合;對(duì)列向量集合進(jìn)行施密特正交化處理更新誤差余量;對(duì)誤差余量取二范數(shù)并判斷該二范數(shù)是否小于1,若滿足此條件則用共軛梯度算法恢復(fù)出原始信號(hào)。本發(fā)明具有速度更快,資源占用更低的優(yōu)點(diǎn),可用于對(duì)基于傅里葉基的大規(guī)模字典矩陣和高稀疏度信號(hào)進(jìn)行重建。
【專利說(shuō)明】基于FPGA的正交匹配追蹤方法

【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于數(shù)字信號(hào)處理【技術(shù)領(lǐng)域】,特別涉及利用觀測(cè)信號(hào)進(jìn)行完整信號(hào)重建算法的加速硬件實(shí)現(xiàn)方法,可用于合成孔徑雷達(dá)/逆合成孔徑雷達(dá)、步進(jìn)頻率雷達(dá)成像。

【背景技術(shù)】
[0002]雷達(dá)進(jìn)行目標(biāo)檢測(cè)時(shí),由于受到復(fù)雜電磁環(huán)境、雷達(dá)系統(tǒng)本身的缺陷、目標(biāo)運(yùn)動(dòng)姿態(tài)變化等影響,可能會(huì)導(dǎo)致回波數(shù)據(jù)稀疏采樣,若采用傳統(tǒng)的傅里葉分析方法,會(huì)出現(xiàn)目標(biāo)點(diǎn)散焦和圖像模糊等現(xiàn)象,因此如何實(shí)現(xiàn)稀疏信號(hào)目標(biāo)檢測(cè)和成像非常重要。2006年由D.Donoho> E.Candes> T.Tao等人提出的一種全新的信息獲取指導(dǎo)理論,即壓縮感知CS,該理論指出:對(duì)稀疏或可壓縮的信號(hào)通過(guò)遠(yuǎn)低于奈奎斯特標(biāo)準(zhǔn)的采樣率進(jìn)行數(shù)據(jù)采樣,通過(guò)解一個(gè)非線性最優(yōu)化問(wèn)題,即可精確地恢復(fù)出原始信號(hào)。該理論一經(jīng)提出,就在信號(hào)/圖像處理、醫(yī)療成像、模式識(shí)別、光學(xué)/雷達(dá)成像、信息論、無(wú)線通信等領(lǐng)域受到高度關(guān)注。2007年,R.Baraniuk等人首次正式討論了壓縮感知原理在雷達(dá)成像中的應(yīng)用,他們通過(guò)理論分析和數(shù)值仿真證明了壓縮感知在雷達(dá)成像領(lǐng)域中的可行性。壓縮感知理論的建立和快速發(fā)展,為稀疏信號(hào)重構(gòu)技術(shù)的實(shí)現(xiàn)提供了理論依據(jù)。
[0003]稀疏信號(hào)重構(gòu)需要通過(guò)求解I1范數(shù)優(yōu)化問(wèn)題得到,I1范數(shù)優(yōu)化算法雖然計(jì)算精度較高,但是算法的計(jì)算復(fù)雜度極高,不利于實(shí)時(shí)處理與移動(dòng)平臺(tái)的實(shí)現(xiàn)。運(yùn)算效率較高的求解方法為貪婪算法,主要包括匹配追蹤算法MP、正交匹配追蹤算法0ΜΡ、分布正交匹配追蹤算法StOMP、正則化匹配追蹤算法ROMP等。其中,OMP算法具有極高的運(yùn)算效率,基于硬件平臺(tái)的算法實(shí)現(xiàn)具有較高的應(yīng)用價(jià)值,但對(duì)現(xiàn)有的OMP算法進(jìn)行FPGA實(shí)現(xiàn)時(shí)仍存在以下缺占-
^ \\\.
[0004]I)用FPGA實(shí)現(xiàn)OMP算法時(shí),會(huì)大量涉及到矩陣一向量相乘、向量一向量相乘操作,而隨著字典矩陣規(guī)模的增加,矩陣一向量相乘所占用的時(shí)鐘周期和系統(tǒng)資源會(huì)急劇增加,從而對(duì)求解速度的提升和硬件資源的優(yōu)化造成限制。
[0005]2)在求解最小二乘部分,現(xiàn)有的求解方法多是通過(guò)LU分解、QR分解等對(duì)矩陣進(jìn)行求逆來(lái)解最小二乘問(wèn)題,這種方法的缺點(diǎn)是當(dāng)矩陣規(guī)模增大時(shí),計(jì)算復(fù)雜度會(huì)大大增加,相應(yīng)的計(jì)算時(shí)間會(huì)增加,進(jìn)而降低了對(duì)信號(hào)的處理速度。
[0006]3)現(xiàn)有技術(shù)所使用的數(shù)據(jù)類型多為定點(diǎn)型的實(shí)數(shù),而雷達(dá)接收到的數(shù)據(jù)則是含有相位信息的復(fù)數(shù),算法的實(shí)用性不強(qiáng)。


【發(fā)明內(nèi)容】

[0007]本發(fā)明的目的在于針對(duì)上述已有技術(shù)的不足,提出一種基于FPGA的正交匹配追蹤方法,以對(duì)基于稀疏傅里葉基的OMP算法進(jìn)行優(yōu)化,在滿足復(fù)雜運(yùn)算的同時(shí)減少系統(tǒng)資源和計(jì)算延時(shí),提高信號(hào)重構(gòu)速度和實(shí)用性。
[0008]為實(shí)現(xiàn)上述目的,本發(fā)明包括如下步驟:
[0009](I)根據(jù)雷達(dá)回波數(shù)據(jù),利用Matlab軟件產(chǎn)生一個(gè)2048 X 2048大小的傅里葉基矩陣Φ和512 X 2048大小的隨機(jī)矩陣Α,用該隨即矩陣A分別對(duì)傅里葉基矩陣Φ和雷達(dá)回波數(shù)據(jù)進(jìn)行抽取生成512X2048大小的字典矩陣Ψ和512長(zhǎng)度的測(cè)量向量y,并將該字典矩陣Ψ和測(cè)量向量I中的數(shù)據(jù)量化成32bit單精度浮點(diǎn)型數(shù)據(jù)后存儲(chǔ)到ROM中;
[0010](2)初始化迭代次數(shù)t為1,初始化誤差余量Rtl為測(cè)量向量y,初始化列向量集合
Φ和位置索引集合Atl為空集;
[0011](3)計(jì)算字典矩陣ψ與誤差余量Rh的相關(guān)性:即按隨機(jī)抽取的先驗(yàn)知識(shí)對(duì)512長(zhǎng)度的誤差余量IV1補(bǔ)零生成2048長(zhǎng)度的向量I—,,再對(duì)該向量L1進(jìn)行IFFT運(yùn)算;
[0012](4)對(duì)步驟(3)的計(jì)算結(jié)果取模的平方得到2048長(zhǎng)度的實(shí)向量ht,求出ht中的最大元素所處的位置Xt,該位置Xt即為字典矩陣Ψ中與誤差余量IV1相關(guān)性最大的列所處的位置,再利用該位置λ 1更新列向量集合I),和位置索引集合At;
[0013](5)對(duì)列向量集合'表進(jìn)行施密特正交化處理生成正交矩陣qt,并用正交矩陣屯更新誤差余量-Cl, -(q1/./?,,),其中g(shù)f是正交矩陣qt的共軛轉(zhuǎn)置矩陣;
[0014](6)判斷誤差余量Rt的2范數(shù)是否小于I,若滿足此收斂條件,則執(zhí)行步驟(7),否則將迭代次數(shù)t加I后重復(fù)步驟(3)?(5);
[0015](7)根據(jù)觀測(cè)向量y和最新的列向量集1"Φ利用共軛梯度算法對(duì)雷達(dá)目標(biāo)信號(hào)X進(jìn)行恢復(fù)與重建:
[0016]7.1)對(duì)列向量集合免進(jìn)行共軛轉(zhuǎn)置得到矩陣Φ',將該共軛轉(zhuǎn)置矩陣分別與列向量集合φ和觀測(cè)向量I相乘得到矩陣C和迭代向量b ;
[0017]7.2)初始化迭代次數(shù)k為1,初始化殘差向量r°和搜索方向d°為迭代向量b,初始化待恢復(fù)信號(hào)X°為零向量;
[0018]7.3)將矩陣C和搜索方向cT相乘得到過(guò)渡向量qk,同時(shí)將殘差向量P進(jìn)行共軛轉(zhuǎn)置得到共軛轉(zhuǎn)置向量(rH)H,將該共軛轉(zhuǎn)置向量(rH)H與殘差向量Z1相乘得到舊殘差因子δ0;
[0019]7.4)利用過(guò)渡向量qk、搜索方向cT和舊殘差因子δ。計(jì)算搜索步長(zhǎng)α:α = δ。/[(cT)11.qk],其中(cT1)11是搜索方向cT的共軛轉(zhuǎn)置;
[0020]7.5)利用搜索步長(zhǎng)α、搜索方向cT更新待恢復(fù)信號(hào):xk = f1+ a cT1,其中Xlrf是第k-1次迭代得到的待恢復(fù)信號(hào),同時(shí)利用搜索步長(zhǎng)α和過(guò)渡向量qk更新殘差向量rk:rk=qk,其中Α1是第k-1次迭代得到的殘差向量;
[0021]7.6)將更新后的殘差向量rk進(jìn)行共軛轉(zhuǎn)置得到行殘差向量(rk)H,再將該行殘差向量(rk)H與殘差向量rk相乘得到新殘差因子δη;
[0022]7.7)利用新殘差因子δη、舊殘差因子δ。和更新后的殘差向量rk更新搜索方向dk:dk = rk+i3 cT1,以在下次迭代時(shí)更新搜索步長(zhǎng)α和待恢復(fù)信號(hào)xk,其中cT是第k_l次迭代得到的搜索方向;
[0023]7.8)判斷迭代次數(shù)k是否等于12,若k= 12,則迭代結(jié)束,輸出待恢復(fù)信號(hào)xk,否則將迭代次數(shù)k加I后重復(fù)步驟7.3)?7.7)。
[0024]本發(fā)明具有如下優(yōu)點(diǎn):
[0025]1.處理速度快,資源和功耗小
[0026]本發(fā)明基于FPGA實(shí)現(xiàn),由于FPGA有豐富的內(nèi)部資源,在數(shù)據(jù)處理過(guò)程中可調(diào)用FPGA內(nèi)部的IP核實(shí)現(xiàn)數(shù)據(jù)的復(fù)乘、FFT運(yùn)算等功能;且FPGA并行處理度高,可大幅提升數(shù)據(jù)的處理速度;另外FPGA還具有靈活的算法適應(yīng)性和較低的功耗等優(yōu)點(diǎn),用FPGA作為稀疏信號(hào)重構(gòu)算法的實(shí)現(xiàn)平臺(tái)可減少系統(tǒng)資源和功耗。
[0027]2.優(yōu)化資源,進(jìn)一步提高了處理速度
[0028]在現(xiàn)有的OMP算法中,當(dāng)字典矩陣規(guī)模較大時(shí),用字典矩陣與誤差余量相乘求相關(guān)性將耗費(fèi)大量的時(shí)間和資源,本發(fā)明通過(guò)對(duì)誤差余量進(jìn)行補(bǔ)零并對(duì)補(bǔ)零后的向量進(jìn)行IFFT運(yùn)算的方法來(lái)計(jì)算字典矩陣與誤差余量的相關(guān)性,減小了資源的占用,進(jìn)一步提高了處理速度。
[0029]3.適用于大稀疏度信號(hào)的重建
[0030]本發(fā)明用共軛梯度算法CG對(duì)雷達(dá)目標(biāo)信號(hào)進(jìn)行恢復(fù)與重建,由于該CG算法的數(shù)據(jù)一致性很好,計(jì)算比較密集、規(guī)整,恢復(fù)大稀疏度信號(hào)時(shí),CG算法與QR分解法相比具有更快的速度和更少的資源占用。
[0031]4.適用性強(qiáng)
[0032]現(xiàn)有OMP算法的FPGA實(shí)現(xiàn)大多采用的是定點(diǎn)型的實(shí)數(shù),而雷達(dá)回波信號(hào)是帶有相位信息的復(fù)數(shù),使得算法在實(shí)際應(yīng)用中受到限制。本發(fā)明采用單精度浮點(diǎn)型的復(fù)數(shù),在雷達(dá)成像中具有更強(qiáng)的適用性。

【專利附圖】

【附圖說(shuō)明】
[0033]圖1是本發(fā)明的實(shí)現(xiàn)流程圖;
[0034]圖2是在占用資源相同的情況下,用本發(fā)明和矩陣-向量相乘法求字典矩陣與誤差余量相關(guān)性的時(shí)間對(duì)比圖;
[0035]圖3是用本發(fā)明和QR分解法恢復(fù)目標(biāo)信號(hào)的時(shí)間對(duì)比圖;
[0036]圖4是用本發(fā)明和QR分解法恢復(fù)目標(biāo)信號(hào)占用的DSP48E1S資源對(duì)比圖。
具體實(shí)施方案
[0037]參照附圖1,本發(fā)明的具體實(shí)施步驟如下:
[0038]步驟1.根據(jù)雷達(dá)回波數(shù)據(jù)產(chǎn)生觀測(cè)向量和字典矩陣。
[0039]1.1)根據(jù)雷達(dá)回波數(shù)據(jù)利用Matlab軟件產(chǎn)生一個(gè)2048X2048大小的傅里葉基矩陣Φ和512X2048大小的隨機(jī)矩陣A,用該隨機(jī)矩陣A分別與傅里葉基矩陣Φ和雷達(dá)回波數(shù)據(jù)相乘生成512X2048大小的字典矩陣Ψ和512長(zhǎng)度的測(cè)量向量y:Ψ = Α.Φ,γ=A.χ,其中X是雷達(dá)回波數(shù)據(jù),包含2048個(gè)復(fù)數(shù);再把字典矩陣Ψ和測(cè)量向量y中的數(shù)據(jù)量化成32bit單精度浮點(diǎn)型數(shù)據(jù)后存儲(chǔ)到ROM中;
[0040]1.2)初始化誤差余量Rtl為觀測(cè)向量1,并將誤差余量Rtl存儲(chǔ)在RAM中,初始化列向量集合^^和位置索引集合Atl為空集:&,=#,A0 = Φ,其中Φ表示空集,初始化迭代次數(shù)t為I。
[0041]步驟2.計(jì)算字典矩陣與誤差余量的相關(guān)性。
[0042]2.1)按隨機(jī)抽取的先驗(yàn)知識(shí)對(duì)512長(zhǎng)度的誤差余量Rw補(bǔ)零生成2048長(zhǎng)度的插值向量Tp1;
[0043]2.2)調(diào)用FPGA內(nèi)部的FFT核,對(duì)其進(jìn)行配置,即將控制FFT/IFFT功能選擇的fwd_inv信號(hào)設(shè)為O以實(shí)現(xiàn)IFFT功能,將數(shù)據(jù)類型選擇為浮點(diǎn)型,數(shù)據(jù)輸出方式選擇自然順序輸出;
[0044]2.3)用配置好的FFT核對(duì)插值向量T i作IFFT運(yùn)算,得到相關(guān)性向量:& = WT7HU,其中相關(guān)性向量gt是長(zhǎng)度為2048的復(fù)向量。
[0045]步驟3.尋找字典矩陣Ψ中與誤差余量IV1相關(guān)性最大的列,并更新位置索引集合和列向量集合。
[0046]3.1)調(diào)用浮點(diǎn)乘法器IP核和浮點(diǎn)加法器IP核對(duì)相關(guān)性向量gt中的各元素取模的平方,得到一個(gè)2048長(zhǎng)度的實(shí)相關(guān)向量:ht= |gt(i) 2,i = 1,2,...,2048,其中&(1)是相關(guān)性向量的gt的第i個(gè)元素;
[0047]3.2)利用冒泡法找到實(shí)相關(guān)向量ht中的最大元素在向量中的位置,記為λ t,該位置λ t即為字典矩陣Ψ中與誤差余量IV1相關(guān)性最大的列在字典矩陣Ψ中所處的位置;
[0048]3.3)根據(jù)最新找到的位置Xt更新位置索引集合At和列向量集合灸:At =Am U λ Ut7,其中Λ H是第t-ι次迭代后的位置索引集合Φ ,是第t-ι次迭代得到的列向量集合,是字典矩陣Ψ中第λ t列對(duì)應(yīng)的列向量;并將得到的列向量集合黽存儲(chǔ)在RAM中。
[0049]步驟4.更新誤差余量Rt。
[0050]4.1)對(duì)列向量集合進(jìn)行施密特正交化處理:
[0051]4.1a)進(jìn)行第η次迭代時(shí),列向量集合化中共有η個(gè)長(zhǎng)度為512的列向量,即
={《.,/ = 1,2,...,?},其中(J)i是列向量集合φ.H勺第i個(gè)列向量;
[0052]4.1b)初始化正交基矩陣η = [Il1, η2,...,ili,...,ηη],其中第i個(gè)正交基向量Hi是正交基矩陣η的第i個(gè)列向量,初始化第I個(gè)正交基向量H1為列向量集合中的第I個(gè)列向量:1= Φι ;
[0053]4.1c)調(diào)用FPGA內(nèi)部的乘累加IP核和減法器IP核,按如下公式計(jì)算第i個(gè)正交基向量rI i:
[0054]

【權(quán)利要求】
1.一種基于FPGA的正交匹配追蹤方法,包括如下步驟: (1)根據(jù)雷達(dá)回波數(shù)據(jù),利用Matlab軟件產(chǎn)生一個(gè)2048X2048大小的傅里葉基矩陣Φ和512X2048大小的隨機(jī)矩陣A,用該隨即矩陣A分別對(duì)傅里葉基矩陣Φ和雷達(dá)回波數(shù)據(jù)進(jìn)行抽取生成512X2048大小的字典矩陣Ψ和512長(zhǎng)度的測(cè)量向量y,并將該字典矩陣Ψ和測(cè)量向量I中的數(shù)據(jù)量化成32bit單精度浮點(diǎn)型數(shù)據(jù)后存儲(chǔ)到ROM中; (2)初始化迭代次數(shù)t為1,初始化誤差余量R0為測(cè)量向量y,初始化列向量集合和位置索引集合Atl為空集; (3)計(jì)算字典矩陣Ψ與誤差余量IV1的相關(guān)性:即按隨機(jī)抽取的先驗(yàn)知識(shí)對(duì)512長(zhǎng)度的誤差余量IV1補(bǔ)零生成2048長(zhǎng)度的插值向量Yp1,再對(duì)該插值向量Tm進(jìn)行IFFT運(yùn)算得到相關(guān)性向量:盡=肝T(γ,.I ); (4)對(duì)相關(guān)性向量gt中各元素取模的平方得到2048長(zhǎng)度的實(shí)相關(guān)向量ht,求出實(shí)相關(guān)向量ht中的最大元素所處的位置Xt,該位置Xt即為字典矩陣Ψ中與誤差余量IV1相關(guān)性最大的列所處的位置,再利用該位置Xt更新列向量集合氣和位置索引集合At; (5)對(duì)列向量集合&進(jìn)行施密特正交化處理生成正交矩陣qt,并用正交矩陣qt更新誤差余量:Rt = Rt^l - qt.(qf _ D,其中q?是正交矩陣qt的共軛轉(zhuǎn)置矩陣; (6)判斷誤差余量Rt的2范數(shù)是否小于I,若滿足此收斂條件,則執(zhí)行步驟(7),否則將迭代次數(shù)t加I后重復(fù)步驟(3)?(5); (7)根據(jù)觀測(cè)向量I和最新的列向量集合氣,利用共軛梯度算法對(duì)雷達(dá)目標(biāo)信號(hào)X進(jìn)行恢復(fù)與重建: .7.1)對(duì)列向量集合奪進(jìn)行共軛轉(zhuǎn)置得到矩陣Oii將該共軛轉(zhuǎn)置矩陣分別與列向量集合Φ和觀測(cè)向量I相乘得到矩陣C和迭代向量b ; .7.2)初始化迭代次數(shù)k為1,初始化殘差向量r°和搜索方向d°為迭代向量b,初始化待恢復(fù)信號(hào)χ°為零向量; .7.3)將矩陣C和搜索方向cT1相乘得到過(guò)渡向量qk,同時(shí)將殘差向量rH進(jìn)行共軛轉(zhuǎn)置得到共軛轉(zhuǎn)置向量(rH)H,將該共軛轉(zhuǎn)置向量(rH)H與殘差向量Z1相乘得到舊殘差因子S。; .7.4)利用過(guò)渡向量qk、搜索方向cT和舊殘差因子δ。計(jì)算搜索步長(zhǎng)α: α = δ ο/[(GT)11.qk],其中(GT1)11是搜索方向cT的共軛轉(zhuǎn)置; .7.5)利用搜索步長(zhǎng)α、搜索方向cT更新待恢復(fù)信號(hào):xk = χΗ+α cT1,其中Xlrf是第k_l次迭代得到的待恢復(fù)信號(hào),同時(shí)利用搜索步長(zhǎng)α和過(guò)渡向量qk更新殘差向量rk:rk =rH-a qk,其中Α1是第k_l次迭代得到的殘差向量; .7.6)將更新后的殘差向量rk進(jìn)行共軛轉(zhuǎn)置得到行殘差向量(rk)H,再將該行殘差向量(rk)H與殘差向量rk相乘得到新殘差因子δη; .7.7)利用新殘差因子δη、舊殘差因子δ。和更新后的殘差向量rk更新搜索方向dk:dk=rk+i3 cT1,以在下次迭代時(shí)更新搜索步長(zhǎng)α和待恢復(fù)信號(hào)Λ其中cT是第k-Ι次迭代得到的搜索方向; .7.8)判斷迭代次數(shù)k是否等于12,若k= 12,則迭代結(jié)束,輸出待恢復(fù)信號(hào)xk,否則將迭代次數(shù)k加I后重復(fù)步驟7.3)?7.7)。
【文檔編號(hào)】G01S7/41GK104133200SQ201410369626
【公開(kāi)日】2014年11月5日 申請(qǐng)日期:2014年7月30日 優(yōu)先權(quán)日:2014年7月30日
【發(fā)明者】全英匯, 高肖肖, 李亞超, 冉磊, 宋亞坪, 王金龍 申請(qǐng)人:西安電子科技大學(xué)
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
主站蜘蛛池模板: 张家港市| 章丘市| 胶州市| 靖州| 东兴市| 蓝山县| 绩溪县| 师宗县| 东宁县| 南和县| 云南省| 青田县| 青海省| 大安市| 广西| 宜城市| 铜鼓县| 普兰店市| 北宁市| 西林县| 东光县| 永嘉县| 鄂托克旗| 泸定县| 南郑县| 闸北区| 吉安县| 固镇县| 沂源县| 卓资县| 绍兴市| 夏津县| 天峻县| 青河县| 鄂伦春自治旗| 报价| 衢州市| 缙云县| 道真| 温宿县| 宝鸡市|