发明名称 一种基于鲁棒非负矩阵分解的图像检索方法
摘要 本发明公开了一种基于鲁棒非负矩阵分解的图像检索方法。该方法针对非负矩阵分解算法模型在图像间关系表达和抗噪两方面的不足,首先依据图像数据的视觉特征集X构建表征数据分布关系的L1图约束,并加入稀疏噪声项,来构建鲁棒非负矩阵分解算法模型;接着在模型训练阶段,采用迭代优化求解方法,从X中得到图像特征基矩阵U和所有图像在U所展开的子空间中的特征表达V;最后在图像检索时,将检索参考的图像x转换到U的子空间,得到新特征表达v;依据v与图像数据集中图像的距离,对图像排序,返回距离最小的前K个图像给用户,实现对图像的检索功能。本方法具有较强的抗噪能力,对新图像的处理计算时间为线性时间,能够快速准确地进行图像检索。
申请公布号 CN103886066A 申请公布日期 2014.06.25
申请号 CN201410105511.X 申请日期 2014.03.20
申请人 杭州禧颂科技有限公司 发明人 陈晋音;黄坚
分类号 G06F17/30(2006.01)I;G06K9/66(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 杭州求是专利事务所有限公司 33200 代理人 张法高
主权项 1.一种基于鲁棒非负矩阵分解的图像检索方法,其特征在于包括如下步骤:1)从公共图像数据集Corel5K中选择50类共5000张图像,提取PHOG视觉特征集X=[x<sub>1</sub>,...,x<sub>n</sub>],其中n=5000,x<sub>i</sub>为第i张图像所对应的PHOG视觉特征向量;将PHOG视觉特征集X作为所要构建的L1图的顶点,L1图的边权重矩阵W=[w<sub>1</sub>,...,w<sub>n</sub>],,其中w<sub>i</sub>计算如下:<maths num="0001"><![CDATA[<math><mrow><mfenced open='' close=''><mtable><mtr><mtd><mi>min</mi><msub><mrow><mo>|</mo><mo>|</mo><msub><mi>w</mi><mi>i</mi></msub><mo>|</mo><mo>|</mo></mrow><mn>1</mn></msub></mtd></mtr><mtr><mtd><mi>s</mi><mo>.</mo><mi>t</mi><mo>.</mo><mo>|</mo><mo>|</mo><msub><mi>x</mi><mi>i</mi></msub><mo>-</mo><mi>X</mi><msub><mi>w</mi><mi>i</mi></msub><mo>|</mo><mo>|</mo><mo>&le;</mo><mi>&epsiv;</mi><mo>,</mo><msub><mi>w</mi><mi>ii</mi></msub><mo>=</mo><mn>0</mn><mo>&ForAll;</mo><mi>i</mi></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mn>1</mn></mrow></math>]]></maths>其中,x<sub>i</sub>为第i幅图像的视觉特征,w<sub>i</sub>为矩阵W的第i列,ε为误差系数,w<sub>ii</sub>为向量w<sub>i</sub>的第i个分量;构建表征图像数据分布结构关系的L1图约束如下:<maths num="0002"><![CDATA[<math><mrow><mfenced open='' close=''><mtable><mtr><mtd><mi>min</mi><msub><mi>R</mi><mi>g</mi></msub><mo>=</mo><msubsup><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></msubsup><msup><mrow><mo>|</mo><mo>|</mo><msub><mi>v</mi><mi>i</mi></msub><mo>-</mo><mi>V</mi><msub><mi>w</mi><mi>i</mi></msub><mo>|</mo><mo>|</mo></mrow><mn>2</mn></msup><mo>=</mo><msubsup><mrow><mo>|</mo><mo>|</mo><mi>V</mi><mo>-</mo><mi>VW</mi><mo>|</mo><mo>|</mo></mrow><mi>F</mi><mn>2</mn></msubsup></mtd></mtr><mtr><mtd><mo>=</mo><mi>tr</mi><mrow><mo>(</mo><mi>V</mi><mrow><mo>(</mo><mi>I</mi><mo>-</mo><mi>W</mi><mo>)</mo></mrow><msup><mrow><mo>(</mo><mi>I</mi><mo>-</mo><mi>W</mi><mo>)</mo></mrow><mi>T</mi></msup><msup><mi>V</mi><mi>T</mi></msup><mo>)</mo></mrow><mo>=</mo><mi>tr</mi><mrow><mo>(</mo><msup><mi>VGV</mi><mi>T</mi></msup><mo>)</mo></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mn>2</mn></mrow></math>]]></maths>其中,G=(I-W)(I-W)<sup>T</sup>,V=[v<sub>1</sub>,...,v<sub>n</sub>]为图像集在子空间上的特征表达,I为单位矩阵;2)将L1图约束和稀疏噪声约束项E加入到传统的非负矩阵分解算法框架中,构建鲁棒非负矩阵矩阵分解算法模型:<maths num="0003"><![CDATA[<math><mrow><munder><mi>min</mi><mrow><mi>U</mi><mo>,</mo><mi>V</mi><mo>&GreaterEqual;</mo><mn>0</mn><mo>,</mo><mi>E</mi></mrow></munder><msubsup><mrow><mo>|</mo><mo>|</mo><mi>X</mi><mo>-</mo><mi>UV</mi><mo>-</mo><mi>E</mi><mo>|</mo><mo>|</mo></mrow><mi>F</mi><mn>2</mn></msubsup><mo>+</mo><msub><mi>&lambda;</mi><mn>1</mn></msub><mo>&CenterDot;</mo><mo>|</mo><mo>|</mo><mi>E</mi><mo>|</mo><mo>|</mo><mo>+</mo><msub><mi>&lambda;</mi><mn>2</mn></msub><mo>&CenterDot;</mo><msubsup><mrow><mo>|</mo><mo>|</mo><mi>U</mi><mo>|</mo><mo>|</mo></mrow><mi>F</mi><mn>2</mn></msubsup><mo>+</mo><msub><mi>&lambda;</mi><mn>3</mn></msub><mo>&CenterDot;</mo><mi>tr</mi><mrow><mo>(</mo><msup><mi>VGV</mi><mi>T</mi></msup><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mn>3</mn></mrow></math>]]></maths>其中,λ<sub>1</sub>,λ<sub>2</sub>和λ<sub>3</sub>为正则化参数,在实验中分别设置为0.01,0.001和0.1,U∈R<sup>d×r</sup>为保持视觉和语义相似性的图像基矩阵,V∈R<sup>r×n</sup>为图像基矩阵U所展开的子空间中的特征表达,E∈R<sup>d×n</sup>是稀疏噪声约束项,d为图像特征的维度,r为低维特征空间的维度;3)利用图像数据集对公式3算法模型进行训练,采用迭代优化求解,计算得到保持视觉和语义相似性的图像基矩阵U和所有图像在图像基矩阵U所展开的子空间中的特征表达V,计算步骤如下:i)随机初始化U,V和E矩阵,令中间变量X<sub>e</sub>=X-E;ii)固定E,迭代计算U和V,计算公式如下:<maths num="0004"><![CDATA[<math><mrow><msub><mi>U</mi><mi>ij</mi></msub><mo>&LeftArrow;</mo><msub><mi>U</mi><mi>ij</mi></msub><mfrac><msub><mrow><mo>(</mo><msub><mover><mi>X</mi><mo>~</mo></mover><mi>e</mi></msub><msup><mover><mi>V</mi><mo>~</mo></mover><mi>T</mi></msup><mo>)</mo></mrow><mi>ij</mi></msub><msub><mrow><mo>(</mo><mi>U</mi><mover><mi>V</mi><mo>~</mo></mover><msup><mover><mi>V</mi><mo>~</mo></mover><mi>T</mi></msup><mo>)</mo></mrow><mi>ij</mi></msub></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mn>4</mn></mrow></math>]]></maths><maths num="0005"><![CDATA[<math><mrow><msub><mi>V</mi><mi>ij</mi></msub><mo>&LeftArrow;</mo><msub><mi>V</mi><mi>ij</mi></msub><msqrt><mfrac><msub><mrow><mo>(</mo><msup><mi>U</mi><mi>T</mi></msup><msub><mi>X</mi><mi>e</mi></msub><mo>+</mo><msub><mi>&lambda;</mi><mn>3</mn></msub><msup><mi>VG</mi><mo>-</mo></msup><mo>)</mo></mrow><mi>ij</mi></msub><msub><mrow><mo>(</mo><msup><mi>U</mi><mi>T</mi></msup><mi>UV</mi><mo>+</mo><msub><mi>&lambda;</mi><mn>3</mn></msub><msup><mi>VG</mi><mo>+</mo></msup><mo>)</mo></mrow><mi>ij</mi></msub></mfrac></msqrt><mo>-</mo><mo>-</mo><mo>-</mo><mn>5</mn></mrow></math>]]></maths>其中<maths num="0006"><![CDATA[<math><mrow><msub><mover><mi>X</mi><mo>~</mo></mover><mi>e</mi></msub><mo>=</mo><mrow><mo>(</mo><msub><mi>X</mi><mi>e</mi></msub><mo>,</mo><msub><mn>0</mn><mrow><mi>d</mi><mo>&times;</mo><mi>r</mi></mrow></msub><mo>)</mo></mrow><mo>,</mo><mover><mi>V</mi><mo>~</mo></mover><mo>=</mo><mrow><mo>(</mo><mi>V</mi><mo>,</mo><msqrt><msub><mi>&lambda;</mi><mn>2</mn></msub></msqrt><msub><mi>I</mi><mi>r</mi></msub><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths><maths num="0007"><![CDATA[<math><mrow><msup><mi>G</mi><mo>+</mo></msup><mo>=</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><mrow><mo>(</mo><mi>G</mi><mo>+</mo><mo>|</mo><mi>G</mi><mo>|</mo><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths><maths num="0008"><![CDATA[<math><mrow><msup><mi>G</mi><mo>-</mo></msup><mo>=</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><mrow><mo>(</mo><mi>G</mi><mo>-</mo><mo>|</mo><mi>G</mi><mo>|</mo><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths>|G|为矩阵G中所有元素取对应绝对值所构成的矩阵;iii)固定U和V,计算最佳的E,计算公式如下:<maths num="0009"><![CDATA[<math><mrow><mi>E</mi><mo>=</mo><msub><mi>f</mi><mfrac><msub><mi>&lambda;</mi><mn>1</mn></msub><mn>2</mn></mfrac></msub><mrow><mo>(</mo><mi>X</mi><mo>-</mo><mi>UV</mi><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mn>6</mn></mrow></math>]]></maths>其中函数f定义为:<img file="FDA0000479772820000027.GIF" wi="1086" he="239" />4)在进行图像检索时,将作为检索参考的图像x转换到图像基矩阵U所展开的子空间中,得到新的特征表达v,计算如下:v=(U<sup>T</sup>U)<sup>-1</sup>U<sup>T</sup>x=Mx,   8其中,M=(U<sup>T</sup>U)<sup>-1</sup>U<sup>T</sup>,U<sup>T</sup>为矩阵U转置,(U<sup>T</sup>U)<sup>-1</sup>为U<sup>T</sup>U的逆矩阵;5)依据步骤4)得到的v,计算v与图像数据集中任一图像x<sub>i</sub>的子空间特征表达v<sub>i</sub>之间的距离s<sub>i</sub>,计算公式如下:s<sub>i</sub>=exp(-||v-v<sub>i</sub>||<sup>2</sup>)   9最后根据距离s<sub>i</sub>对图像数据集中所有图像进行排序,返回距离值最小的前K个图像给用户,从而实现图像检索。
地址 311100 浙江省杭州市下城区费家塘路588号4幢424室