一种基于改进PHash算法的图像相似判定方法技术

技术编号:20449230 阅读:38 留言:0更新日期:2019-02-27 03:11
本发明专利技术涉及一种基于改进PHash算法的图像相似判定方法,属于图像处理技术领域。本发明专利技术首先通过基准图及考察图对图像进行全方位旋转操作,生成上、下、左、右、左上、左下、右上、右下等8张剪裁旋转图,其后通过PHash算法对图像进行Hash化,两两计算剪裁旋转图之间基于PHash的汉明距离,并取其最小值作为图像之间基于PHash的汉明距离;若基于PHash的汉明距离小于阈值,则判定为图像相似;若基于PHash的汉明距离大于阈值,则判定为图像不相似。本发明专利技术解决了现有技术在对图像相似判定时存在的未考虑图像旋转、灵活性不足、准确度低等现象,提高了利用PHash算法对图像相似判定的灵活性和准确度。

【技术实现步骤摘要】
一种基于改进PHash算法的图像相似判定方法
本专利技术涉及一种基于改进PHash算法的图像相似判定方法,属于图像处理

技术介绍
图像相似判定是图像处理领域的一项基本研究,指对两张或多张图像的内容相似程度进行分析、比较,广泛应用于图像检索、目标检测、照片过滤等领域。目前,有多种图像相似判定的方法,就感知哈希算法(PHash)而言,其准确率及效率并不尽人意,一个主要原因就是感知哈希算法(PHash)没有考虑到图像旋转的情况,若对图像进行上下或左右反转后再比对,其结果较不理想。
技术实现思路
本专利技术要解决的技术问题是针对现有技术的局限和不足,提供一种基于改进PHash算法的图像相似判定方法,以解决现有技术在对图像相似判定时存在的未考虑图像旋转、灵活性不足、准确度低等现象,致力于提高利用PHash算法对图像相似判定的灵活性和准确度。本专利技术的技术方案是:一种基于改进PHash算法的图像相似判定方法,首先通过基准图及考察图对图像进行全方位旋转操作,生成上、下、左、右、左上、左下、右上、右下等8张剪裁旋转图,其后通过PHash算法对图像进行Hash化,两两计算剪裁旋转图之间基于PHash的汉明距离,并取其最小值作为图像之间基于PHash的汉明距离;若基于PHash的汉明距离小于阈值,则判定为图像相似;若基于PHash的汉明距离大于阈值,则判定为图像不相似。具体步骤为:Step1:获取图像A和图像B;Step2:将图像A、B作为基准图,并在图像A、B中相同位置截取相同大小的图像作为考察图Step3:对图像A、B分别进行一定规则的方向旋转变化,得到新的图像A″m,m∈[1,8]和B″n,n∈[1,8];具体如Step3.1~Step3.4所示;Step3.1:记考察图的大小为M×N,其中心位置坐标为(x,y);Step3.2:以中心位置坐标(x,y)作为基准图像A、B的中心,重新在基准图上截取大小为M′×N′的截取后的图像A′、B′,其中M′≥M,N′≥N;Step3.3:对截取后的图像A′、B′进行45°t,t∈[1,8]方向旋转变化,得到旋转后的图像A′m,m∈[1,8]和B′n,n∈[1,8];Step3.4:对图像A′m,m∈[1,8]和B′n,n∈[1,8]以中心位置坐标(x,y)为中心,截取大小为M×N的图像,得到最终的旋转图像A″m,m∈[1,8]和B″n,n∈[1,8];Step4:通过PHash算法对图像A″m,m∈[1,8]和图像B″n,n∈[1,8]进行Hash化,得到图像A″m、B″n之间基于PHash的汉明距离Dis(A″m,B″n),m∈[1,8],n∈[1,8];具体如Step4.1~Step4.6所示;Step4.1:将图像A″m、B″n的大小压缩至32×32;Step4.2:将压缩后的图像A″m、B″n转化为256阶灰度图像,并表示为矩阵形式其中为矩阵元素值;Step4.3:计算矩阵的DCT矩阵其中矩阵元素值表示为Step4.4:保留矩阵的左上角8×8部分,删除其余部分;Step4.5:计算矩阵的平均值将矩阵按照从上至下(i=1→8)、从左至右(j=1→8)的规则,根据公式(1)进行值优化,并对其连接生成图像A″m、B″n的PHash值其中T(i,j)代表适用于u代表适用于Step4.6:通过图像A″m、B″n的PHash值计算图像A″m、B″n之间基于PHash的汉明距离Dis(A″m,B″n),m∈[1,8],n∈[1,8];Step5:根据图像A″m、B″n两两组合得到Max(m)×Max(n)=8×8=64个汉明距离,根据公式(2)选出其中最小值作为图像A、B之间基于PHash的汉明距离Dis(A,B);Dis(A,B)=Min(Dis(A″m,B″n)),m∈[1,8],n∈[1,8](2)Step6:定义汉明距离阈值若图像A、B之间基于PHash的汉明距离Dis(A,B)满足公式(3)要求,则判定图像A和图像B相似;若满足公式(4)要求,则判定图像A和图像B不相似。进一步地,所述步骤Step1中,图像A和图像B可以为任意大小的图像,且图像格式任意。进一步地,所述步骤Step3.2中,截取的图像的大小要大于考察图像的大小,即满足M′≥M,N′≥N的要求,作用是为了保证旋转后得到的图像在区域内没有空白区域。进一步地,所述步骤Step4.4中,不一定非要保留矩阵的左上角8×8部分,也可以保存其他局部矩阵,相应的汉明距离阈值要根据矩阵的元素个数进行更改。进一步地,所述步骤Step4.5中,汉明距离指两串Hash值进行异或运算后,结果为“1”的个数。进一步地,所述步骤Step5中为了降低处理速度,去除重复后可简化计算至1+2+…+Max(m,n)=36个汉明距离。进一步地,所述步骤Step6中,汉明距离阈值通常取可自行修改。本专利技术的有益效果是:解决了现有技术在对图像相似判定时存在的未考虑图像旋转、灵活性不足、准确度低等现象,提高了利用PHash算法对图像相似判定的灵活性和准确度。附图说明图1是本专利技术流程示意图;图2是本专利技术对图像进行旋转过程示意图。具体实施方式下面结合附图和具体实施方式,对本专利技术作进一步说明。实施例1:如图1-2所示,一种基于改进PHash算法的图像相似判定方法,首先通过基准图及考察图对图像进行全方位旋转操作,生成上、下、左、右、左上、左下、右上、右下等8张剪裁旋转图,其后通过PHash算法对图像进行Hash化,两两计算剪裁旋转图之间基于PHash的汉明距离,并取其最小值作为图像之间基于PHash的汉明距离;若基于PHash的汉明距离小于阈值,则判定为图像相似;若基于PHash的汉明距离大于阈值,则判定为图像不相似。具体步骤为:Step1:获取图像A和图像B;Step2:将图像A、B作为基准图,并在图像A、B中相同位置截取相同大小的图像作为考察图Step3:对图像A、B分别进行一定规则的方向旋转变化,得到新的图像A″m,m∈[1,8]和B″n,n∈[1,8];具体如Step3.1~Step3.4所示;Step3.1:记考察图的大小为M×N,其中心位置坐标为(x,y);Step3.2:以中心位置坐标(x,y)作为基准图像A、B的中心,重新在基准图上截取大小为M′×N′的截取后的图像A′、B′,其中M′≥M,N′≥N;Step3.3:对截取后的图像A′、B′进行45°t,t∈[1,8]方向旋转变化,得到旋转后的图像A′m,m∈[1,8]和B′n,n∈[1,8];Step3.4:对图像A′m,m∈[1,8]和B′n,n∈[1,8]以中心位置坐标(x,y)为中心,截取大小为M×N的图像,得到最终的旋转图像A″m,m∈[1,8]和B″n,n∈[1,8];Step4:通过PHash算法对图像A″m,m∈[1,8]和图像B″n,n∈[1,8]进行Hash化,得到图像A″m、B″n之间基于PHash的汉明距离Dis(A″m,B″n),m∈[1,8],n∈[1,8];具体如Step4.1~Step4.6所示;Step4.1:将图像A″m、B″n的大小压缩至32×32;Step4.2:将压缩后的图像A″m、B″n转化为256阶灰度图像,并表示为矩阵形式其中为矩阵元素值;本文档来自技高网...

【技术保护点】
1.一种基于改进PHash算法的图像相似判定方法,其特征在于:首先通过基准图及考察图对图像进行全方位旋转操作,生成上、下、左、右、左上、左下、右上、右下等8张剪裁旋转图,其后通过PHash算法对图像进行Hash化,两两计算剪裁旋转图之间基于PHash的汉明距离,并取其最小值作为图像之间基于PHash的汉明距离;若基于PHash的汉明距离小于阈值,则判定为图像相似;若基于PHash的汉明距离大于阈值,则判定为图像不相似;具体步骤为:Step1:获取图像A和图像B;Step2:将图像A、B作为基准图,并在图像A、B中相同位置截取相同大小的图像作为考察图

【技术特征摘要】
1.一种基于改进PHash算法的图像相似判定方法,其特征在于:首先通过基准图及考察图对图像进行全方位旋转操作,生成上、下、左、右、左上、左下、右上、右下等8张剪裁旋转图,其后通过PHash算法对图像进行Hash化,两两计算剪裁旋转图之间基于PHash的汉明距离,并取其最小值作为图像之间基于PHash的汉明距离;若基于PHash的汉明距离小于阈值,则判定为图像相似;若基于PHash的汉明距离大于阈值,则判定为图像不相似;具体步骤为:Step1:获取图像A和图像B;Step2:将图像A、B作为基准图,并在图像A、B中相同位置截取相同大小的图像作为考察图Step3:对图像A、B分别进行一定规则的方向旋转变化,得到新的图像A″m,m∈[1,8]和B″n,n∈[1,8];具体如Step3.1~Step3.4所示;Step3.1:记考察图的大小为M×N,其中心位置坐标为(x,y);Step3.2:以中心位置坐标(x,y)作为基准图像A、B的中心,重新在基准图上截取大小为M′×N′的截取后的图像A′、B′,其中M′≥M,N′≥N;Step3.3:对截取后的图像A′、B′进行45°t,t∈[1,8]方向旋转变化,得到旋转后的图像A′m,m∈[1,8]和B′n,n∈[1,8];Step3.4:对图像A′m,m∈[1,8]和B′n,n∈[1,8]以中心位置坐标(x,y)为中心,截取大小为M×N的图像,得到最终的旋转图像A″m,m∈[1,8]和B″n,n∈[1,8];Step4:通过PHash算法对图像A″m,m∈[1,8]和图像B″n,n∈[1,8]进行Hash化,得到图像A″m、B″n之间基于PHash的汉明距离Dis(A″m,B″n),m∈[1,8],n∈[1,8];具体如Step4.1~Step4.6所示;Step4.1:将图像A″m、B″n的大小压缩至32×32;Step4.2:将压缩后的图像A″m、B″n转化为256阶灰度图像,并表示为矩阵形式其中为矩阵元素值;Step4.3:计算矩阵的DCT矩阵其中矩阵元素值表示为Step4.4:保留矩阵的左上角8×8部分,删除其余部分;Step4.5...

【专利技术属性】
技术研发人员:彭艺尹玉梅祁俊辉
申请(专利权)人:昆明理工大学
类型:发明
国别省市:云南,53

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

1