资源简介
稀疏度自适应匹配追踪算法,无需稀疏度,就可以重构原始信号。
代码片段和文件信息
function SAMP()
clc;clear;
X=imread(‘lena256.bmp‘);
X=double(X);
[ab]=size(X); %读图像数据
ww=DWT(a); %小波变换
X1=ww*sparse(X)*ww‘;
X1=full(X1); %稀疏信号
M=128;
Phi=randn(Ma);
Phi=orth(Phi‘)‘; %测量矩阵归一化
y=Phi*X1; %测量信号值
X2=zeros(ab);
tic
display(‘Running SAMP...‘);
for l=1:b
rec=samp(y(:l)Phia);
X2(:l)=rec; %重构稀疏信号
end
ElapsedTime=toc; %计算CPU的运行时间
fprintf(‘Done... Elapsed Time=%f\n‘ ElapsedTime)
X3=ww‘*sparse(X2)*ww; %小波变换
X3=full(X3); %近似信号
figure(1)
imshow(uint8(X));
title(‘原始图像‘);
figure(2)
imshow(uint8(X1));
title(‘小波稀疏基下的图像‘);
figure(3)
imshow(uint8(X3));
title(‘恢复图像‘);
errorx=sum(sum(abs(X3-X).^2)) % MSE误差
psnr=10*log10(255*255/(errorx/a/b)) % 峰值信噪比
Relative_error = sum(sum(abs(X3-X).^2))/sum(sum(abs(X).^2)) % 相对误差
SNR = 20*log10(norm(X)/norm(X-X3)) % 信噪比
Mat_rate = 1 - norm(abs(X3)-abs(X))/norm(abs(X3)+abs(X)) % 匹配度
function hat_x=samp(yTN)
r_n=y; %残差初始值y
hat_x=zeros(N1); %函数返回值
active_set = [];
s=10; %步长s
j=1; %步长索引j
L=s; %挑出L个
while (norm(r_n)>1e-2)
[~pos]=sort(abs(T‘*r_n)‘descend‘);
candidate_set=union(active_set pos(1:L));
[~pos]=sort(abs(pinv(T(:candidate_set))*y)‘descend‘);
new_active_set=candidate_set(pos(1:L));
r_cur= y-T(:new_active_set)*pinv(T(:new_active_set))*y;
if (norm(r_cur) > norm(r_n))
j=j+1;
L=j*s;
else
r_n = r_cur;
active_set= new_active_set;
end
end
xr_active_set= pinv(T(:active_set))*y;
hat_x(active_set)=xr_active_set;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2118 2013-05-27 10:40 SAMP.m
- 上一篇:SPIN_Matlab
- 下一篇:边界的声波逆时偏移
相关资源
- 计算聚类算法评价指标之一
- Color transfer between images 非常经典的彩
- LSH 局部敏感直方图的目标跟踪算法
- 一种显著性特征检测算法
- 四种压缩传感的重构算法
- BP and ELM BP神经网络与ELM神经网络算法
- 粒子群算法路径规划动画演示
- DPSO离散粒子群算法解决旅行商问题
- 用GA遗传算法优化BP网络的预测风电功
- 永磁同步电机模糊PID控制
- matlab平台DCT算法压缩视频
- foa 果蝇优化算法matlab程序
- G-S算法matlab程序源代码
- ADRC算法
- matlab实现节点定位的三边定位算法
- CLAHE的matlab实现算法
- chan算法的源代码
- ELM算法进行遥感图像分类
- 多目标跟踪时的逻辑航迹起始算法
- MATLAB实现协同过滤算法
- 多阈值的OTSU算法的图像分割
- 人工蜂群算法优化无刷直流电机PID控
- 二次相关时延估计算法
- DropFall滴水算法实现
- 矢量编程潮流及最优潮流算法
- PNN,smote,BP-AdaBoost等类别不平衡分类
- FISTA 压缩感知的图像使用快速迭代s
- 可以用的经典密度聚类算法(DBSCAN)
- svc psr resample smooth SVC PSR 光谱数据的读
- 流体力学中simple算法的matlab代码
评论
共有 条评论