nsl0重构算法 matlab,压缩感知原信号重构算法研究

摘要:

近几年来,由于压缩感知理论的提出突破了奈奎斯特定理中提出的对采样频率下限的制约,使得该理论得到极其广泛的关注,研究热潮至今仍未消退。目前业界对其进行的研究主要分为如下三个方向:对信号进行稀疏表示、设计高效的观测矩阵以及研究精确快速的重构算法。其中对于重构算法的研究是整个理论中最重要的一环,本文主要对重构算法中的OCMP算法、GP算法、NSL0算法进行研究,针对各个算法的不足进行了改进,完成的主要工作如下:(1)对传统的OCMP算法进行了改进,改进后的算法称为基于L0范数变步长的OCMP算法(L0StOCMP)。由于贪婪算法系列中的OCMP算法每次只选择一个原子进入支撑集,并且使用最小L2范数进行原子选择,使得传统的OCMP算法在恢复精度及重构速度上都有待提高。L0StOCMP算法每次选入支撑集的原子数目等于当前步长,且步长可变,利用由反正切函数近似的L0范数来替代L2范数作为原子选择的依据。从仿真数据可看出,改进的算法在信噪比较低的情况下,在重构速度及恢复精度方面都较OCMP算法有一定的提升。(2)对传统的GP算法进行了两种改进,两种改进后的算法分别称为基于加速梯度法的GP算法(SGP)和基于SW共轭梯度法的GP算法(SWGP)。贪婪算法系列中的GP算法使用最速下降法的迭代方向逼近最优解,这会导致锯齿现象,影响算法的重构速度和恢复精度。SGP算法通过使用加速梯度法的迭代方向来逼近最优解,SWGP算法通过使用SW共轭梯度法的迭代方向来逼近最优解,两种改进算法在一定程度上消除了锯齿现象。从仿真数据可看出,这两个改进的算法在重构速度和恢复精度都有一定的提升,其中SWGP算法在性能上的提升更为明显。(3)对传统的NSL0算法进行了改进,改进后的算法称为结合贪婪算法思想的NSL0算法(G_NSL0)。NSL0算法在SL0算法的基础上改用修正的牛顿法进行最优解的搜索,可以使重构速度和恢复精度较SL0算法有所提升,但是NSL0算法仍然没有突破SL0算法的思维限制。G_NSL0算法通过更少的迭代次数,找到原始信号中非零元素的位置,然后根据贪婪算法的思想计算出该位置所对应的值,从而恢复出原始信号。从仿真数据可看出,该改进算法在重构速度和恢复精度方面都较NSL0算法有较大的提升。

展开

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值