我正在嘗試編寫一個音頻分析應用程序,並且我需要在表示譜圖的二維數組中識別局部最大值。我已經有了一個可以使用快速傅里葉變換生成頻譜圖的開源庫,但是我想知道是否有人知道有什麼好的庫可以幫助我找到最大值?我不太確定搜索谷歌的是什麼 - 我能想到的最好的是「數字圖書館」,但這並沒有讓我走得太遠。用於查找本地最大值的C庫?
最好在C,但我打開其他建議。
我正在嘗試編寫一個音頻分析應用程序,並且我需要在表示譜圖的二維數組中識別局部最大值。我已經有了一個可以使用快速傅里葉變換生成頻譜圖的開源庫,但是我想知道是否有人知道有什麼好的庫可以幫助我找到最大值?我不太確定搜索谷歌的是什麼 - 我能想到的最好的是「數字圖書館」,但這並沒有讓我走得太遠。用於查找本地最大值的C庫?
最好在C,但我打開其他建議。
峯值發現是一個相當普遍的問題。它已經在SO上討論過一次,如。
提供的答案包括幾個可行的啓發式。
當然,我更喜歡my own answer如果你需要嚴謹,但根源是用C++編寫,並且幾乎可以肯定你的應用程序太重了,所以你需要帶出你想要的代碼...
GNU科學圖書館具有multidimensional minimization framework,可以使其足以輕鬆實現最大化。但它的設計目的只是返回一個最小值而不是一堆不同的最小值。