LSYJY 发表于 2009-5-14 12:36

请教高手, matlab 除噪,rls

如下程序是参照matlab官网给的代码改编的,我想用rls滤波器对声音文件进行处理,可是提示
Error using ==> plus
Matrix dimensions must agree.
我正在做毕业设计,希望各位高手指教

       =wavread('signal.wav');   % Input to the filter
       b= fir1(31,0.5);   % FIR system to be identified
       =wavread('noise.wav'); % Observation noise signal
       d= filter(b,1,x)+n;% Desired signal
       P0 = 10*eye(32); % Initial sqrt correlation matrix inverse
       lam = 0.99;            % RLS forgetting factor
       h = adaptfilt.rls(32,lam,P0);
       = filter(h,x,d);
       subplot(2,1,1); plot(1:500,);
       title('System Identification of an FIR filter');
       legend('Desired','Output','Error');
       xlabel('time index'); ylabel('signal value');
       subplot(2,1,2); stem();
       legend('Actual','Estimated');
       xlabel('coefficient #'); ylabel('coefficient value'); grid on;

ChaChing 发表于 2009-5-14 21:08

Ref 5F
常见的程序出错问题整理 (eight)
http://forum.vibunion.com/forum/thread-46001-1-1.html

LSYJY 发表于 2009-5-15 12:23

回复 沙发 ChaChing 的帖子

那个已经研究过了,还是解决不了问题,寻求高手解答问题啊,我想要的就是这个算法,解决除噪实例

sigma665 发表于 2009-5-15 16:02

回复 板凳 LSYJY 的帖子

Error using ==> plus
Matrix dimensions must agree.

显然是两个长度不一样,不能加
页: [1]
查看完整版本: 请教高手, matlab 除噪,rls