Độ phân giải tần số tối đa cho phổ triển khai STFT của Matlab () là gì?


10

spectrogram()Hàm Matlab tính toán STFT của tín hiệu. Nó mô tả NFFTlập luận của nó như sau:

S = SPECTROGRAM(X,WINDOW,NOVERLAP,NFFT)chỉ định số lượng điểm tần số được sử dụng để tính toán các biến đổi Fourier rời rạc. Nếu NFFTkhông được chỉ định, mặc định NFFTđược sử dụng.

Tôi có đúng không khi đó NFFTlà sự đánh đổi giữa độ phân giải tần số và số lần tính toán? Đối với công việc ngoại tuyến của tôi, không cần phải lưu chu kỳ. Có bất kỳ giới hạn tối đa nào NFFT, áp đặt, ví dụ như do rò rỉ quang phổ, hoặc bất kỳ vấn đề nào khác mà tôi nên biết hoặc tôi có thể đặt đối số đó ở mức cao nhất có thể không?

Câu trả lời:


5

Độ dài của FFT là sự đánh đổi giữa tần số và độ phân giải thời gian. Các biểu đồ phổ thường được tạo ra bằng cách tính toán các FFT chồng chéo trên tín hiệu quan tâm. Nếu bạn làm cho FFT dài hơn, thì băng thông hiệu quả của mỗi thùng đầu ra sẽ nhỏ hơn, do đó độ phân giải dọc theo trục tần số sẽ được cải thiện. Yếu tố giới hạn duy nhất đối với độ phân giải tần số mà bạn có thể đạt được là tổng thời gian quan sát mà bạn có từ tín hiệu.

Tuy nhiên, đồng thời, khả năng giải quyết một tính năng được bản địa hóa theo thời gian sẽ giảm đi. Một cách trực quan để suy nghĩ về điều này là xem FFT như một sự chuyển hướng phức tạp theo sau là một hoạt động tích hợp và kết xuất:

X[k]=n=0N1(x[n]ej2πnkN)

x[n]2πnkNNx[n]N

Bạn cũng đúng khi tăng chiều dài FFT đòi hỏi nhiều tính toán hơn, có thể phù hợp với các ứng dụng thời gian thực.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.