how to detect the highest contribution/maxima peak in the PSD ?

5 ビュー (過去 30 日間)
yusra Ch
yusra Ch 2018 年 5 月 30 日
編集済み: yusra Ch 2018 年 5 月 31 日
Hello, I have a sliding window of 500 samples that moves in a matrix. I get a PSD graph for every time the time window moves. I want to detect the cut off frequency of my PSD for every iteration and stock them in a vector. I have used the find peak function with the option of minpeakdistance= (Vtx+Vrx)/lambda as in the references I found that the cut off frequency is estimated by (Vtx+Vrx)/lambda. I have writen this code to look for peaks with a determined minpeakdistance only in the positive part of the PSD. the problem is that when I do this:
----------------------------------------------------------------------------------
[pks,locs] = findpeaks(10*log10(Densidad_espectral_potencia)- max(10*log10(Densidad_espectral_potencia)),'MinPeakDistance', abs(vrx-vtx)/(3e8/5.9e9));
Xx=Eje_Frequencia(locs);
Busca= find(Xx>0);
Freq=Xx(Busca);
f1=Freq(1);
--------------------------------------------------------------------------------
The cut off frequency is not always the first peak in the positive part. it changes its position in every iteration because it is related to moving scaterrers. Can anybody tell me how I can detect the cut of frequency in every iteration and save them in a vector ?
<<
>>

回答 (0 件)

カテゴリ

Help Center および File ExchangeDetection, Range and Doppler Estimation についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by