導航:首頁 > 源碼編譯 > esprit演算法doa

esprit演算法doa

發布時間:2022-09-15 01:40:39

❶ DOA估計演算法

學號:20000300055

姓名:王鐸澎

嵌牛導讀:文章對DOA演算法進行了簡單的介紹。

嵌牛正文:https://blog.csdn.net/zhangziju/article/details/100730081?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522160689878119725222413438%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=160689878119725222413438&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~_landing_v2~default-1-100730081.pc_first_rank_v2_rank_v28&utm_term=Musicsuanfa&spm=1018.2118.3001.4449

DOA估計演算法

DOA(Direction Of Arrival)波達方向定位技術主要有ARMA譜分析、最大似然法、熵譜分析法和特徵分解法,特徵分解法主要有MUSIC演算法、ESPRIT演算法WSF演算法等。

MUSIC (Multiple Signal Classification)演算法,即多信號分類演算法,由Schmidt等人於1979年提出。MUSIC演算法是一種基於子空間分解的演算法,它利用信號子空間和雜訊子空間的正交性,構建空間譜函數,通過譜峰搜索,估計信號的參數。對於聲源定位來說,需要估計信號的DOA。MUSIC演算法對DOA的估計有很高的解析度,且對麥克風陣列的形狀沒有特殊要求,因此應用十分廣泛。

運用矩陣的定義,可得到更為簡潔的表達式:

X = A S + N X=AS+NX=AS+N

式中

X = [ x 1 ( t ) , x 2 ( t ) , . . . x M ( t ) ] T X=[x_1(t),x_2(t),...x_M(t)]^TX=[x1​(t),x2​(t),...xM​(t)]T,

S = [ S 1 ( t ) , S 2 ( t ) , . . . S D ( t ) ] T S=[S_1(t),S_2(t),...S_D(t)]^TS=[S1​(t),S2​(t),...SD​(t)]T,

A = [ a ( θ 1 ) , a ( θ 2 ) , . . . a ( θ D ) ] T A=[a(\theta_1),a(\theta_2),...a(\theta_D)]^TA=[a(θ1​),a(θ2​),...a(θD​)]T,

N = [ n 1 ( t ) , n 2 ( t ) , . . . n M ( t ) ] T N=[n_1(t),n_2(t),...n_M(t)]^TN=[n1​(t),n2​(t),...nM​(t)]T。

X XX為陣元的輸出,A AA為方向響應向量,S SS是入射信號,N NN表示陣列雜訊。

其中 φ k = 2 π d λ s i n θ k \varphi_k=\frac{2\pi d}{\lambda}sin\theta_kφk​=λ2πd​sinθk​有

A = [ a ( θ 1 ) , a ( θ 2 ) , . . . a ( θ D ) ] T = [ 1 1 ⋯ 1 e − j φ 1 e − j φ 2 ⋯ e − j φ D ⋮ ⋮ ⋱ ⋮ e − j ( M − 1 ) φ 1 e − j ( M − 1 ) φ 2 ⋯ e − j ( M − 1 ) φ D ] A=[a(\theta_1),a(\theta_2),...a(\theta_D)]^T=\left[

1e−jφ1⋮e−j(M−1)φ11e−jφ2⋮e−j(M−1)φ2⋯⋯⋱⋯1e−jφD⋮e−j(M−1)φD11⋯1e−jφ1e−jφ2⋯e−jφD⋮⋮⋱⋮e−j(M−1)φ1e−j(M−1)φ2⋯e−j(M−1)φD

\right]A=[a(θ1​),a(θ2​),...a(θD​)]T=⎣⎢⎢⎢⎡​1e−jφ1​⋮e−j(M−1)φ1​​1e−jφ2​⋮e−j(M−1)φ2​​⋯⋯⋱⋯​1e−jφD​⋮e−j(M−1)φD​​⎦⎥⎥⎥⎤​

對x m ( t ) x_m(t)xm​(t)進行N點采樣,要處理的問題就變成了通過輸出信號x m ( t ) x_m(t)xm​(t)的采樣{ x m ( i ) = 1 , 2 , . . . , M } \{ x_m (i)=1,2,...,M\}{xm​(i)=1,2,...,M}估計信號源的波達方向角θ 1 , θ 2 . . . θ D \theta_1,\theta_2...\theta_Dθ1​,θ2​...θD​,由此可以很自然的將陣列信號看作是雜訊干擾的若干空間諧波的疊加,從而將波達方向估計問題與譜估計聯系起來。

對陣列輸出X做相關處理,得到其協方差矩陣

R x = E [ X X H ] R_x=E[XX^H]Rx​=E[XXH]

其中H HH表示矩陣的共軛轉置。

根據已假設信號與雜訊互不相關、雜訊為零均值白雜訊,因此可得到:

R x = E [ ( A S + N ) ( A S + N ) H ] = A E [ S S H ] A H + E [ N N H ] = A R S A H + R N R_x=E[(AS+N)(AS+N)^H] =AE[SS^H]A^H+E[NN^H]=AR_SA^H+R_NRx​=E[(AS+N)(AS+N)H]=AE[SSH]AH+E[NNH]=ARS​AH+RN​

其中R s = E [ S S H ] R_s=E[SS^H]Rs​=E[SSH]稱為信號相關矩陣

R N = σ 2 I R_N=\sigma^2IRN​=σ2I是雜訊相關陣

σ 2 \sigma^2σ2是雜訊功率

I II是M × M M\times MM×M階的單位矩陣

在實際應用中通常無法直接得到R x R_xRx​,能使用的只有樣本的協方差矩陣:

R x ^ = 1 N ∑ i = 1 N X ( i ) X H ( i ) \hat{R_x}=\frac{1}{N} \sum_{i=1}^{N}X(i)X^H (i)Rx​^​=N1​∑i=1N​X(i)XH(i),R x ^ \hat{R_x}Rx​^​是R x R_xRx​的最大似然估計。

當采樣數N → ∞ N\to\inftyN→∞,他們是一致的,但實際情況將由於樣本數有限而造成誤差。根據矩陣特徵分解的理論,可對陣列協方差矩陣進行特徵分解,首先考慮理想情況,即無雜訊的情況:R x = A R s A H R_x=AR_sA^HRx​=ARs​AH,對均勻線陣,矩陣A由

A = [ a ( θ 1 ) , a ( θ 2 ) , . . . a ( θ D ) ] T = [ 1 1 ⋯ 1 e − j φ 1 e − j φ 2 ⋯ e − j φ D ⋮ ⋮ ⋱ ⋮ e − j ( M − 1 ) φ 1 e − j ( M − 1 ) φ 2 ⋯ e − j ( M − 1 ) φ D ] A=[a(\theta_1),a(\theta_2),...a(\theta_D)]^T=\left[

1e−jφ1⋮e−j(M−1)φ11e−jφ2⋮e−j(M−1)φ2⋯⋯⋱⋯1e−jφD⋮e−j(M−1)φD11⋯1e−jφ1e−jφ2⋯e−jφD⋮⋮⋱⋮e−j(M−1)φ1e−j(M−1)φ2⋯e−j(M−1)φD

\right]A=[a(θ1​),a(θ2​),...a(θD​)]T=⎣⎢⎢⎢⎡​1e−jφ1​⋮e−j(M−1)φ1​​1e−jφ2​⋮e−j(M−1)φ2​​⋯⋯⋱⋯​1e−jφD​⋮e−j(M−1)φD​​⎦⎥⎥⎥⎤​

所定義的范德蒙德矩陣,只要滿足θ i ≠ θ j , i ≠ j \theta_i\neq \theta_j,i\neq jθi​​=θj​,i​=j,則他的各列相互獨立。

若R s R_sRs​為非奇異矩陣R a n k ( R s ) = D Rank(R_s)=DRank(Rs​)=D,各信號源兩兩不相干,且M > D M>DM>D,則r a n d ( A R s A H ) = D rand(AR_sA^H)=Drand(ARs​AH)=D,

由於R x = E [ X X H ] R_x=E[XX^H]Rx​=E[XXH],有:

R s H = R x R_s^H=R_xRsH​=Rx​

即R s R_sRs​為Hermite矩陣,它的特性是都是實數,又由於R s R_sRs​為正定的,因此A R s A … … H AR_sA……HARs​A……H為半正定的,它有D個正特徵值和M − D M-DM−D個零特徵值。

再考慮有雜訊存在的情況

R x = A R s A H + σ 2 I R_x=AR_sA^H+\sigma^2IRx​=ARs​AH+σ2I

由於σ 2 > 0 \sigma^2>0σ2>0,R x R_xRx​為滿秩陣,所以R x R_xRx​有M個正實特徵值λ 1 , λ 2 . . . λ M \lambda_1,\lambda_2...\lambda_Mλ1​,λ2​...λM​

分別對應於M個特徵向量v 1 , v 2 . . . v M v_1,v_2...v_Mv1​,v2​...vM​。又由於R x R_xRx​為Hermite矩陣,所以各特徵向量是正交的,即:v i H v j = 0 , i ≠ j v_i^Hv_j=0,i\neq jviH​vj​=0,i​=j與信號有關的特徵值只有D個,分別等於矩陣A R s A H AR_sA^HARs​AH的各特徵值與σ 2 \sigma^2σ2之和,其餘M − D M-DM−D個特徵值為σ 2 \sigma^2σ2,即σ 2 \sigma^2σ2為R RR的最小特徵值,它是M − D M-DM−D維的,對應的特徵向量v i , i = 1 , 2 , . . . , M v_i,i=1,2,...,Mvi​,i=1,2,...,M中,也有D個是與信號有關的,另外M − D M-DM−D個是與雜訊有關的,可利用特徵分解的性質求出信號源的波達方向θ k \theta_kθk​。

MUSIC演算法的原理及實現

通過對協方差矩陣的特徵值分解,可得到如下結論:

將矩陣R x R_xRx​的特徵值進行從小到大的排序,即λ 1 ≥ λ 2 ≥ . . . ≥ λ M > 0 \lambda_1 \geq \lambda_2\geq...\geq\lambda_M>0λ1​≥λ2​≥...≥λM​>0,其中D個較大的特徵值對應於信號,M − D M-DM−D個較小的特徵值對應於雜訊。

矩陣R x R_xRx​的屬於這些特徵值的特徵向量也分別對應於各個信號和雜訊,因此可把R x R_xRx​的特徵值(特徵向量)劃分為信號特徵(特徵向量)與雜訊特徵(特徵向量)。

設λ i \lambda_iλi​為R x R_xRx​的第i ii個特徵值,v i v_ivi​是與λ i \lambda_iλi​個相對應的特徵向量,有:

R x v i = λ i v i R_xv_i=\lambda_iv_iRx​vi​=λi​vi​

再設λ i = σ 2 \lambda_i=\sigma^2λi​=σ2是R x R_xRx​的最小特徵值R x v i = σ 2 v i i = D + 1 , D + 2... M R_xv_i=\sigma^2v_i i=D+1,D+2...MRx​vi​=σ2vi​i=D+1,D+2...M,

將R x = A R s A H + σ 2 I R_x=AR_sA^H+\sigma^2IRx​=ARs​AH+σ2I代入可得σ 2 v i = ( A R s A H + σ 2 I ) v i \sigma^2v_i=(AR_sA^H+\sigma^2I)v_iσ2vi​=(ARs​AH+σ2I)vi​,

將其右邊展開與左邊比較得:

A R s A H v i = 0 AR_sA^Hv_i=0ARs​AHvi​=0

因A H A A^HAAHA是D ∗ D D*DD∗D維的滿秩矩陣,( A H A ) − 1 (A^HA)^{-1}(AHA)−1存在;

而R s − 1 R_s^{-1}Rs−1​同樣存在,則上式兩邊同乘以R s − 1 ( A H A ) − 1 A H R_s^{-1}(A^HA)^{-1}A^HRs−1​(AHA)−1AH,

有:

R s − 1 ( A H A ) − 1 A H A R s A H v i = 0 R_s^{-1}(A^HA)^{-1}A^HAR_sA^Hv_i=0Rs−1​(AHA)−1AHARs​AHvi​=0

於是有

A H v i = 0 , i = D + 1 , D + 2 , . . . , M A^Hv_i=0,i=D+1,D+2,...,MAHvi​=0,i=D+1,D+2,...,M

上式表明:雜訊特徵值所對應的特徵向量(稱為雜訊特徵向量)v i v_ivi​,與矩陣A AA的列向量正交,而A AA的各列是與信號源的方向相對應的,這就是利用雜訊特徵向量求解信號源方向的出發點。

用各雜訊特徵向量為例,構造一個雜訊矩陣E n E_nEn​:

E n = [ v D + 1 , v D + 2 , . . . v M ] E_n=[v_{D+1},v_{D+2},...v_{M}]En​=[vD+1​,vD+2​,...vM​]

定義空間譜P m u ( θ ) P_{mu}(\theta)Pmu​(θ):

P m u ( θ ) = 1 a H ( θ ) E n E n H a ( θ ) = 1 ∥ E n H a ( θ ) ∥ 2 P_{mu}(\theta)=\frac{1}{{a^H}(\theta)}E_nE_n^Ha(\theta)=\frac{1}{\Vert E_n^Ha(\theta)\Vert^2}Pmu​(θ)=aH(θ)1​En​EnH​a(θ)=∥EnH​a(θ)∥21​

該式中分母是信號向量和雜訊矩陣的內積,當a ( θ ) a(\theta)a(θ)和E n E_nEn​的各列正交時,該分母為零,但由於雜訊的存在,它實際上為一最小值,因此P m u ( θ ) P_{mu}(\theta)Pmu​(θ)有一尖峰值,由該式,使θ \thetaθ變化,通過尋找波峰來估計到達角。

MUSIC演算法實現的步驟

1.根據N個接收信號矢量得到下面協方差矩陣的估計值:

R x = 1 N ∑ i = 1 N X ( i ) X H ( i ) R_x=\frac{1}{N} \sum_{i=1}^NX(i)X^H(i)Rx​=N1​∑i=1N​X(i)XH(i)

對上面得到的協方差矩陣進行特徵分解

R x = A R s A H + σ 2 I R_x=AR_sA^H+\sigma^2IRx​=ARs​AH+σ2I

2.按特徵值的大小排序 將與信號個數D DD相等的特徵值和對應的特徵向量看做信號部分空間,將剩下的M − D M-DM−D個特徵值和特徵向量看做雜訊部分空間,得到雜訊矩陣E n E_nEn​:

A H v i = 0 , i = D + 1 , D + 2 , . . . , M A^Hv_i=0,i=D+1,D+2,...,MAHvi​=0,i=D+1,D+2,...,M

E n = [ v D + 1 , v D + 2 , . . . v M ] E_n=[v_{D+1},v_{D+2},...v_{M}]En​=[vD+1​,vD+2​,...vM​]

3.使θ \thetaθ變化 ,按照式

P m u ( θ ) = 1 a H ( θ ) E n E n H a ( θ ) P_{mu}(\theta)=\frac{1}{{a^H}(\theta)E_nE_n^Ha(\theta)}Pmu​(θ)=aH(θ)En​EnH​a(θ)1​

來計算譜函數,通過尋求峰值來得到波達方向的估計值。

clear; close all;

%%%%%%%% MUSIC for Uniform Linear Array%%%%%%%%

derad = pi/180;      %角度->弧度

N = 8;              % 陣元個數       

M = 3;              % 信源數目

theta = [-30 0 60];  % 待估計角度

snr = 10;            % 信噪比

K = 512;            % 快拍數

dd = 0.5;            % 陣元間距

d=0:dd:(N-1)*dd;

A=exp(-1i*2*pi*d.'*sin(theta*derad));  %方向矢量

%%%%構建信號模型%%%%%

S=randn(M,K);            %信源信號,入射信號

X=A*S;                    %構造接收信號

X1=awgn(X,snr,'measured'); %將白色高斯雜訊添加到信號中

% 計算協方差矩陣

Rxx=X1*X1'/K;

% 特徵值分解

[EV,D]=eig(Rxx);                  %特徵值分解

EVA=diag(D)';                      %將特徵值矩陣對角線提取並轉為一行

[EVA,I]=sort(EVA);                %將特徵值排序 從小到大

EV=fliplr(EV(:,I));                % 對應特徵矢量排序

% 遍歷每個角度,計算空間譜

for iang = 1:361

    angle(iang)=(iang-181)/2;

    phim=derad*angle(iang);

    a=exp(-1i*2*pi*d*sin(phim)).';

    En=EV(:,M+1:N);                  % 取矩陣的第M+1到N列組成雜訊子空間

    Pmusic(iang)=1/(a'*En*En'*a);

end

Pmusic=abs(Pmusic);

Pmmax=max(Pmusic)

Pmusic=10*log10(Pmusic/Pmmax);            % 歸一化處理

h=plot(angle,Pmusic);

set(h,'Linewidth',2);

xlabel('入射角/(degree)');

ylabel('空間譜/(dB)');

set(gca, 'XTick',[-90:30:90]);

grid on;

實現結果

❷ DOA估計 esprit演算法matlab實現

三種esprit演算法的doa估計matlab實現。參考張賢達《通信信號處理》的演算法。包括兩種普通esprit和TLS_esprit演算法。經檢查無誤。

❸ 請問東北大學秦皇島分校怎麼樣,謝謝

在河北省真的非常棒。當然和那些985名校還有些差距。可是我們要看潛力,要看發展。
東秦建校才20多年還不到25年,現在一本線是多少,至少已經超過燕大了。而且東秦是211和985,並且隸屬於教育部,將來考研還是就業都是非常有優勢的。每年各專業都有出國的,去年自動化有個去美國麻省理工的。東秦還有羅克韋爾實驗室。現在秦皇島市政府又劃給東秦200多畝地,將來的東秦必會越來越好!!

❹ 中國聯通wcdma頻率多少

WCDMA是聯通的3G體制,頻段上行 / 下行: 1940-1955/2130-2145香港的3G手機支持WCDMA網路制式的一般都可以使用聯通3G號碼。 三大運營商頻段劃分情況如圖: 目前國內三大運營商手機網路採用的模式: 聯通:2G:GSM;3G:WCDMA;4G:TD-LTE/FDD-LTE雙模式。 電信:2G(實際是2.5G):CDMA;3G:CDMA2000;4G:TD-LTE/FDD-LTE雙模式。 移動:2G:GSM;3G:TD-SCDMA;4G:TD-LTE單模式。

❺ http://en.pudn.com/downloads72/sourcecode/math/detail261391.html 求下載

❻ 在陣列信號處理中,為什麼雜訊子空間與導向矢量是相互正交的

陣列信號處理經過多年來的發展,時域、空域上所蘊含的信息已得到充分的挖掘。近年來,新的研究工作在極化上得到開展。作為一種既能感知極化信息又能感知時空域信息的接收裝置,電磁矢量感測器陣列接收到的數據具有高維結構。然而,傳統的方法處理高維數據是將其轉化為矩陣數據,這使得數據的高維信息未得到有效利用。

利用張量這一處理高維數據的專用工具,研究了非完全極化波信號的BTD(Block
term
decompositions)模型、基於Tucker分解的參數估計方法、基於CP(Canoical
Decomposition)分解的參數估計方法和基於BTD分解的DOA估計方法。本文圍繞如...
展開
陣列信號處理經過多年來的發展,時域、空域上所蘊含的信息已得到充分的挖掘。近年來,新的研究工作在極化上得到開展。作為一種既能感知極化信息又能感知時空域信息的接收裝置,電磁矢量感測器陣列接收到的數據具有高維結構。然而,傳統的方法處理高維數據是將其轉化為矩陣數據,這使得數據的高維信息未得到有效利用。
本文利用張量這一處理高維數據的專用工具,研究了非完全極化波信號的BTD(Block
term
decompositions)模型、基於Tucker分解的參數估計方法、基於CP(Canoical
Decomposition)分解的參數估計方法和基於BTD分解的DOA估計方法。本文圍繞如何充分利用電磁矢量感測器陣列中蘊含的高維信息,
展開了以下幾個部分工作:

1、改進了基於張量的Tucker分解的MUSIC演算法。通過張量分解改善了估計的雜訊子空間與真實信號導向矢量的之間的正交性,提升了對電磁矢量感測器陣列參數估計的分辨力。相對於矩陣方法對雜訊子空間的估計,張量法利用到了數據的各個維度的信息,能從被雜訊覆蓋的數據中還原出更接近真實值的數據。模擬表明,利用張量分解估計的雜訊子空間進行MUSIC參數估計能夠提升來波信號的分辨力。這部分說明了張量各維度之間的整體性,即張量數據的高維特徵,是一種值得利用的信息。

2、改進了基於張量的CP分解對陣列進行盲估計的方法。相比於Tucker分解的估計方法,CP分解不僅能反映數據各維度之間的整體性,更重要的是還可以盲估計出各維度上的組成成分。利用這種盲估計特性,可以進一步將對應組成成分具有的結構特點作為約束去影響CP分解的每一步迭代。即這種盲估計特性為充分利用陣列自身具有的結構特點創造了條件。另外,本文提出了基於參數化的加入結構約束的方法。即在每一步迭代中,利用盲估計出來的組成成分估算參數,並根據參數和信號模型生成滿足模型特徵的組成成分。模擬表明,加入了結構信息的約束之後,參數估計誤差有所減小。
3、研究了基於
BTD分解的非完全極化波參數估計方法。對於非完全極化波的電磁矢量感測器陣列接收模型,同一方向的來波總是可以等效為兩路不相乾的信號被一個6×2矩陣導向。這時候,CP分解唯一性所需的條件不滿足,本文首次採用了符合這種陣列模型的BTD分解。BTD分解可以盲估計出空域陣列導向矢量和極化部分的一個列空間。另外,根據電磁場中的坡印廷定理,本文研究了從這個列空間中求解方向向量的方法。最後,融合空域陣列導向矢量和方向向量的估計得到來波方向。最後與ESPRIT演算法進行了模擬對比。結果表明,對於非完全極化波的接收模型,基於BTD分解的方法能夠得到更精確的估計結果。

❼ Esprit編程中,特徵寬度必須大於0什麼意思

Esprit編程中,特徵寬度必須大於0
就是說編程中特徵寬度不能是負數也不能是0。ESPRIT演算法MATLAB程序,使用ESPRIT演算法進行DOA估計.

閱讀全文

與esprit演算法doa相關的資料

熱點內容
上海女程序員上班被偷 瀏覽:377
如何添加後台app 瀏覽:350
中國移動機頂盒時鍾伺服器地址 瀏覽:943
如何開發app流程 瀏覽:427
哈爾濱編程培訓課程 瀏覽:722
編程語言執行速度排行 瀏覽:174
啟辰原廠導航如何裝app 瀏覽:840
jsp項目優秀源碼 瀏覽:757
如何查看電腦web伺服器埠號 瀏覽:901
小區物業管理系統編程源碼 瀏覽:95
王城戰爭為什麼無法獲取伺服器列表 瀏覽:804
劍橋商務英語pdf 瀏覽:480
伺服器如何不休眠 瀏覽:800
微機原理及介面技術編程 瀏覽:204
解壓迷你游戲機手柄 瀏覽:553
androidrtsp框架 瀏覽:545
阿里女程序員內網徵婚 瀏覽:78
比例閥放大器接plc編程 瀏覽:852
java表示二進制 瀏覽:394
數控銑床外輪廓編程 瀏覽:91