Làm thế nào để bạn tính toán độ phẳng phổ từ một FFT?


17

Ok, độ phẳng phổ (còn gọi là entropy Wiener) được định nghĩa là tỷ lệ trung bình hình học của phổ với trung bình số học của nó.

Wikipedia và các tài liệu tham khảo khác nói phổ điện . Không phải đó là hình vuông của biến đổi Fourier sao? FFT tạo ra một "phổ biên độ" và sau đó bạn bình phương nó để có được "phổ công suất"?

Về cơ bản những gì tôi muốn biết là, nếu spectrum = abs(fft(signal)), cái nào trong số này là chính xác?

  • spectral_flatness = gmean(spectrum)/mean(spectrum)
  • spectral_flatness = gmean(spectrum^2)/mean(spectrum^2)

Định nghĩa của Wikipedia dường như sử dụng độ lớn trực tiếp:

Flatness=n=0N1x(n)Nn=0N1x(n)N=exp(1Nn=0N1lnx(n))1NΣn= =0N-1x(n)
trong đó đại diện cho độ lớn của số bin .nx(n)n

Tài liệu SciPy định nghĩa phổ công suất là:

Khi đầu vào a là tín hiệu miền thời gian và A = fft(a), np.abs(A)là phổ biên độ và np.abs(A)**2là phổ công suất của nó.

Nguồn này đồng ý về định nghĩa của "phổ công suất" và gọi nó là Sf(ω) :

FT(ω)Sf(ω)= =limT1T|FT(ω)|2.

Nguồn này định nghĩa entropy Wiener theo .S(f)

Nhưng tôi không thấy bình phương trong các phương trình như thế này , dường như được dựa trên phổ độ lớn :

SftôimộttneSS= =điểm kinh nghiệm(1NΣkđăng nhập(mộtk))1NΣkmộtk

Tương tự, một nguồn khác định nghĩa độ phẳng phổ theo phổ của công suất, nhưng sau đó sử dụng trực tiếp cường độ của các thùng FFT, dường như mâu thuẫn với định nghĩa "phổ công suất" ở trên.

"Phổ điện" có nghĩa là những thứ khác nhau đối với những người khác nhau?


theo Wikipedia: Độ phẳng phổ ak đại diện cho độ lớn của số bin k.
Hamed Gholami

Xin chào @endolith, bạn đã nhận được câu trả lời thỏa đáng mà bạn sẵn sàng chấp nhận chưa?
jojek

@jojek Không, chưa
endolith

1
@endolith, tôi tin rằng Peter chỉ đánh vào đầu đinh;)
jojek

@jojek Mình đã cố đấm móng tay qua bảng. 😂
Peter K.

Câu trả lời:


4

Tài liệu tham khảo có thẩm quyền nhất mà tôi có thể đưa ra là từ Jayant & Noll, Digital Coding Of Waveforms , (c) Bell Electrical Laboratory Laboratory, Incorporated 1984, được xuất bản bởi Prentice-Hall, Inc.

Trên trang 57, họ xác định độ phẳng phổ:

Độ phẳng phổ

Sxx

Định nghĩa phổ công suất

Vì vậy, phiên bản bình phương FFT là phiên bản bạn muốn.

Có vẻ như Makhoul & Wolf, Dự đoán tuyến tính và Phân tích quang phổ của lời nói , Bolt, Beranek, và Báo cáo kỹ thuật của Newman, Inc., năm 1972 cũng có sẵn.

Và nó có cùng định nghĩa:

nhập mô tả hình ảnh ở đây

nhập mô tả hình ảnh ở đây


7

Nếu định nghĩa về độ phẳng chỉ ra rằng bạn sử dụng phổ công suất, thì có, bạn nên bình phương độ lớn như tham chiếu từ tài liệu SciPy chỉ ra. Trong phương trình mà bạn đã tham chiếu ở nơi bạn không nhìn thấy bình phương, tôi không nghĩ bạn có thể đọc nhiều về nó; nó nói rằng

SftôimộttneSS= =điểm kinh nghiệm(1NΣkđăng nhập(mộtk))1NΣkmộtk

mộtk


Tôi đoán đây là một câu hỏi về định nghĩa thực sự là gì , sau đó
endolith

mộtk

@HamedGholami Vui lòng không nhập bình luận của bạn làm câu trả lời một lần nữa. Nhận xét của bạn không cung cấp câu trả lời cho câu hỏi, nhưng cố gắng hữu ích ở đây.
Peter K.

@PeterK. Tôi nghĩ người dùng mới không thể đăng bình luận, nhưng có thể đăng câu trả lời.
endolith

1
@endolith Đã hiểu. Nhưng ngay cả sau khi jojek chuyển câu trả lời đầu tiên của mình thành nhận xét cho câu hỏi, Hamed đã đăng lại nhận xét tương tự như một câu trả lời. Đó là hành vi tôi muốn can ngăn: đăng lại lần nữa sau khi "câu trả lời" của họ bị dời đi.
Peter K.

4

Định nghĩa khác nhau, phải không? Điều đầu tiên phải được giải quyết là liệu chúng ta có đồng ý rằng mật độ phổ công suất tương đương với phổ công suất hay không, nếu không thì xác định cả hai nghĩa của chúng ta là gì. Proakis và Salehi sử dụng chúng đồng nghĩa . Tiếp tục, tôi nghĩ rằng sự khác biệt là do các định nghĩa khác nhau, cho các tín hiệu có một, của phổ công suất. Định nghĩa thông thường về điều đó là bình phương độ lớn của dữ liệu biến đổi Fourier. Các định lý Wiener-Khinchin cung cấp một lộ trình để phổ năng lượng cho tín hiệu WSS qua biến đổi Fourier của tự tương quan. Tùy thuộc vào việc bạn có xác định phổ công suất với một hình vuông hay không, bạn có được một hình vuông trong độ phẳng phổ.

Những người khác sử dụng cường độ của biến đổi Fourier . Một số người gọi đây là "phổ công suất" và đặt tên " mật độ phổ công suất " cho đạo hàm của "phổ công suất" trong khi những người khác dành thuật ngữ "phổ công suất" cho tích phân biến đổi Fourier của tự tương quan (cái mà người khác gọi là phổ công suất). Như bạn có thể thấy, định nghĩa rất nhiều; thoải mái phát minh ra bạn sở hữu :) Hoặc tuân theo tiêu chuẩn Wiener-Khinchin.

Câu hỏi liên quan : Sự khác nhau giữa mật độ phổ công suất, công suất phổ và tỷ số công suất?


Điều đó nói rằng "phổ điện", quá.
endolith

1
ಠ_ಠ
endolith

0

Đó là một câu hỏi hay, một câu hỏi mà tôi cũng đang tự hỏi. Độ phẳng của quang phổ (còn được gọi là Weiner Entropy) chỉ đơn giản là thước đo 'độ cao' của một vectơ.

Nguồn này dường như chỉ ra rằng vectơ đang xem xét là mật độ phổ công suất, trong trường hợp đó bạn phải bình phương. Nếu bạn bình phương phổ độ lớn, bạn đang làm nổi bật các đỉnh trong trường hợp bạn không vuông rõ ràng và tôi nghĩ điều này cũng có ý nghĩa trực quan hơn.

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.