资源简介
该代码是压缩感知重构算法基追踪(BP),注释很详细,可以直接运行
代码片段和文件信息
%一维信号BP重构算法
clc
clear all;
close all;
M = 256; %观测信号长度
N = 512; %稀疏信号长度
K = 30; %稀疏度
%% -----1.生成稀疏度为K的稀疏信号-----
tic %计算程序运行的时间
x0 = zeros(N1);
p = randperm(N);
x0(p(1:K)1) = rand(K1)-0.5;%把rand(K1)-0.5的K个值赋给x0,这K个值对应于p的前K个值所对应的位置
%z=awgn(x020‘measured‘);
%SNR0 = 20 * log10( norm(x0)/norm(z-x0) );
%------ 高斯感知矩阵Phi -------------
%高斯随机测量矩阵可成为普适的压缩感知测量矩阵,当M>=4K,可高概率重建原始信号(RIP)
Phi = sqrt(1/M) * randn(MN); %生成均值为0,方差为1的随机正态矩阵
for i = 1:N
Phi(:i) = Phi(:i) / norm(Phi(:i));
end
%-------- 测量向量 y ----------
y = zeros(M1);
y = Phi * x0;
%% -----2. 含高斯白噪声观测 SNR=40dB --------
ye2 = mean(y.^2);
SNR = 40;
sgmav = sqrt( ye2*10^(-SNR/10) );
noisev = sgmav*randn(M1);
y = y + noisev;
%% ------3.BP重构算法 ----------------
%x=argmin||x||1 s.t. y=Φx (1)
%x=argminCx s.t. Ax=bx≥0 其中A=(Φ-Φ)
- 上一篇:两阶段单纯形法的Matlab实现
- 下一篇:harris特征点提取,matlab
相关资源
- matlab_OFDM调制解调(来自剑桥大学)
- 用MATLAB(BPSK仿真 直接扩频)
- 基于BP神经网络对几种字体0-9的数字识
- MATLAB实现的BPSK调制解调
- 基于BP神经网络的盲均衡算法 C程序(
- 基于BP神经网络的语音情感识别系统
- BP神经网络解决手写数字识别问题 m
- BP神经网络实现手写数字识别matlab实现
- 应用BP神经网络逼近非线性函数
- 基于BP神经网络的无线传感器定位算法
- 基于matlab的BPSK调制解调
- LBP四种特征提取算法
- BP神经网络在隧道基坑工程中的实际运
- 利用BP神经网络实现手写体数字识别
- 利用BP神经网络对图像提取的MATLAB代码
- 基于bp的英文字符识别
- MATLAB多方法车牌识别系统bp+模板+GUI
- 《MATLAB 神经网络30个案例分析》所有
- 基于matlab的人脸识别271850
- MATLAB模拟MZM实现OOK和BPSK
- RBMCDAbox - Matlab Toolbox of Rao-Blackwellize
- BP车牌检测.zip
- 基于MATLAB的BP神经网络应用绝对好资源
- 完整的BP-Adaboost-GA自己整理的,包含数
- 基于Matlab的遥感影像BP神经网络分类算
- 精通matlabpdf版
- matlab 神经网络 遥感图像分类 可用程
- matlab基于BP神经网络的人脸识别
- 基于BP神经网络的水上交通事故预测及
- zw_qq_15023225-7501331-S函数的BP神经网络
评论
共有 条评论