一、前言
通过把含噪信号在合适的原子库上进行分解,可以得到更加集中的分解系数,也就是说仅通过字典中的少数原子的线性组合即可表示出信号,再通过分离信号有效成分和噪声成分对应的系数,再重构出信号的有效成分,可以达到去除噪声的目的。
二、KSVD算法
信号关于字典的稀疏表示数学模型:
式中,Y是样本矩阵,每一列均为一个样本,大小为n*N,D是过完备字典,大小为n*K,X是稀疏矩阵,大小为K*N。
目的是找到让X尽量稀疏的D
三、算法求解
首先,设定一个初始化的字典,然后用匹配追踪(MP)、正交匹配追踪(OMP)或基寻踪(BP)等信号分解算法的到稀疏系数矩阵X。再固定矩阵X,逐列更新字典D,即仅对字典D的第k个原子进行更新,其他原子都保持不变。
字典D的更新是逐列进行的。首先假设系数矩阵X和字典D都是固定的,将要更新的是字典的第k列
得到当前误差矩阵Ek后,我们只需要调整
四、去噪
基于稀疏编码的信号去噪分为两个步骤:字典训练以及稀疏编码。首先需要获取先验的信号字典,对于与信号相关的噪声,也需要获取先验的噪声字典。然后用信号字典与噪声字典的混合字典对带有噪声的信号进行稀疏编码。这样信号字典所编码的成分,即为真实信号的估计值,噪声字典所编码的成分为噪声信号中结构化成分,而最后噪声中的非结构化成分会残留在残差中。
五、程序
基于稀疏编码的信号去噪
猜你喜欢
转载自blog.csdn.net/weixin_38900691/article/details/78317906
今日推荐
周排行