一种图片相似度计算方法技术

技术编号:15330529 阅读:280 留言:0更新日期:2017-05-16 13:58
本发明专利技术公开了一种图片相似度计算方法,包括:(1)用基于DCT的hash方法分别计算待比较的两个图片的hash值;(2)计算两个hash值之间的汉明距离dis_h;(3)若汉明距离不在设定范围内,直接通过公式计算两图片的相似度;(4)若汉明距离在设定范围内,再用基于径向投影的hash方法计算hash值;(5)计算上一步得到的hash值的皮尔逊相关系数,并结合第二步得到的汉明距离计算两图片的相似度。本发明专利技术对图像旋转有一定的鲁棒性、避免伽马校正或颜色直方图被调整带来的影响,提高了图片相似度结果的准确率。

A method of image similarity calculation

The invention discloses an image similarity calculation method, including: (1) using two image hash method based on DCT were calculated to compare the value of the hash; (2) calculating the Hamming distance between dis_h two hash values; (3) if the Hamming distance is not within the set range, directly through similarity formula two pictures; (4) the Ruo Hanming distance within a given range, and then calculate the value of hash hash method based on radial projection; (5) Pearson correlation coefficient calculation step by the hash value, the similarity with second step by hamming distance calculation of two pictures. The invention has certain robustness to the image rotation, avoids the influence of the gamma correction or the color histogram adjustment, and improves the accuracy rate of the picture similarity result.

【技术实现步骤摘要】
一种图片相似度计算方法
本专利技术涉及计算机算法领域,具体涉及一种图片相似度计算方法,可应用于相似图片检索、视频关键帧相似度的计算。
技术介绍
目前,图片相似度计算广泛应用于相似图片搜索、视频相似度计算等领域,pHash方法作为图片相似度计算的主要方法之一,主要有基于DCT的hash方法和基于径向投影的hash方法。两种方法是从不同角度来表达图像,最后通过计算两图片hash值的汉明距离来计算相似度。方法一基于DCT的hash方法的思路是使用离散余弦变换(DCT)提取图片的低频成分,先将图片转换成标准大小的灰度图,然后对灰度图做DCT变换,再从系数矩阵中提取出64位的hash值作为指纹,只要图片的整体结构保持不变,指纹就不变,能够避免伽马校正或颜色直方图被调整带来的影响,最后通过计算两图片指纹的汉明距离来得到相似度。方法二基于径向投影的hash方法的思路是首先会过灰度图中心计算朝等角度间隔的180个方向上像素值的方差,然后计算由这180个方差构成的特征向量的DCT,并从DCT系数矩阵中提取出64位的hash值作为指纹,最后通过计算两指纹间的皮尔逊相关系数来得到两图片间的相似度。此方法可以保留图像中的几何特征,且对图像旋转有一定的鲁棒性,但由于需要计算皮尔逊相关系数,计算速度比方法一慢。但是这两种方法均是通过单一的pHash算法计算图片相似度,经常会出现内容截然不同的图片间计算得到的相似度非常高的情况,极有可能产生误判,不能保证结果的准确性。
技术实现思路
本专利技术的目的是针对上述现有技术的不足,提供了一种图片相似度计算方法,该方法将基于DCT的hash方法和基于径向投影的hash方法融合来计算图片的相似度,解决了相似图片搜索、视频关键帧相似度计算领域中单一pHash方法算得不同内容图片的相似度非常高、图片相似度结果不够准确的问题。本专利技术的目的可以通过如下技术方案实现:一种图片相似度计算方法,所述方法包括以下步骤:1)用基于DCT的hash方法分别计算待比较的两张图片的hash值h_a与h_b;2)计算步骤1)中两张图片的hash值h_a与h_b之间的汉明距离dis_h;3)若汉明距离dis_h不在设定范围10<dis_h<25内,直接通过公式计算两张图片的相似度P,所述公式为:4)若汉明距离dis_h在设定范围10<dis_h<25内,再用基于径向投影的hash方法分别计算两张图片的hash值h2_a与h2_b;5)计算步骤4)得到的两张图片的hash值h2_a与h2_b之间的皮尔逊相关系数pcc,并结合步骤2)得到的汉明距离dis_h计算两张图片的相似度P。优选的,步骤1)中,所述基于DCT的hash方法使用离散余弦变换提取图片的低频成分,先将图片转换成标准大小的灰度图,然后对灰度图做DCT变换,再从系数矩阵中提取出64位的hash值作为指纹,所述基于DCT的hash方法包括以下具体步骤:一、将图片缩小到32*32并灰度化得到灰度图,以减小计算量;二、计算步骤一得到的灰度图的DCT变换,得到32*32的系数矩阵,所述DCT变换公式为:其中,F(u,v)是灰度图的DCT系数矩阵,u、v分别是灰度图在频域中水平方向和竖直方向的频率,f(i,j)为灰度图中坐标(i,j)处的像素值,N是灰度图的边长,此处N=32;三、取步骤二得到的32*32的系数矩阵左上角的8*8矩阵,计算该8*8矩阵的均值avg;四、对步骤三得到的8*8矩阵的每一个元素,大于等于avg的置1,小于avg的置0;五、按固定顺序将步骤四得到的8*8矩阵拉伸成1*64的hash值。优选的,步骤2)中两张图片的hash值h_a与h_b之间的汉明距离dis_h取值范围在0~64之间。优选的,步骤4)中,所述基于径向投影的hash方法首先会过灰度图中心计算朝等角度间隔的180个方向上像素值的方差,然后计算由这180个方差构成的特征向量的DCT,并从DCT系数矩阵中提取出64位的hash值作为指纹,所述基于径向投影的hash方法包括以下具体步骤:(1)将图片转化为灰度图;(2)过步骤(1)得到的灰度图中心等角度取180条直线,计算每条直线上像素点的方差,180个方差构成一个特征向量;(3)计算上述特征向量的DCT变换,得到DCT系数向量;(4)取前64个DCT系数向量构成新向量,计算新向量的均值avg2;(5)对新向量中的每个元素,大于等于avg2的置1,小于avg2的置0,得到的新向量即hash值。优选的,步骤5)中,所述计算两张图片的hash值h2_a与h2_b的皮尔逊相关系数pcc的具体公式如下:其中,X、Y分别代指两张图片的hash值h2_a与h2_b,ρX,Y是h2_a与h2_b的皮尔逊相关系数;通过以下公式结合汉明距离dis_h和皮尔逊相关系数pcc,得到图片相似度P:本专利技术与现有技术相比,具有如下优点和有益效果:1、本专利技术采用了将“基于DCT的hash方法”和“基于径向投影的hash方法”融合后进行图片相似度计算的方案,该方案通过使用两种不同方法计算图片的hash值并计算不同方案下的图片相似度dis_h、pcc,然后综合dis_h、pcc计算出图像的相似度,结合了两种方法的优点,从而在不降低计算速度的同时,极大的提高了图片相似度结果的准确率。2、本专利技术从多角度提取图像特征并计算图像相似度,鲁棒性强,可用于各类图像。附图说明图1为本专利技术实施例的一种图片相似度计算方法的具体流程图。图2为本专利技术实施例的一种图片相似度计算方法中步骤1)的方法流程图。图3为本专利技术实施例的一种图片相似度计算方法中步骤4)的方法流程图。具体实施方式下面结合实施例及附图对本专利技术作进一步详细的描述,但本专利技术的实施方式不限于此。实施例:本实施例提供了一种图片相似度计算方法,如图1所示,为该方法的具体流程图,该方法包括以下步骤:1)用基于DCT的hash方法分别计算待比较的两张图片的hash值h_a与h_b;本步骤中,所述基于DCT的hash方法使用离散余弦变换提取图片的低频成分,先将图片转换成标准大小的灰度图,然后对灰度图做DCT变换,再从系数矩阵中提取出64位的hash值作为指纹,所述基于DCT的hash方法流程图如图2所示,包括以下具体步骤:一、将图片缩小到32*32并灰度化得到灰度图,以减小计算量;二、计算步骤一得到的灰度图的DCT变换,得到32*32的系数矩阵,所述DCT变换公式为:其中,F(u,v)是灰度图的DCT系数矩阵,u、v分别是灰度图在频域中水平方向和竖直方向的频率,f(i,j)为灰度图中坐标(i,j)处的像素值,N是灰度图的边长,此处N=32;三、取步骤二得到的32*32的系数矩阵左上角的8*8矩阵,计算该8*8矩阵的均值avg;四、对步骤三得到的8*8矩阵的每一个元素,大于等于avg的置1,小于avg的置0;五、按固定顺序将步骤四得到的8*8矩阵拉伸成1*64的hash值。2)计算步骤1)中两张图片的hash值h_a与h_b之间的汉明距离dis_h;本步骤中两张图片的hash值h_a与h_b之间的汉明距离dis_h取值范围在0~64之间。3)若汉明距离dis_h不在设定范围10<dis_h<25内,直接通过公式计本文档来自技高网...
一种图片相似度计算方法

【技术保护点】
一种图片相似度计算方法,其特征在于:所述方法包括以下步骤:1)用基于DCT的hash方法分别计算待比较的两张图片的hash值h_a与h_b;2)计算步骤1)中两张图片的hash值h_a与h_b之间的汉明距离dis_h;3)若汉明距离dis_h不在设定范围10<dis_h<25内,直接通过公式计算两张图片的相似度P,所述公式为:

【技术特征摘要】
1.一种图片相似度计算方法,其特征在于:所述方法包括以下步骤:1)用基于DCT的hash方法分别计算待比较的两张图片的hash值h_a与h_b;2)计算步骤1)中两张图片的hash值h_a与h_b之间的汉明距离dis_h;3)若汉明距离dis_h不在设定范围10<dis_h<25内,直接通过公式计算两张图片的相似度P,所述公式为:4)若汉明距离dis_h在设定范围10<dis_h<25内,再用基于径向投影的hash方法分别计算两张图片的hash值h2_a与h2_b;5)计算步骤4)得到的两张图片的hash值h2_a与h2_b之间的皮尔逊相关系数pcc,并结合步骤2)得到的汉明距离dis_h计算两张图片的相似度P。2.根据权利要求1所述的一种图片相似度计算方法,其特征在于:步骤1)中,所述基于DCT的hash方法使用离散余弦变换提取图片的低频成分,先将图片转换成标准大小的灰度图,然后对灰度图做DCT变换,再从系数矩阵中提取出64位的hash值作为指纹,所述基于DCT的hash方法包括以下具体步骤:一、将图片缩小到32*32并灰度化得到灰度图,以减小计算量;二、计算步骤一得到的灰度图的DCT变换,得到32*32的系数矩阵,所述DCT变换公式为:其中,F(u,v)是灰度图的DCT系数矩阵,u、v分别是灰度图在频域中水平方向和竖直方向的频率,f(i,j)为灰度图中坐标(i,j)处的像素值...

【专利技术属性】
技术研发人员:胡丹李楚怡余卫宇
申请(专利权)人:华南理工大学
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1