• 大小: 378KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-01-11
  • 语言: 其他
  • 标签: 压缩感知  SP  matlab  

资源简介

这是压缩感知的SP算法,写的特别好,没有错误,代码中只要改动一个参数值就可以变成CoSaMP算法。

资源截图

代码片段和文件信息

% 已知 A 和 y(=Ax) 求 x
% 联系方式:sy1133@163.com
%===========================================


clear; clc

n = 500; % 信号长度
m = 100; % 测量次数 
k = 20;  % 稀疏度

%Generate sparse signal 
z = randperm(n);
x = zeros(n 1);
x(z(1:k)) = sign(randn(k1));

A = randn(mn); % 用于重构的高斯随机矩阵
y = A*x;        % 投影信息:y

alpha = 1; % 如果alpha取2就是CoSaMP算法

r = y; L = []; a_index=[];a_index2=[];
a = zeros(size(x));
iter = 1;
err = 1e-5; % 信号误差

tic
while (iter < 20*k && norm(r)>err)
    
    % Identify
    h = A‘* r;
    [h_newh_index] = sort(abs(h)‘descend‘);
    
    % Merge
    L = union(a_index2h_index(1:alpha*k));
    
    % Estimate
    a(L) = A(:L)\y;  
    
    %Prune 
    [a_newa_index] = sort(abs(a)‘descend‘);
    a(a_index(k+1:end))=0; 
    a_index2 = a_index(1

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1135  2011-03-10 11:13  SP.m

     文件     466187  2012-01-04 16:49  SP.pdf

----------- ---------  ---------- -----  ----

               467322                    2


评论

共有 条评论