图像的稀疏表示(Sparse Representation)

本文深入浅出地介绍了图像稀疏表示的概念,包括稀疏信号、稀疏表示、稀疏分解和字典生成。通过类比和实例解释了稀疏分解如何如同搭建和拆解乐高积木,帮助理解信号在过完备字典上的表示。文章强调了稀疏表示在图像去噪、图像融合、图像重构等领域的应用,并推荐了相关资源和算法,适合初学者逐步掌握稀疏表示的精髓。
摘要由CSDN通过智能技术生成

前言

在进入正题前先结合自己的经验对稀疏理论的相关内容扯几句。自己的话本身之前做了一段时间的图像融合内容,后来这块也放了放。但是之前在看论文的时候,基于稀疏理论的图像融合相关的论文还挺多的,但是一直没去仔细看这个,也没系统的整理过。最近看到好几篇2020年的论文,都是用这个做的融合,当然稀疏理论的应用场景远不止此。于是还是想再好好查一查,梳理一下。其实之前刚开始看这个东西的时候,挺抽象的,包括什么稀疏编码、字典学习等等,看着还挺吓人的。

因此在这里总结一下自己的学习过程,希望给每位学习图像稀疏表示的同学一点帮助。当然限于个人水平,很多内容我也不一定能说的特别清楚,尽量通过通俗清晰的方式说明。本文的主旨并不在于严密的数学论证和公式推导,更多的是帮助理解稀疏理论,整合一些或许有启发的思想,更详细的算法等已经有很多人整理的很好了。

其实网上相关的博文已经很多了,如果有一定的了解应该就明白,稀释表示里面最核心的两个任务:

  1. 稀疏分解
  2. 字典生成

由此衍生出来的,为了完成这两个任务的相关算法。但是其实,对于一个刚接触这个理论的人,一下子就直接就看这些内容,看了一圈可能还是对稀疏的概念不那么清晰。因此,建议刚开始学习稀疏表示的朋友按以下过程循序渐进,充分理解稀疏表示再进一步去看后续的算法,应该能对大家的学习有事半功倍的效果。

  1. 稀疏信号
  2. 稀疏表示
  3. 稀疏分解
  4. 字典生成
  5. 应用

接下来,我会根据以上思路,根据我的理解结合网上的许多相关博文和相关论文,尽可能把这个问题讲的通俗一点。许多博文都写的很好,对我的学习也有很大的启发,我会尽量引用上,如有疏漏的,可以留言提醒。

那正式开始之前,对于一些喜欢看视频学习的或者想要系统过一遍的同学,在这里放上一个Duke大学的公开课视频链接,以及B站搬运的中文字幕版,但是这个翻译的很抽象,视频下方有YouTube的视频地址。

Duke大学公开课

bilibili搬运

稀疏信号

信号本身就是一个很广义的概念,图像、语音、文本、光、电等等都可以是信号。那在数学层面上,信号可以认为是一组反映原始信号特征的数据。将一个一维信号记为一个长度为N的向量,假设只有K个元素为非零的,其中K<<N,那就认为这个向量是K稀疏的或者严格K稀疏。同时,要做到严格K稀疏并不容易,所以一般除了K个值以外的元素只要足够小,就认为该向量是K稀疏的,这也是以下讨论的基础。

但是即便放宽稀疏性条件,现实中信号本身也都基本不满足稀疏性。例如,一副灰度图像可以认为是二维信号,但是如果该图像足够稀疏,也就是说大部分像素值都是0,那基本就是黑色的一片,而大部分情况下的图像都不是这样的。但是经过研究,一般的自然信号都可以通过一定的变换,在其变换域上呈现稀疏性,对这样的信号,一般认为是可稀疏的或者可压缩的,也即自然信号的稀疏性,以上先验也是信号稀疏表示的基础。

自然信号和人工信号的概念参考自这里:

信息与信号

信号变换的过程就是信号的稀疏表示过程,一个信号在一组过完备字典(基)上进行稀疏分解,在该字典上用尽可能少的原子来表示原始信号,由此得到一个稀疏向量,称这个稀疏向量是信号在这组基上的稀疏表示。

稀疏表示

在这里插入图片描述

上图为信号的稀疏表示模型,用数学公式可以描述为 X = D α X=D\alpha X=Dα,其中设 X ∈ R N X\in R^{N} XRN为单一原始信号, D ∈ R N × K D\in R^{N\times K} DRN×K为过完备字典, α ∈ R K \alpha \in R^K αRK为稀疏表示结果。对于字典的每一列元素,称为原子(Atom),记为 d i ∈ R N i = 1 , 2 , . . . , K d_i\in R^N\quad i=1,2,...,K diRNi=1,2,...,K,进一步,为了让该式的 α \alpha α满足稀疏性,我们加上 L 0 L_0 L0范数的稀疏性约束,最终得到以下公式:

X = ∑ i = 1 K d i α = D α s.t. min ⁡ ∣ ∣ α ∣ ∣ 0 (1) X=\sum\limits_{i=1}^Kd_i\alpha=D\alpha \quad \text{s.t.} \quad \min{||\alpha||_0} \tag{1} X=i=1Kd

稀疏表示分类是一种机器学习方法,用于对数据进行分类。它的核心思想是通过稀疏表示来表示数据,并在稀疏表示的基础上进行分类。 稀疏表示是指将每个输入样本表示为一个稀疏向量,其中只有少数几个元素是非零的。这样的向量表示能够更好地捕捉数据的本质特征,同时减少了数据的冗余。例如,对于一张图像,可以将其表示为一个由像素强度组成的稀疏向量,其中只有少数几个像素具有非零值。 在稀疏表示分类中,首先需要通过训练集学习一个稀疏表示模型。这可以通过使用稀疏表示算法(如LASSO、稀疏自编码器等)来实现。学习得到的模型将能够将输入样本表示为稀疏向量。 接下来,在分类阶段,将测试样本表示为稀疏向量,并使用训练得到的稀疏表示模型进行分类。具体而言,可以通过计算测试样本的稀疏表示与每个类别的稀疏表示的距离(如余弦距离、欧氏距离等)来确定其所属的类别。距离最近的类别即被认为是该测试样本所属的类别。 稀疏表示分类具有一定的优势。首先,通过使用稀疏表示,可以减少数据的冗余,提取出更重要的特征。其次,稀疏表示模型具有较好的鲁棒性和泛化能力,能够适应不同的数据分布和噪声。此外,稀疏表示分类还可以处理高维数据和样本不平衡的问题。 总之,稀疏表示分类是一种有效的机器学习方法,通过将数据表示为稀疏向量,可以实现对数据的分类,并具有较好的性能和应用潜力。
评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值