1.算法描述
原子快速匹配追踪信号稀疏分解算法,并将其应用于静态图像编码.多原子匹配追踪通过每次迭代选取多个原子的形式,实现信号的快速稀疏分解.在此基础上,通过构造多尺度脊波字典实现图像的稀疏分解,并对稀疏分解的数据进行自适应量化和编码.实验结果表明,多原子匹配追踪获得了与匹配追踪相当的逼近性能,同时极大地提高了稀疏分解的速度.
2.仿真效果预览
matlab2022a仿真结果如下:
3.MATLAB核心程序
for j=j_min:j_max
%p改变平移因子,p的最小值为0,最大值从1024开始减小到2
for p=p_min:N*2^(-j+1)
%k改变频率因子,p的最小值为0,最大值从2增大到1024
for k=k_min:2^(j+1)
%i改变相位因子,变化范围从0到12
for i=i_min:i_max
%尺度因子以2为底指数增大
s=a_base^j;
%平移因子线形增加,考虑到尺度因子对平移的影响,因此应乘以尺度因子
u=p*s*u_base;
%频率因子线形减小,考虑到尺度因子对频率的影响,因此应除以尺度因子
v=k*(1/s)*v_base;
%相位线形增加
w=i*w_base;
%构造字典
t=0:N-1;
t=(t-u)/s;
g=(1/sqrt(s))*exp(-pi*t.*t).*cos(v*t+w);
%归一化
g=g/sqrt(sum(g.*g));
%误差信号在字典上的投影
proj_trans=sum(signal_r.*g);
%比较,取较大值返回各参数供重建原子用
if abs(proj_trans)>abs(proj)
%返回投影值
proj=proj_trans;
%返回尺度参数
scale=s;
%返回平移参数
translation=u;
%返回频率参数
freq=v;
%返回相位参数
phase=w;
end
end
end
end
end
A_063