簡體   English   中英

jupyter notebook中FFT信號的峰值檢測

[英]Peak Detection of an FFT signal in jupyter notebook

我試圖找到我使用 FFT 轉換為頻域的 EMG 信號的峰值。 我的問題是,當我嘗試使用 scipy.signal 庫中的命令 Find_peaks 時,它會給我一個警告ValueError: x must be a 1D array 有人可以指出我正確的道路嗎,因為我很難理解如何在頻域中找到信號的峰值,我應該將其轉換回時域還是找到一種方法來壓縮大批。 (PS我還是個新手,非常感謝所有的幫助)。 這就是我能夠編碼的

這是錯誤

scipy 的 FFT 的結果是一個多維數組,其中包括變換的復數結果,表示為 2 元素向量。 find_peaks調用只能接受一維數組。 您可能需要將它們轉換為標量(可能取元組的絕對值),或者您可以使用在更多域中運行的峰值檢測器。 查看此相關問題以獲取一些選項。

如果您轉換為一維, peakutil是一個 package 可能會幫助您(盡管它似乎並不比find_peaks更強大以滿足您的需求)。

更多細節,你也可以在這里看到一些問題的答案,一個相關的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM