基于MATLAB的小波去噪
% 小波分解與程序,Xk0是要分解的原始信號,step是表示要分解的層數
function [Xh,D]=decomposition(Xk0,step)
[h0,h1,g0,g1]=filtercoefficience;
Xh=Xk0';D=0;
for lstep=1:step
? ? N=length(Xh);
? ? Yk=fft(Xh,N);
? ? H0k=fft(h0,N);
? ? H1k=fft(h1,N);
? ? Xh=drawwing(ifft(Yk(1:N).*conj(H0k(1:N))));
? ? Xh=real(Xh);D=real(D);
? ? d=drawwing(ifft(Yk(1:N).*conj(H1k(1:N))));
? ?thrd= ddencmp('den','wv',d);%用默閾值進行消噪處理
? ? Td=abs(d)>thrd;
? ? d=Td.*d;
? ? D=[d,D];
end
?
function Xk=reconstructed(Xh,D,step)%信號重組函數
[h0,h1,g0,g1]=filtercoefficience;
n=length(Xh);
K=length(h0);
Xn=h0(1:K)-i*h1(1:K);
for t=1:step
? ? N=length(Xh);
? ? d=D(((2^(t-1)-1)*n+1):(2^t-1)*n);
? ? Xt=insert(Xh);Dt=insert(d);
? ? Yn=Xt(1:2*N)+i*Dt(1:2*N);
? ? Yk=fft(Yn,2*N);Xk=fft(Xn,2*N);
? ? XYn=ifft(Yk(1:2*N).*Xk(1:2*N));
? ? Xh=real(XYn);
end ? ? ?
Xk=Xh';
B157
?
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的基于MATLAB的小波去噪的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 粒子群优化RBF神经网络源码程序
- 下一篇: 写作MIMO,LDPC误码率仿真