how to detect the highest contribution/maxima peak in the PSD ?
5 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
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 Kommentare
Antworten (0)
Siehe auch
Kategorien
Mehr zu Detection, Range and Doppler Estimation finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!