我正在尝试使用压缩感知(friedlanders 代码)重建正稀疏信号,但我找不到为此实现施加正性约束的方法。我看过一些讨论积极信号案例的论文,但找不到任何代码实现,任何人都可以指出任何相关代码。
正基追踪去噪参考代码
信息处理
matlab
优化
压缩传感
2022-01-08 07:32:07
2个回答
我假设您正在解决以下优化问题:
如果我们注意给定 then。
这意味着上述问题等价于:
现在,这是一个线性规划问题,可以使用 MATLAB 或任何其他 LP 求解器轻松解决。
例如,在 MATLAB 中它将是这样的:
numRows = 10;
numCols = 100;
mA = randn([numRows, numCols]);
vB = randn([numRows, 1]);
vE = ones([numCols, 1]); %<! Vector of ones to sum vX
vX = linprog(vE, [], [], mA, vB, zeros([numCols, 1]), inf([numCols, 1]));
SparseLab 应该能够解决正约束问题:SparseLab (Stanford) - Seeking Sparse Solutions to Linear System of Equations。
有关该问题的定义,请参阅Donoho 和 Tanner,“精确欠采样定理”。
这个工具箱依赖于 Matlab。
其它你可能感兴趣的问题