发明名称 一种基于集成哈希编码的快速图像检索方法
摘要 本发明公开了一种基于集成哈希编码的快速图像检索方法,属于数字图像检索技术领域,步骤如下:首先提取训练图像和查询图像的SIFT特征,并利用M种哈希算法对训练图像进行初始哈希编码;然后利用集成学中的一致性约束准则对初始哈希编码结果进行再学,得到集成哈希映射矩阵;最后重新对训练图像和查询图像进行集成哈希编码,并在集成哈希编码的基础上通过计算查询图像与训练图像之间的汉明距离来进行快速检索。本发明中的集成哈希编码能够同时融合不同哈希算法的特点和优势,解决了单一哈希算法判别力不足和适用范围的局限性问题,从而使得图像的快速检索更加准确和高效。
申请公布号 CN104765872A 申请公布日期 2015.07.08
申请号 CN201510200864.2 申请日期 2015.04.23
申请人 中国石油大学(华东) 发明人 李鹏;卢宝周;任鹏
分类号 G06F17/30(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 青岛联信知识产权代理事务所 37227 代理人 徐艳艳
主权项 一种基于集成哈希编码的快速图像检索方法,其特征在于:具体包括以下步骤:(1)给定数据库,将其分为训练图像数据库和查询图像数据库,对每一幅训练图像t<sub>i</sub>(1≤i≤n)和查询图像u<sub>j</sub>(1≤j≤q)分别提取SIFT特征并利用K‑均值聚类将其量化表示为d维的特征向量,其中n和q分别为训练图像和查询图像的数量,则所有训练图像的特征向量可以组成一个训练图像特征向量库X=[x<sub>1</sub>,x<sub>2</sub>,...,x<sub>n</sub>]<sup>T</sup>,其中X为n×d维的矩阵,X的每一行x<sub>i</sub>分别为相应训练图像t<sub>i</sub>的特征向量,所有查询图像的特征向量可以组成一个查询图像特征向量库Y=[y<sub>1</sub>,y<sub>2</sub>,...,y<sub>q</sub>]<sup>T</sup>,其中Y为q×d维的矩阵,Y的每一行y<sub>j</sub>分别为相应查询图像u<sub>j</sub>的特征向量;(2)选取现有的M种不同图像哈希算法对训练图像的特征向量库X分别进行初始哈希编码,得到的初始哈希编码矩阵分别记为H<sub>m</sub>(m=1,…,M),其中<img file="FDA0000704745270000011.GIF" wi="434" he="86" />是一个维度为n×r<sub>m</sub>、元素取值为‑1或者1的矩阵,每一行代表一幅训练图像的初始哈希编码,n为训练图像总数,r<sub>m</sub>为第m种哈希算法的编码长度;(3)从训练图像的特征向量库X中随机按行挑选k幅图像得到一个子矩阵X’,维度是k×d,同时对应地从每一个初始哈希编码矩阵H<sub>m</sub>中分别按行随机选取一个子矩阵H’<sub>m</sub>,维度是k×r<sub>m</sub>,在每一种哈希算法的初始哈希编码子矩阵H’<sub>m</sub>基础上,通过向量的内积来计算两幅训练图像的初始哈希编码之间的相似度,其中第m种哈希算法下的训练图像的初始哈希编码之间的相似度计算公式为:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msub><mi>S</mi><mi>m</mi></msub><mo>=</mo><mfrac><mrow><msubsup><mi>H</mi><mi>m</mi><mo>,</mo></msubsup><msubsup><mi>H</mi><mi>m</mi><mrow><mo>,</mo><mi>T</mi></mrow></msubsup></mrow><msub><mi>r</mi><mi>m</mi></msub></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000704745270000012.GIF" wi="1149" he="157" /></maths>式中,S<sub>m</sub>为第m种哈希算法下的训练图像的初始哈希编码相似度矩阵,维度是k×k,S<sub>m</sub>中的每一个元素<img file="FDA0000704745270000013.GIF" wi="66" he="77" />表示第i幅训练图像与第j幅训练图像在第m种哈希算法下的相似度数值(1≤i≤k,1≤j≤k),并且<img file="FDA0000704745270000014.GIF" wi="255" he="79" /><img file="FDA0000704745270000015.GIF" wi="70" he="76" />的值越大表示两幅图像的初始哈希编码越相似,反之则越不相似,<img file="FDA0000704745270000016.GIF" wi="103" he="83" />代表矩阵H’<sub>m</sub>的转置;(4)按照下面的公式计算M种不同哈希算法下的训练图像的初始哈希编码之间的平均相似度:<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><mi>S</mi><mo>=</mo><mfrac><mn>1</mn><mi>M</mi></mfrac><munderover><mi>&Sigma;</mi><mrow><mi>m</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><msub><mi>S</mi><mi>m</mi></msub><mo>=</mo><mfrac><mn>1</mn><mi>M</mi></mfrac><munderover><mi>&Sigma;</mi><mrow><mi>m</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><mfrac><mrow><msubsup><mi>H</mi><mi>m</mi><mo>,</mo></msubsup><msubsup><mi>H</mi><mi>m</mi><mrow><mo>,</mo><mi>T</mi></mrow></msubsup></mrow><msub><mi>r</mi><mi>m</mi></msub></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000704745270000021.GIF" wi="1327" he="157" /></maths>式中,S为融合了M种不同哈希算法的初始哈希编码相似度的平均相似度矩阵,维度是k×k;(5)在平均相似度矩阵S的基础上,利用集成学习算法中的一致性约束准则进行图像哈希编码的再学习,所述一致性约束准则是指由再学习得到的集成哈希编码计算得出的相似度要与M种不同哈希算法的平均相似度矩阵S相一致,具体过程通过最小化下面的目标函数实现:<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><msub><mover><mi>H</mi><mo>^</mo></mover><mo>*</mo></msub><mo>=</mo><munder><mrow><mi>arg</mi><mi>min</mi></mrow><msub><mi>H</mi><mo>*</mo></msub></munder><msup><mrow><mo>|</mo><mo>|</mo><mfrac><mrow><msub><mi>H</mi><mo>*</mo></msub><msubsup><mi>H</mi><mo>*</mo><mi>T</mi></msubsup></mrow><msub><mi>r</mi><mo>*</mo></msub></mfrac><mo>-</mo><mi>S</mi><mo>|</mo><mo>|</mo></mrow><mn>2</mn></msup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000704745270000022.GIF" wi="1300" he="142" /></maths>式中,<img file="FDA0000704745270000023.GIF" wi="302" he="97" />为学习得到的集成哈希编码矩阵,每一行代表一幅训练图像的集成哈希编码,r<sub>*</sub>为集成哈希编码的长度,若集成哈希编码采用线性映射的形式,则上述目标函数可以写为:<maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><msub><mover><mi>W</mi><mo>^</mo></mover><mo>*</mo></msub><mo>=</mo><munder><mrow><mi>arg</mi><mi>min</mi></mrow><msub><mi>W</mi><mo>*</mo></msub></munder><msup><mrow><mo>|</mo><mo>|</mo><mfrac><mrow><mi>sign</mi><mrow><mo>(</mo><msup><mi>X</mi><mo>,</mo></msup><msub><mi>W</mi><mo>*</mo></msub><mo>)</mo></mrow><mi>sign</mi><msup><mrow><mo>(</mo><msup><mi>X</mi><mo>,</mo></msup><msub><mi>W</mi><mo>*</mo></msub><mo>)</mo></mrow><mi>T</mi></msup></mrow><msub><mi>r</mi><mo>*</mo></msub></mfrac><mo>-</mo><mi>S</mi><mo>|</mo><mo>|</mo></mrow><mn>2</mn></msup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000704745270000024.GIF" wi="1493" he="147" /></maths>式中,<img file="FDA0000704745270000025.GIF" wi="65" he="86" />为集成哈希映射矩阵,维度是d×r<sub>*</sub>,作用是将图像从特征空间映射到汉明空间,sign(.)为取符号函数;(6)对于查询图像特征向量库中的任意一幅查询图像的特征向量y<sub>j</sub>(1≤j≤q),利用集成哈希映射矩阵<img file="FDA0000704745270000026.GIF" wi="66" he="90" />将其映射到汉明空间,得到其集成哈希编码h<sub>y</sub>,同时对训练图像的特征向量库X重新进行集成哈希编码,计算h<sub>y</sub>与每一幅训练图像的集成哈希编码之间的汉明距离,如果汉明距离的值小于阈值β,则把该幅训练图像作为对应查询图像u<sub>j</sub>的相似图像返回给用户。
地址 266580 山东省青岛市黄岛区长江西路66号