发明名称 一种快速局部约束低秩编码的图像分类方法
摘要 本发明公开了一种快速局部约束低秩编码的图像分类方法,该方法分字典学部分、训练部分和测试部分。字典学部分是根据数据集提取的所有SIFT特征学运用到k-menas方法聚类或其他字典学方法得到相应的字典。训练部分选取每个数据集每类中的部分图像作为训练图像,然后针对这些图像的标签学每个类别对应的低秩表示,经过SPM量化得到经过SVM分类训练得到类别标签和特征表示矩阵对应的核函数。测试部分以每个数据库中剩余的所有图像作为待分类的测试图像,针对任意一张不知类别的图像,首先提取SIFT特征,然后求得其在字典下的低秩编码矩阵,经过SPM量化得到最终的特征表示矩阵,将其输入训练部分得到的SVM分类器,从而得到该图像所属类别。
申请公布号 CN105184298A 申请公布日期 2015.12.23
申请号 CN201510534124.2 申请日期 2015.08.27
申请人 重庆大学 发明人 范敏;王芬;杜思远
分类号 G06K9/46(2006.01)I;G06K9/62(2006.01)I 主分类号 G06K9/46(2006.01)I
代理机构 重庆大学专利中心 50201 代理人 王翔
主权项 一种快速局部约束低秩编码的图像分类方法,其特征在于:包括字典学习部分、训练部分和测试部分;所述字典学习部分包括以下步骤过程;1)利用SIFT特征提取方法对图像库所有图像进行局部特征提取,得到输入特征向量矩阵X=[x<sub>1</sub>,x<sub>2</sub>,…,x<sub>n</sub>]∈R<sup>m×n</sup>;其中x<sub>i</sub>∈R<sup>n</sup>是特征向量矩阵的第i个分量向量,m为向量的维数,n为向量个数;2)利用K‑means方法聚类或者其他字典学习方法,对所有图像提取的特征向量矩阵X进行聚类处理,得到过完备字典D=[d<sub>1</sub>,d<sub>2</sub>,…,d<sub>k</sub>]∈R<sup>m×k</sup>;其中m是字典的维数,k为字典基的数量;所述训练部分包括以下步骤过程;i)从图像库中选取部分图像作为训练图像,利用SIFT特征提取方法对所有训练图像进行局部特征提取,得到输入特征向量矩阵X'=[x<sub>1</sub>',x<sub>2</sub>',…,x<sub>n</sub>']∈R<sup>m×n</sup>;其中x<sub>i</sub>'∈R<sup>n</sup>是特征向量矩阵的第i个分量向量,其中m为向量的维数,n为向量个数;ii)计算每个特征向量x<sub>i</sub>'和字典向量D之间的欧式距离p<sub>i</sub>,计算公式如下:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msub><mi>p</mi><mi>i</mi></msub><mo>=</mo><mi>exp</mi><mrow><mo>(</mo><mfrac><mrow><mi>d</mi><mi>i</mi><mi>s</mi><mi>t</mi><mrow><mo>(</mo><msup><msub><mi>x</mi><mi>i</mi></msub><mo>&prime;</mo></msup><mo>,</mo><mi>D</mi><mo>)</mo></mrow></mrow><mi>&sigma;</mi></mfrac><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000790099400000011.GIF" wi="644" he="149" /></maths>dist(x<sub>i</sub>',D)=[dist(x<sub>i</sub>',d<sub>1</sub>),…,dist(x<sub>i</sub>',d<sub>k</sub>)]<sup>T</sup>,dist(x<sub>i</sub>',d<sub>i</sub>)是特征向量x<sub>i</sub>'与每一个字典向量d<sub>i</sub>间的欧式距离;σ是调整局部约束速度的权重;iii)计算局部约束低秩编码的特征表示向量Z,计算公式为:<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><mi>Z</mi><mo>=</mo><msup><mrow><mo>(</mo><msub><mi>&lambda;</mi><mn>1</mn></msub><mi>I</mi><mo>+</mo><msup><mi>DD</mi><mi>T</mi></msup><mo>+</mo><msub><mi>&lambda;</mi><mn>1</mn></msub><msub><mi>&lambda;</mi><mn>2</mn></msub><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>k</mi></munderover><msup><msub><mi>p</mi><mi>i</mi></msub><mi>T</mi></msup><msub><mi>p</mi><mi>i</mi></msub><mo>)</mo></mrow><mrow><mo>-</mo><mn>1</mn></mrow></msup><msup><mi>D</mi><mi>T</mi></msup><msup><mi>X</mi><mo>&prime;</mo></msup></mrow>]]></math><img file="FDA0000790099400000012.GIF" wi="901" he="157" /></maths>其中λ<sub>1</sub>,λ<sub>2</sub>>0是权重,I为单位向量,Z=[z<sub>1</sub>,z<sub>1</sub>,…,z<sub>n</sub>]∈R<sup>k×n</sup>;p<sub>i</sub>为上述步骤ii计算得到的欧氏距离;iv)对得到的特征表示向量Z采用空间金字塔匹配方法进行处理,将Z分成2<sup>l</sup>×2<sup>l</sup>块,其中l=1,2,4,分别代表不同的三层对应的空间金字塔分块的个数;然后针对每层中每个字块的z<sub>i</sub>进行最大池化,即z<sub>i</sub>=max{|z<sub>1i</sub>|,|z<sub>2i</sub>|,…,|z<sub>ji</sub>|},得到最终的低秩编码的第i向量z<sub>i</sub>,其中z<sub>ji</sub>是第j块中的第i个元素,j=2<sup>l</sup>×2<sup>l</sup>,通过这个过程得到最后的特征表示矩阵Z';v)将特征表示矩阵Z'输入SVM分类器;每个图像对应有一个标签,根据每类图像类别标签和其对应的特征表示矩阵Z',学习得到SVM分类器的核函数;所述测试部分包括以下步骤过程;I)对图像库中选取训练图像后剩余的图像,提取SIFT特征,得到输入特征向量矩阵X*=[x<sub>1</sub><sup>*</sup>,x<sub>1</sub><sup>*</sup>,…,x<sub>n</sub><sup>*</sup>]∈R<sup>m×n</sup>,其中x<sub>i</sub><sup>*</sup>∈R<sup>n</sup>是特征向量矩阵的第i个分量向量;II)计算每个特征向量x<sub>i</sub><sup>*</sup>和字典向量之间的欧式距离p<sub>i</sub>,计算公式如下:<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><msub><mi>p</mi><mi>i</mi></msub><mo>*</mo><mo>=</mo><mi>exp</mi><mrow><mo>(</mo><mfrac><mrow><mi>d</mi><mi>i</mi><mi>s</mi><mi>t</mi><mrow><mo>(</mo><msub><mi>x</mi><mi>i</mi></msub><mo>*</mo><mo>,</mo><mi>D</mi><mo>)</mo></mrow></mrow><mi>&sigma;</mi></mfrac><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000790099400000021.GIF" wi="456" he="127" /></maths>dist(x<sub>i</sub><sup>*</sup>,D)=[dist(x<sub>i</sub><sup>*</sup>,d<sub>1</sub>),…,dist(x<sub>i</sub><sup>*</sup>,d<sub>k</sub>)]<sup>T</sup>,dist(x<sub>i</sub><sup>*</sup>,d<sub>i</sub>)是特征向量x<sub>i</sub><sup>*</sup>与每一个字典向量d<sub>i</sub>间的欧式距离;σ是调整局部约束速度的权重;III)计算局部约束低秩编码的特征表示向量Z*,计算公式为:<maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><mi>Z</mi><mo>*</mo><mo>=</mo><msup><mrow><mo>(</mo><msub><mi>&lambda;</mi><mn>1</mn></msub><mi>I</mi><mo>+</mo><msup><mi>DD</mi><mi>T</mi></msup><mo>+</mo><msub><mi>&lambda;</mi><mn>1</mn></msub><msub><mi>&lambda;</mi><mn>2</mn></msub><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>k</mi></munderover><msub><mi>p</mi><mi>i</mi></msub><msup><mo>*</mo><mi>T</mi></msup><msub><mi>p</mi><mi>i</mi></msub><mo>*</mo><mo>)</mo></mrow><mrow><mo>-</mo><mn>1</mn></mrow></msup><msup><mi>D</mi><mi>T</mi></msup><mi>X</mi><mo>*</mo></mrow>]]></math><img file="FDA0000790099400000022.GIF" wi="998" he="142" /></maths>其中λ<sub>1</sub>,λ<sub>2</sub>>0是权重,其中I为单位向量;p<sub>i</sub><sup>*</sup>为上述步骤II计算得到的欧氏距离;IV)采用空间金字塔匹配方法,将特征表示向量Z*分成2<sup>l</sup>×2<sup>l</sup>块,其中l=1,2,4,分别代表不同的三层对应的空间金字塔分块的个数;然后针对每层中每个字块的z<sub>i</sub><sup>*</sup>进行最大池化,保持特征表示向量具有一定的鲁棒性,即z<sub>i</sub><sup>*</sup>=max{|z<sub>1i</sub><sup>*</sup>|,|z<sub>2i</sub><sup>*</sup>|,…,|z<sub>ji</sub><sup>*</sup>|},得到最终的低秩编码的第i向量z<sub>i</sub><sup>*</sup>,其中z<sub>ji</sub><sup>*</sup>是第j块中的第i个元素,j=2<sup>l</sup>×2<sup>l</sup>,这样得到最后的特征表示矩阵Z*';V)将特征表示矩阵Z*'输入训练部分得到的SVM分类器,得到待分类图像所属的类别标签;VI)统计测试分类图像正确分类的百分比,得到每类测试图像最终的分类精度;所述训练部分中步骤iii以及测试部分中步骤III,计算局部约束低秩编码的特征表示向量,计算局部约束的低秩编码方法包括以下步骤;a)在字典误差为零的情况下,E<sub>1</sub>=D‑D<sub>0</sub>=0,F范数||·||<sub>F</sub>可以取代核范数||·||<sub>*</sub>;将现有的表达式<maths num="0005" id="cmaths0005"><math><![CDATA[<mfenced open = '' close = ''><mtable><mtr><mtd><mrow><munder><mi>min</mi><mrow><mi>Z</mi><mo>,</mo><mi>D</mi></mrow></munder><mo>|</mo><mo>|</mo><mi>Z</mi><mo>|</mo><msub><mo>|</mo><mo>*</mo></msub><mo>+</mo><mi>&lambda;</mi><mo>|</mo><mo>|</mo><mi>D</mi><mo>-</mo><msub><mi>D</mi><mn>0</mn></msub><mo>|</mo><msub><mo>|</mo><mi>F</mi></msub><mo>+</mo><mi>t</mi><mi>r</mi><mo>&lsqb;</mo><msup><mi>Y</mi><mi>T</mi></msup><mrow><mo>(</mo><mi>D</mi><mo>-</mo><msub><mi>D</mi><mn>0</mn></msub><mo>-</mo><msub><mi>E</mi><mn>1</mn></msub><mo>)</mo></mrow><mo>&rsqb;</mo><mo>+</mo></mrow></mtd></mtr><mtr><mtd><mrow><mi>t</mi><mi>r</mi><mo>&lsqb;</mo><msup><mi>Y</mi><mi>T</mi></msup><mrow><mo>(</mo><mi>X</mi><mo>-</mo><mi>D</mi><mi>Z</mi><mo>-</mo><msub><mi>E</mi><mn>2</mn></msub><mo>)</mo></mrow><mo>&rsqb;</mo><mo>+</mo><mfrac><msub><mi>&mu;</mi><mn>1</mn></msub><mn>2</mn></mfrac><mo>|</mo><mo>|</mo><mi>D</mi><mo>-</mo><msub><mi>D</mi><mn>0</mn></msub><mo>-</mo><msub><mi>E</mi><mn>1</mn></msub><mo>|</mo><msubsup><mo>|</mo><mi>F</mi><mn>2</mn></msubsup><mo>+</mo><mfrac><msub><mi>&mu;</mi><mn>2</mn></msub><mn>2</mn></mfrac><mo>|</mo><mo>|</mo><mi>X</mi><mo>-</mo><mi>D</mi><mi>Z</mi><mo>-</mo><msub><mi>E</mi><mn>2</mn></msub><mo>|</mo><msubsup><mo>|</mo><mi>F</mi><mn>2</mn></msubsup></mrow></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0000790099400000031.GIF" wi="1141" he="218" /></maths>优化变成为<maths num="0006" id="cmaths0006"><math><![CDATA[<mrow><munder><mi>min</mi><mi>Z</mi></munder><mo>|</mo><mo>|</mo><mi>Z</mi><mo>|</mo><msub><mo>|</mo><mi>F</mi></msub><mo>+</mo><msub><mi>&lambda;</mi><mn>1</mn></msub><mo>/</mo><mn>2</mn><mo>|</mo><mo>|</mo><mi>X</mi><mo>-</mo><mi>D</mi><mi>Z</mi><mo>|</mo><msubsup><mo>|</mo><mi>F</mi><mn>2</mn></msubsup></mrow>]]></math><img file="FDA0000790099400000032.GIF" wi="653" he="115" /></maths>b)低秩约束采取联合编码方式,在图像特征全局结构一致性的基础上,弥补特征的局部空间相似性,加入局部约束项<img file="FDA0000790099400000033.GIF" wi="403" he="148" />上述步骤a中优化后的表达式变为:<img file="FDA0000790099400000034.GIF" wi="1011" he="145" />其中λ<sub>1</sub>,λ<sub>2</sub>>0为不相等的权重;符号⊙表示两向量的对应元素相乘;p<sub>i</sub>为特征向量x<sub>i</sub>和字典向量D的欧氏距离p<sub>i</sub>:<maths num="0007" id="cmaths0007"><math><![CDATA[<mrow><msub><mi>p</mi><mi>i</mi></msub><mo>=</mo><mi>exp</mi><mrow><mo>(</mo><mfrac><mrow><mi>d</mi><mi>i</mi><mi>s</mi><mi>t</mi><mrow><mo>(</mo><msub><mi>x</mi><mi>i</mi></msub><mo>,</mo><mi>D</mi><mo>)</mo></mrow></mrow><mi>&sigma;</mi></mfrac><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000790099400000035.GIF" wi="464" he="141" /></maths>dist(x<sub>i</sub>,D)=[dist(x<sub>i</sub>,d<sub>1</sub>),…,dist(x<sub>i</sub>,d<sub>k</sub>)]<sup>T</sup>,dist(x<sub>i</sub>,d<sub>i</sub>)是特征向量x<sub>i</sub>与每一个字典向量d<sub>i</sub>间的欧式距离;σ是调整局部约束速度的权重;c)对上述步骤b中加入局部约束项后的优化表达式进行求导<img file="FDA0000790099400000036.GIF" wi="1030" he="205" />最后计算得到特征表示向量:<maths num="0008" id="cmaths0008"><math><![CDATA[<mrow><mi>Z</mi><mo>=</mo><msup><mrow><mo>(</mo><msub><mi>&lambda;</mi><mn>1</mn></msub><mi>I</mi><mo>+</mo><msup><mi>DD</mi><mi>T</mi></msup><mo>+</mo><msub><mi>&lambda;</mi><mn>1</mn></msub><msub><mi>&lambda;</mi><mn>2</mn></msub><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>k</mi></munderover><msup><msub><mi>p</mi><mi>i</mi></msub><mi>T</mi></msup><msub><mi>p</mi><mi>i</mi></msub><mo>)</mo></mrow><mrow><mo>-</mo><mn>1</mn></mrow></msup><msup><mi>D</mi><mi>T</mi></msup><mi>X</mi><mo>,</mo></mrow>]]></math><img file="FDA0000790099400000037.GIF" wi="966" he="168" /></maths>其中I为k×k的单位向量。
地址 400044 重庆市沙坪坝区沙正街174号