📄 decomposition.m
字号:
% 小波分解与语音压缩程序,Xk0是提取的原始语音信号,step是表示要分解的层数
% XXh与Tx分别是分解压缩后返回的信号低频部分有用值以及各之所在的位置序列
% DD与Td分别是分解压缩后返回的信号高频部分有用值以及各之所在的位置序列
function [XXh,Tx,DD,Td]=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=twodrawwing(ifft(Yk(1:N).*conj(H0k(1:N))));
d=twodrawwing(ifft(Yk(1:N).*conj(H1k(1:N))));
D=[d,D];
end
Xh=real(Xh);D=real(D);
thrx = ddencmp('cmp','wv',Xh);
thrd= ddencmp('cmp','wv',D);
Tx=abs(Xh)>thrx;Td=abs(D)>thrd;
M=length(Xh);H=length(D);
k0=0;k1=0;
for m=1:M
if Tx(m) > 0
k0=k0+1;
XXh(k0)=Xh(m);
end
end
for h=1:H
if Td(h) > 0
k1=k1+1;
DD(k1)=D(h);
end
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -