SRC,CRC,SQ_SRC,SQ_CRC,SQF_SRC,SQF_CRC

在稀疏表示中,表示系数之所以能够稀疏表示是因为测试样本可以使用整个字典中很少的子样本来表示,这也就意味着系数项中只有几个向量的系数非零。但是正是因为稀疏性,SRC和CRC中的紧密相关,从而很难获得最优的参数值。为了解决SRC和CRC中存在的上述问题,随后便有人提出了SQ_SRC,SQ_CRC的方法,简单的说,这种方法就是将每一项表示系数平方来增强表示系数的稳定性。还有人提出了SQF_SRC,SQF_CRC的方法,集合原始的SRC和CRC和SQ_SRC,SQ_CRC用于图像集分类,后来的实验结果也证明了这两种方法要比SRC,CRC有更好的识别精度。

下面依此介绍这几种方法:

(1)SRC

SRC的方法可以分为两步:

1)将测试集表示为图像集的线性组合

2)根据最小化类偏差,识别与测试集最接近的类

这种方法最完美的结果就是只有第i类的系数非零,其他的全是0。

比如:(这里SRC使用整个图像集来进行稀疏表示)

(1)

只有第i类的系数非零,其他全是0

随后找到(1)的稀疏解,得到的结果将会用来识别测试集y

(2)

随后经过(2)得到的第i类相关联的表示系数矢量分别来计算测试集和第i个类之间的残差:

残差是一个矢量,它的标量表示测试样本和每个类之间的距离。最后用最小距离输出y的标识:

总结:SRC是一种基于距离的方法,距离从根本上受到了表示系数稀疏性的影响。只有改进SRC的方法也有很多,K-SVD , PCA , LDA,KNN,最小二乘解,CRC等。

(2)CRC

CRC使用整个图像集来进行稀疏表示

这里是SRC和CRC 最大的区别,使用了正则最小二乘法约束对图像集的协同表示系数进行了约束,从而降低了计算的负担:

(3)

λ是一个正则化参数,它能使最小二乘解稳定并且和l1范数相比引入一个更好的稀疏性解决方案。

(3)的解决方案可以表示如下:

我们就可以简单地把测试样本y放到P上得到这个公式 

 计算测试样本正则化的类之间的残差:

残差是一个矢量,它的标量表示测试样本和每个类之间的距离。最后用最小距离输出y的标识: 

 

总结:CRC涉及到所有的图像集样本来表示测试样本,协作是一种有效的方法来提高效率稀疏表示结果的方法。

之前有说过很多改进SRC的方法,其中最有希望的方法之一是融合其他技术来稳定表示系数。

SQ_SRC主要分为三步:

1)重新计算表示稀疏和残差

根据SRC可以计算得到表示系数和残差,随后每一类的系数αi通过在所有样本上的贡献求和得到:(N是每个类中的训练样本个数)

 重写SRC中的残差计算公式:

2)对系数求平方

SRC使用残差来识别测试样本,在SQ_SRC中通过调优稀疏来寻求更稳定的表示,即:用平方系数来表示测试样本

因为系数矢量中的标量值是通常小于1,但是平方之后,测试样本可以生成非常稀疏的表示,(小于1的数字平方会越来越小)

3)重新求新的残差和原来的的残差,并且加权融合

和SRC中的方法相似,我们可以计算在测试样本和每个类之间的残差:

 

 到这里SQ_SRC已经结束了。SQ_SRC的分类结果在许多情况下已经比SRC分类更稳定了,但是在其他情况下,我们还需要一个步骤稳定的稀疏表示,于是我们把两个残差结合在一起产生一个融合残差。为了反映残差的重量,使用不同的因子。最终得到的融合方程如下:

a和b分别是SRC和SQ_SRC的融合因子,为了简单起见,我们可以保持a=1之后,调节b的值直到输出最优分类。最后,
我们可以将测试样本分类到最小的类残差。

 SQ_CRC

N是一个类中训练样本的数量。因此,由协作表示计算的剩余残差可以改写为:

得到平方和系数向量内的标量:

 

根据这个平方和系数计算残差:

在许多应用程序中,可以直接使用剩余残差确定最接近测试样本的类。

 

然而,在其他应用程序,仅由SQ_CRC进行分类方法可能不够稳定, 所以可以将CRC到SQ_CRC的残差进行集成。它与SRC的过程相似仍然使用两个权重因子a和b来执行集成。

a和b分别是CRC和我们的SQ_CRC的融合因子。为了简单起见,我们可以保持a=1,微调b的值直到输出最优分类。 

没有融合的SQ_SRC或SQ_CRC已经产生了足够的分类,甚至比融合的数据更有希望。
但是在分类上仍然有一些不稳定的情况   SRC或CRC的融合它会更好地执行根据平方系数进行分类。

发布了16 篇原创文章 · 获赞 2 · 访问量 4025

猜你喜欢

转载自blog.csdn.net/Wu_whiteHyacinth/article/details/81583457
CRC