我想使用filtfilt命令與matlab編碼器,但我遇到了麻煩。Matlab編碼器和filtfilt()
如果我以正常的方式運行程序一切運行良好,但是當我嘗試構建c代碼時,會顯示以下錯誤消息:「數據的長度必須超過過濾器順序的3倍」。我在某處讀到這可能是因爲filtfilt函數需要知道整個信號(隨着時間的推移),這可能與matlab編碼器不兼容。然而,這似乎是不正確的,MATLAB名單filtfilt作爲代碼生成支持的功能 - http://www.mathworks.se/help/toolbox/signal/ug/br7exek-1.html
我的電話是:
y_filt = filtfilt(B,A,Y);
我只是調用之前變量具有以下屬性:
名字大小..........字節......類
一個...... 1x9 ........... 72 ........... double
b ...... 1x9 ........... 72 ... ........ double
y ...... 1499400x1 11995200 double
有沒有人有關於如何解決這個問題的建議?
這似乎你已經證明了它不是'filtfilt'功能,可以提供更多的代碼或多個錯誤的描述? – macduff 2012-02-25 23:46:47
好吧,我很難理解它還能做什麼。爲了得到(b,a)黃油在[b,a] =黃油(8,0.045,高)之前執行。 – 2012-02-26 17:25:25