2016-11-24 2 views
0

제 질문이 의미가 없으면 사전에 사과드립니다. 나는 그것을 이해하는 데 어려움이있어서 혼란 스럽다. 그것의 일반적인 질문, 나는 현재 내 코드에 대한 답변을해야합니다.주파수에서 특정 수의 fft 포인트를 지정하는 방법

FFT를 사용하려는 오디오 파일 (wav)의 샘플 속도는 44.1 kHz입니다. 내가 옳다면, 1 초에 44100 점이 있다는 것을 의미합니다. 나는 fy/2> fmax라고하는 나이키 스트 - 샤논 정리의 규칙을 수행했다. 나는 4096의 주파수 해상도를 가지고있다. 나는 300Hz 인 변수를 정의했다. 나는 그곳에 얼마나 많은 점수가 있는지 알고 싶다.

답변

4

FFT 크기가 4096이고 샘플 속도가 44.1 kHz라면 각 빈의 해상도는 44100/4096 = 10.7666015625 Hz이고 300Hz 사인파는 인덱스 4096*300/44100 = 27.863945578231293 인 빈에서 최고점을 갖습니다. 따라서 실제로 빈 인덱스 28에서 최대 값을 가지며 인접 빈에서 일부 에너지를가집니다. (이것은 0에서 시작하는 인덱스의 공통적 인 규칙을 사용합니다 - MATLAB을 사용하는 경우 인덱스는 1 기반이되므로 보상해야합니다.)

자세한 설명은 this useful answer을 참조하십시오. 빈 인덱스가 빈도와 어떤 관련이 있는지

관련 문제