0
데이터 세트에서 FFT를 수행했으며 주파수와 진폭 값이 있다고 가정 해보십시오. 각 FFT 블록에서 최대 진폭을 찾고 싶습니다. 최대 진폭의 0.4 배 이상인 점들의 주파수와 진폭을 찾고 배열로 저장해야합니다. 어떻게해야합니까? 은 내가 빈 매트릭스가 계속하여 다음과 같은 방법 .... 배열 나쁜MATLAB의 배열에 값을 저장하는 방법
% the code after FFT
peak_points = [];
fmin = 60;
fmax = 1000;
region_of_interest = fmax>f & f>fmin;
froi = f(region_of_interest);
[p_max,loc] = max(seg_fft2(region_of_interest));
p_max;
fpeaks = froi(loc);
[points, locatn] = findpeaks(seg_fft2(region_of_interest));
if points > 0.4*p_max
peak_points = [peak_points ; points locatn]
end
임 .. 시도 그래서 나는 이것을 알아낼 기운 다. 다른 사람의 도움을 주셔서 감사합니다. 미리 감사드립니다 ...
가 그럼 난 60 Hz에서 100 Hz에서 사이의 지역을 고려하고 그 지역에서 최대를 찾을 필요가있다. 'region_of_interest = fmax> f & f> fmin;'행은 해당 지역을 정의하므로 seg_fft2가 완료됩니다. – user2482542
감사합니다. 올바른 진폭을 탐지하는 데는 문제가 없습니다. 그러나'locatn (위의 Max)는 나에게 지점의 빈도를주지 않습니다. 빈도 값을 얻으려면 어떻게해야합니까 ?? – user2482542