压缩感知的感性认识

压缩感知的感性认识

压缩感知(Compressed sensing),也被称为压缩采样(Compressive sampling)或稀疏采样(Sparse sampling),是一种寻找欠定线性系统的稀疏解的技术。压缩感知被应用于电子工程尤其是信号处理中,用于获取和重构稀疏或可压缩的信号。这个方法利用信号稀疏的特性,突破了奈奎斯特采样理论,得以从较少的测量值还原出原来整个欲得知的信号。

这种方法的数学理论较为复杂,本文给出一种简易的感性认识压缩感知的思路,抛开各种公式。

先说结论:压缩感知的是在某个域稀疏的信号,在一个不那么稀疏的域中进行欠采样,然后变换到稀疏的域之后,欠采样产生的混叠可以视作不相干的noise,然后通过各种算法(soft-thresholding/POCS)恢复出原始信号。

压缩感知的前置知识———奈奎斯特采样定律

压缩感知的作用是突破奈奎斯特采样理论,从较少的测量值中还原出原来整个欲得知的信号。

奈奎斯特采样理论:
奈奎斯特采样定理是信号处理和通信领域中最基本的定理之一。它指出,对于一个信号,只要采样频率高于信号最高频率的两倍,就可以完全恢复信号的全部信息。

那么,为什么信号的采样频率要高于信号频率的两倍呢?我们来看看如果不能满足这个条件的情况下,会发生什么。

比如我们现在有两个信号:

f1(t)=cos(πt)+cos(2πt) f 1 ( t ) = cos ⁡ ( π t ) + cos ⁡ ( 2 π t )

f2(t)=2cos(πt) f 2 ( t ) = 2 cos ⁡ ( π t )

我们现在要对这两个信号进行采样,采样频率分别为:0.5Hz、1Hz、1.5Hz、2.5Hz。

如果我们的采样率为1Hz,那么就会如下图所示:

不难发现,在1Hz的采样率情况下,我们采到的两个信号的信息是相同的,也就是意味着我们完全无法区分f1(t) f 1 ( t ) f2(t) f 2 ( t ) 。在1Hz的采样率下,我们采到的信号只有直流分量,也就是说与f(t)=2 f ( t ) = 2 的信息完全相同。在这种情况下,混叠导致的结果是明显相干的。如果我们变动采样率,只要采样率无法满足奈奎斯特采样定理,那么我们采到的信号就会有混叠的情况。

同时,我们需要注意,就算采样频率达到了奈奎斯特采样定律,仍然会出现频谱泄漏的现象,这可能需要另开一个blog来说明。因此很多时候对信号进行采样,需要使用信号的采样频率高于信号频率的3-5倍。

而压缩感知则是需要在不满足奈奎斯特采样定律的情况下来获取信号的信息,也就是说我们不单无法高于信号频率的3-5倍,还要低于奈奎斯特采样定律的最低要求高于信号频率的两倍。

压缩感知的思路

压缩感知则是如果现在我们有一个稀疏的信号,比如一个在时域连续的一维信号,但经过傅立叶变换后只有5个频率分量,在0-128内,并且是稀疏的。那么在这种情况下,我们如果需要按照奈奎斯特采样定律在时域进行采样,我们就需要采样128个点。但是有了压缩感知方法之后,是不需要在时域采样128个点的。

上文已经给出了一个案例,在f1(t) f 1 ( t ) f2(t) f 2 ( t ) 中,我们必须要满足奈奎斯特采样定律,因为f1(t) f 1 ( t ) f2(t) f 2 ( t ) 在频率领域仍然是稠密的。

我们构造一个频域仅含5个非零分量的稀疏信号,如下所示:

然后我们现在进行50%的欠采样,如下所示:

不难发现,在随机欠采样之后,我们得到的频域信号类似于在原始的信号中加入了噪声,这就是我们在稀疏信号中进行随机欠采样的效果。这种情况下,我们的混叠可以视作不相干的noise,就可以使用去噪的方法来恢复出原始信号。

这里展示使用soft-thresholding算法来恢复出原始信号,如下所示:

soft-thresholding:

xsoft=sign(x)max(|x|λ,0) x s o f t = sign ( x ) max ( | x | − λ , 0 )

其中,λ λ 是一个阈值,用于控制软阈值化的强度。

25%的欠采样:

25%的欠采样使用soft-thresholding算法来恢复出原始信号,如下所示:

同时,我们可以关注欠采样的mask的傅立叶变换,看看他与全采样的情况下的傅立叶变换的区别,全采样的情况下频域是Sa S a 函数(或者叫sinc s i n c 函数)。

时域乘mask相当于在频域中与mask的频域进行卷积,因此就算是全采样的信号,也会有频谱泄漏(未来可能再开一个blog来介绍)的现象,如下图所示:

在这种情况下也可以使用soft-thresholding算法:

总结

压缩感知的本质是在一个不那么稀疏的域中进行欠采样,然后变换到稀疏的域之后,欠采样产生的混叠可以视作不相干的noise,然后通过各种算法(soft-thresholding/POCS)恢复出原始信号。

压缩感知在实际中的应用:MRI重建、音频压缩等等,具体应用场景不在此赘述。

本blog的实现代码在compressedSensingBlog代码:https://github.com/Hubuguilai/compressedSensingBlog
,如有兴趣可访问并帮忙点点star。

参考:
[1] Donoho D L. Compressed sensing[J]. IEEE Transactions on information theory, 2006, 52(4): 1289-1306.
[2] 压缩感知理论与应用, 机械工业出版社, 2019.
[3] https://web.stanford.edu/class/ee369c/
[4] 形象易懂讲解算法II——压缩感知 - 咚懂咚懂咚的文章 - 知乎
https://zhuanlan.zhihu.com/p/22445302

原创作者: hubuguilai 转载于: https://www.cnblogs.com/hubuguilai/p/18924504
内容概要:本文探讨了在MATLAB/SimuLink环境中进行三相STATCOM(静态同步补偿器)无功补偿的技术方法及其仿真过程。首先介绍了STATCOM作为无功功率补偿装置的工作原理,即通过调节交流电压的幅值和相位来实现对无功功率的有效管理。接着详细描述了在MATLAB/SimuLink平台下构建三相STATCOM仿真模型的具体步骤,包括创建新模型、添加电源和负载、搭建主电路、加入控制模块以及完成整个电路的连接。然后阐述了如何通过对STATCOM输出电压和电流的精确调控达到无功补偿的目的,并展示了具体的仿真结果分析方法,如读取仿真数据、提取关键参数、绘制无功功率变化曲线等。最后指出,这种技术可以显著提升电力系统的稳定性与电能质量,展望了STATCOM在未来的发展潜力。 适合人群:电气工程专业学生、从事电力系统相关工作的技术人员、希望深入了解无功补偿技术的研究人员。 使用场景及目标:适用于想要掌握MATLAB/SimuLink软件操作技能的人群,特别是那些专注于电力电子领域的从业者;旨在帮助他们学会建立复杂的电力系统仿真模型,以便更好地理解STATCOM的工作机制,进而优化实际项目中的无功补偿方案。 其他说明:文中提供的实例代码可以帮助读者直观地了解如何从零开始构建一个完整的三相STATCOM仿真环境,并通过图形化的方式展示无功补偿的效果,便于进一步的学习与研究。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值