高光谱图像中的目标检测(二)| 稀疏表示与学习字典

来源:互联网 发布:淘宝店铺布局图片多大 编辑:程序博客网 时间:2024/05/21 18:11

本文介绍一种利用学习字典稀疏表示HSI(Hyperspectral Imagery)数据进行高光谱图像目标检测的算法。主要应用于对full-pixel target的检测。

1.稀疏表示

稀疏表示(Sparse Representation/Sparse approximation)的数学表达为 y=Dx, 其中y表示待表示的信号,D是字典,x是一个稀疏向量。
在高光谱图像中,可以将y理解为一个像素点的光谱维数据组成的向量(K*1维),D是一个矩阵(K*M维),每个列向量可以理解为端元,x(M*1维)表示每个端元的丰度。x是稀疏的(大多数元素为0),这意味着信号y可以由D中若干个少数列向量的线性组合表示出来。x中非0元素的个数为x的稀疏度(sparsity)。
字典有时也会被叫为过完备基(overcomplete basis),从线性代数基的角度很好理解,有KM。但在HSI中有时不需要这么多数量的基,所以可能不满足过完备基的定义。

2. 字典学习

字典D的获得主要有两种方式:
(1)无学习过程的方法:直接将训练样本作为字典中的基(一个列向量),适用于所处理的数据集中训练样本较少的情况,比如HSI中目标字典的获取,由于整幅图像中目标像素点往往很少,所以直接用目标像素点形成目标字典。
(2)有学习过程的方法:一般过程为从训练数据中提取若干样本,再在稀疏约束下依据样本迭代求解一组过完备基。
稀疏约束的表示如下:
这里写图片描述
稀疏度的x表示本来为0范数,但是L0范数很难求解,是一个NPhard问题,所以往往使用L1范数来对其进行凸近似。(详细解释移步http://blog.csdn.net/zouxy09/article/details/24971995/)

3.目标检测的 STD与SRBBH模型

x是观测的一个高光谱像素,B维。如果x是一个背景像素,那么它的光谱位于背景训练样本扩展的B维的子空间中,数学表示为:

xα1ab1+α2ab2++αNabN=[ab1+ab2++abN]Ab[α1+α2++αN]Tα=Abα

其中Ab是表示背景的字典,α是像素x在背景字典下的稀疏表示。字典中共有N个原子(atoms),即N个列向量。
同理,目标像素x也可由目标字典中原子的线性组合表示:
xβ1at1+β2at2++βMatM=[at1+at2++atM]At[β1+β2++βN]Tβ=Atβ

目标字典中原子目通常很少,因为整幅图像中目标像素总数就很少。

STD(standard target detection)模型

STD模型中未知的测试像素x可以数学表示为:
这里写图片描述
如果像素点x是背景区域的,理论上最终得到的γ里,α部分是一个稀疏向量,而β部分基本为0。
这里写图片描述
求解γ的过程使用了convex relaxation。可使用多种方法如贪婪法、内点法等求解。
得到γ后可以求解残差(residual)进行此像素点的检测:
这里写图片描述
如果是背景像素点,那么rb(x)应该接近x本身的模,而rt(x)会接近0。此时D(x)得到一个较大的正值。对目标像素点,结果会是一个较小(远离0)的负值。

SRBBH(sparse representation-based binary hypothesis)模型

当目标是subpixel时,其光谱向量位于由背景训练样本和目标训练样本联合展开的一个低维子空间里。此时单独的目标字典不能再准确地表示目标像素了。因此提出一个联合字典(union dictionary)的概念,此时的binary hypothesis变为:

H0:x=Abγ+e0,targetpresent

H1:x=Abβb+Atβb+e1=Aβ+e1,targetabsent

比较残差:
这里写图片描述

P.S. 约束条件中应保留对稀疏程度的约束,去掉误差的限制条件,因为该方法完全取决于产生的residual。
稀疏程度的限制是否要保持一致?如果H1高的话,更高维度意味着更丰富的基,更准确低表示背景或者目标样本,residual会较小。导致错误判断。稀疏程度的限制意味着最多选取基的数目,为保证公平两个假设中的sparsity应保持一致。

4. 字典的获取方法

现有多种设计字典的方法,主要针对背景字典的设计。目标字典直接从图中选择1-3个即可。K-SVD是一种经典的字典训练算法,依据误差最小原则,对误差项进行SVD分解,选择使误差最小的分解项作为更新的字典原子和对应的原子系数,经过不断的迭代从而得到优化的解。(详情移步:http://blog.csdn.net/qq1028850792/article/details/12905977)
这里详细讲一种使用梯度下降法迭代更新字典的算法。
这里写图片描述
主要步骤:
1)随机选取k个像素的光谱数据作为初始字典中的原子形成Φk
2)随机选取样本点并将其用此次迭代的字典进行稀疏表示。
3)计算残差为ΔΦk, 将残差加入上一次迭代字典中。并逐渐减少步长μ以使字典最终收敛。
4)从步骤2开始进行下一次迭代直至收敛。

5. 参考文献

  1. Chen Y, Nasrabadi N M, Tran T D. Sparse Representation for Target Detection in Hyperspectral Imagery[J]. IEEE Journal of Selected Topics in Signal Processing, 2011, 5(3):629-640.
  2. Zhang Y, Du B, Zhang L. A Sparse Representation-Based Binary Hypothesis Model for Target Detection in Hyperspectral Images[J]. IEEE Transactions on Geoscience & Remote Sensing, 2015, 53(3):1346-1354.
  3. Charles A S, Olshausen B A, Rozell C J. Learning Sparse Codes for Hyperspectral Imagery[J]. IEEE Journal of Selected Topics in Signal Processing, 2011, 5(5):963-978.
  4. Niu Y, Wang B. Hyperspectral Target Detection Using Learned Dictionary[J]. IEEE Geoscience & Remote Sensing Letters, 2015, 12(7):1531-1535.
1 0
原创粉丝点击