CN111382298B - 基于图片内容的图像检索方法、装置与电子设备 - Google Patents

基于图片内容的图像检索方法、装置与电子设备 Download PDF

Info

Publication number
CN111382298B
CN111382298B CN201811644374.1A CN201811644374A CN111382298B CN 111382298 B CN111382298 B CN 111382298B CN 201811644374 A CN201811644374 A CN 201811644374A CN 111382298 B CN111382298 B CN 111382298B
Authority
CN
China
Prior art keywords
value
target image
dct
fingerprint information
hash code
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811644374.1A
Other languages
English (en)
Other versions
CN111382298A (zh
Inventor
侯林杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Fangjianghu Technology Co Ltd
Original Assignee
Beijing Fangjianghu Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Fangjianghu Technology Co Ltd filed Critical Beijing Fangjianghu Technology Co Ltd
Priority to CN201811644374.1A priority Critical patent/CN111382298B/zh
Publication of CN111382298A publication Critical patent/CN111382298A/zh
Application granted granted Critical
Publication of CN111382298B publication Critical patent/CN111382298B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例提供一种基于图片内容的图像检索方法、装置与电子设备,其中所述方法包括:对目标图像依次进行DCT变换计算和二值化处理,获取所述目标图像全局特征的多数位字符串指纹信息;对所述指纹信息进行哈希编码,并将所述指纹信息中的哈希编码值按位进行分组;将每一分组按指纹信息值与哈希编码值按key‑value形式进行表示,并基于每一key值对应的value值中的多个哈希编码值,分别到预建立的不同map中进行查找,获取检索结果。本发明实施例通过对目标图像的全局特征进行提取,并基于该全局特征,采用哈希算法与分组式计算相结合进行索引查找,能够在保证准确率和召回率的同时,有效降低计算时间,提高计算效率。

Description

基于图片内容的图像检索方法、装置与电子设备
技术领域
本发明实施例涉及图像检索技术领域,更具体地,涉及一种基于图片内容的图像检索方法、装置与电子设备。
背景技术
目前,平台上不同房源间以及同一房源中出现有大量的重复图片,一方面对C端用户造成很差的体验,另一方面不同房源间存在相同图片疑似为假房源。目前对重复图片的检索技术上有传统图像处理手段包括SIFT、SURF以及平均哈希算法等。
SIFT和SURF算法是基于图像局部特征对图像进行描述。基于均值hash的哈希算法是从图像的全局信息进行采样处理并生成哈希编码,再利用生成的哈希编码进行距离计算,以评价图像间的相似度,从而能够准确衡量出重复图片间的重复度,该类方法的优点是处理图片的速度快并且准确率和召回率都很高。
但是,上述两种方法中,前者的缺点是处理图片的速度慢,且如果图像经过裁剪后很难判断出是否重复,对重复图片的检测召回率不是很高。后者对裁剪面积小于原图面积25%的图片仍有一定的识别能力,但是由于目前在查找图片方面采用的还是直接两两计算hash code的距离,一旦图片的数量很大之后计算所花费的时间会很长。
发明内容
为了克服上述问题或者至少部分地解决上述问题,本发明实施例提供一种基于图片内容的图像检索方法、装置与电子设备,用以在保证准确率和召回率的同时,有效降低计算时间,提高计算效率。
第一方面,本发明实施例提供一种基于图片内容的图像检索方法,包括:
对目标图像依次进行DCT变换计算和二值化处理,获取所述目标图像全局特征的多数位字符串指纹信息;
对所述指纹信息进行哈希编码,并将所述指纹信息中的哈希编码值按位进行分组;
将每一分组按指纹信息值与哈希编码值按key-value形式进行表示,并基于每一key值对应的value值中的多个哈希编码值,分别到预建立的不同map中进行查找,获取检索结果。
第二方面,本发明实施例提供一种基于图片内容的图像检索装置,包括:
指纹信息提取模块,用于对目标图像依次进行DCT变换计算和二值化处理,获取所述目标图像全局特征的多数位字符串指纹信息;
分组模块,用于对所述指纹信息进行哈希编码,并将所述指纹信息中的哈希编码值按位进行分组;
检索输出模块,用于将每一分组按指纹信息值与哈希编码值按key-value形式进行表示,并基于每一key值对应的value值中的多个哈希编码值,分别到预建立的不同map中进行查找,获取检索结果。
第三方面,本发明实施例提供一种电子设备,包括:至少一个存储器、至少一个处理器、通信接口和总线;所述存储器、所述处理器和所述通信接口通过所述总线完成相互间的通信,所述通信接口用于所述电子设备与图片数据库之间的信息传输;所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如上第一方面所述的基于图片内容的图像检索方法。
第四方面,本发明实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如上第一方面所述的基于图片内容的图像检索方法。
本发明实施例提供的基于图片内容的图像检索方法、装置与电子设备,通过对目标图像的全局特征进行提取,并基于该全局特征,采用哈希算法与分组式计算相结合进行索引查找,能够在保证准确率和召回率的同时,有效降低计算时间,提高计算效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提供的基于图片内容的图像检索方法的流程示意图;
图2为本发明另一实施例提供的基于图片内容的图像检索方法的流程示意图;
图3为本发明实施例提供的译员基因的选取装置的结构示意图;
图4为本发明实施例提供的电子设备的实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明实施例的一部分实施例,而不是全部的实施例。基于本发明实施例中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明实施例保护的范围。
现有技术是基于图片的局部特征进行图片判重,主要缺点是计算效率低召回率不高。另外对于大型图片库,传统计算查找索引的效率很低,不能达到实时性的要求。本发明实施例针对图片被裁减造成图片内容信息损失的情况,利用图片全局特征提取算法,解决传统索引方法利用局部特征算法召回率不高以及算法健壮性差的问题,同时解决计算查找效率低的问题。以下将具体通过多个实施例对本发明实施例进行展开说明和介绍。
作为本发明实施例的一个方面,本实施例提供一种基于图片内容的图像检索方法,参考图1,为本发明一实施例提供的基于图片内容的图像检索方法的流程示意图,包括:
S101,对目标图像依次进行DCT变换计算和二值化处理,获取目标图像全局特征的多数位字符串指纹信息。
可以理解为,为了更全面准确的根据目标图像进行重复图像的检索,本步骤进行目标图像的全局特征的提取。具体而言,先对目标图像进行DCT变换计算,提取目标图像在所有频率下的特征,再根据DCT变换计算的结果,对提取的特征进行二值化处理,最终得到一个固定位数的0/1字符串,这就是这张目标图像的指纹信息。其中目标图像即为检索的基础,根据该检索基础进行与其重复的图像的检索。
可以理解的是,其中的DCT变换即为离散余弦变换(DCT forDiscrete CosineTransform),DCT除了具有一般的正交变换性质外,其变换阵的基向量近似于Toeplitz矩阵的特征向量,能够体现人类语言、图像信号的相关特性。
S102,对指纹信息进行哈希编码,并将指纹信息中的哈希编码值按位进行分组。
为了更快速细致的进行重复图像的检索,本发明实施例采用分组式计算的索引查找算法。首先对于包含目标图像的全局特性的指纹信息进行哈希编码,得到对应的哈希编码值。之后,将上述多数位字符串形式的指纹信息中的位的哈希编码值按位进行分组,每个分组具有相同的位数。
例如,对于一个64位0/1字符串的指纹信息,采用内存换速度的方式,将指纹信息位的哈希编码值分位八组,每组八位。
S103,将每一分组按指纹信息值与哈希编码值按key-value形式进行表示,并基于每一key值对应的value值中的多个哈希编码值,分别到预建立的不同map中进行查找,获取检索结果。
可以理解为,对于上述步骤的各个分组,在进行哈希数据格式存储时,以各分组指纹信息值作为key值,并以该分组对应的哈希编码值确定该分组的value值,构成key-value数据格式,其中每个key值对应的value值中包含多个哈希编码值。则在进行检索时,对于每个分组,基于该分组的多个哈希编码值,在对应的多个map中查询是否存在相同的key值,并根据查询结果输出最终检索结果。
本发明实施例提供的基于图片内容的图像检索方法,通过对目标图像的全局特征进行提取,并基于该全局特征,采用哈希算法与分组式计算相结合进行索引查找,能够在保证准确率和召回率的同时,有效降低计算时间,提高计算效率。
根据上述的各实施例中,在对目标图像进行DCT变换计算的步骤之前,本发明实施例的方法还包括:
检查目标图像是否能够正常解码;
和/或,对于目标图像为RGB三通道彩色图片的,将RGB三通道彩色图片转化成单通道灰度图;
和/或,采用插值算法,缩小目标图像的尺寸。
可以理解为,本发明实施例在对目标图像进行DCT变换的计算之前,先对目标图像进行预处理。其中的预处理可以是对目标图像的格式进行检查,以判断其是否能够被正常解码。若目标图像是RGB三通道的彩色图片,则也可以做出将RGB三通道彩色图片转化成单通道灰度图的预处理。因为RGB除去颜色特征外其余的特征都是一样的,所以转化成单通道进行计算降低了计算量。另外,也可以对目标图像进行插值运算,以缩小目标图像的尺寸,降低计算难度。
可以理解的是,对于上述的各种预处理类型,可以单独实施,也可以任意组合一起实施。例如,对于目标图像为RGB三通道彩色图片的,可以先进行将RGB三通道彩色图片转化成单通道灰度图的预处理,再对转化后的图像采用插值算法,缩小目标图像的尺寸。
本发明实施例提供的基于图片内容的图像检索方法,通过对目标图像的预处理,能够使计算变得简单,有效降低计算量。
其中,根据上述各实施例可选的,对目标图像依次进行DCT变换计算和二值化处理,获取目标图像全局特征的多数位字符串指纹信息的步骤具体包括:
对目标图像进行DCT变换计算,获取目标图像的DCT系数矩阵,并基于DCT系数矩阵计算DCT平均值;
通过比较DCT系数矩阵中的每个元素与DCT平均值的大小,对DCT系数矩阵进行二值化处理,获取目标图像的指纹信息。
可以理解为,对于给定的目标图像或者经过预处理后的目标图像,首先计算图像的DCT变换,得到一定维数的DCT系数矩阵,例如32*32的DCT系数矩阵。再对该32*32的DCT系数矩阵求取平均值,即作为上述DCT平均值。可以理解,在对DCT系数矩阵求取平均值时,可以按下述计算公式进行计算:
Figure BDA0001931755340000061
Figure BDA0001931755340000062
上述公式计算出的F(u,v)是DCT矩阵中第I行,第j列中的DCT系数,f(i,j)是行i和列j中的像素的强度值,得到DCT系数矩阵后所有系数相加除以系数个数就得到了平均值。
之后,将上述DCT系数矩阵中的每个元素分别与DCT平均值比较,并根据比较结果对DCT系数矩阵进行二值化处理,得到一个固定位数的0/1字符串,这就是这张目标图像的指纹信息。例如,对于8*8的DCT系数矩阵,大于等于DCT平均值的设为1,小于DCT平均值的设为0,对DCT系数矩阵进行二值化,将二值化结果组合在一起,就构成了一个64位的0/1字符串。
在上述各实施例的基础上,在获取目标图像的DCT系数矩阵的步骤之后,本发明实施例的方法还包括:缩小DCT系数矩阵,保留位于DCT系数矩阵中左上角处固定维度的DCT子矩阵;相应的,通过比较DCT系数矩阵与DCT平均值的大小,对DCT系数矩阵进行二值化处理的步骤具体包括:通过比较DCT子矩阵与DCT平均值的大小,对DCT子矩阵进行二值化处理。
可以理解为,为进一步降低计算量、提高计算效率,本发明实施例在进行目标图像指纹信息的提取时,选取上述各实施例的DCT系数矩阵中位于左上角处一定维度的一部分,作为一个DCT子矩阵。例如,对于上述实施例中的32*32的DCT系数矩阵,缩小DCT只保留左上角的8*8的矩阵,这部分主要是图片中的最低频率,该8*8的矩阵即为一个DCT子矩阵。
则相应的,对于上述各实施例根据DCT系数矩阵提取指纹信息的处理流程,可替换为根据DCT子矩阵提取指纹信息的处理流程。
其中,根据上述各实施例可选的,将每一分组按指纹信息值与哈希编码值按key-value形式进行表示的步骤具体包括:按照分组的总数,建立对应数量的dict,并以各分组的指纹信息值作为对应dict的key值,每个dict的value值为一个list,用于存放相同key值的哈希编码值。
可以理解为,在根据上述各实施例对指纹信息位的哈希编码值进行分组的基础上,可以得到总的分组数目。例如,对于上述64位0/1字符串的指纹信息,可以将位的哈希编码值分位八组,每组八位。则,根据本发明实施例,可以建立八个dict,每个dict代表一组,以每组的值作为key,value是一个list,存放key相同的hash值。
在上述各实施例的基础上,在基于每一key值对应的value值中的多个哈希编码值,分别到预建立的不同map中进行查找的步骤之前,本发明实施例的方法还包括:对当前图片库中的每张历史图片生成哈希编码,并将各历史图片的哈希编码存入map数据库,构成索引库,map数据库中包含多个map。
可以理解为,在进行目标图像的检索时,是针对特定的图像数据库进行的。在本发明实施例中,可以是对房源平台中的图片数据库。因此,在进行检索之前,先对当前图片库中的每张图片生成哈希编码并存入map数据库,构成索引库,这个索引库会作为初始索引库,对后续线上请求的图片生成哈希编码并和索引库进行比对返回检索结果。可以理解的是,当前图片库中已存在的图片,均可作为历史图片,进行索引库的建立。
其中,根据上述各实施例可选的,基于每一key值对应的value值中的多个哈希编码值,分别到预建立的不同map中进行查找,获取检索结果的步骤具体包括:
分别基于value值中的各哈希编码值,通过检索索引库,在不同的map中进行查找,选取key值相同的所有哈希编码值;
遍历选取的每个哈希编码值,计算该哈希编码值与目标图像的哈希编码值间的汉明距离,并基于汉明距离,判断当前图片库中是否存在与目标图像重复的历史图片;
其中,选取的每个哈希编码值分别对应当前图片库中的一个历史图片。
可以理解为,按照上述各实施例对哈希编码值的分组,一个key值对应的value值的list中,存放与具有该相同key值的哈希编码值,在查询比对过程中,根据相同key值的各个哈希编码值分别在索引库的不同map中查找。如果有相同的key值,取出key值相同的所有哈希编码值。
选取的每个哈希编码值分别对应一张历史图片,则通过遍历选取的每个哈希编码值,并计算每个选取的哈希编码值与目标图像的哈希编码值间的汉明距离,可获知目标图像与各历史图片间的相近程度。之后,通过判断计算的汉明距离是否在限定阈值内,来判断当前图片库中是否存在与目标图像重复的图片,如果不存在说明目标图像没有和当前图片库中的图片重复,否则判定有重复,并可将检索结果输出。
为进一步说明本发明实施例的技术方案,本发明实施例根据上述各实施例提供如下实施例的处理流程,但不对本发明实施例的保护范围进行限制。
如图2所示,为本发明另一实施例提供的基于图片内容的图像检索方法的流程示意图,图中首先对用户请求或待检索的目标图像进行预处理,预处理包括检查图片的格式、是否能够正常解码、把彩色图转化成灰度图以及缩小图片尺寸等操作。
之后,图2中的抽取特征主要涉及对目标图像的DCT计算,得到DCT的8*8矩阵,并对该矩阵进行二值化,编码成64位的0/1字符串。反馈和调整主要是针对特征提取以及查找索引使用过程中暴露的问题进行优化提升。计算图片相似度是计算两张图片之间的汉明距离。查找索引取结果是查看索引库中是否存在和当前hash code的汉明距离在限定阀值内的结果,如果没有说明该图片没有和库中的图片重复,否则判为重复。具体而言,如果目标图像为RGB三通道彩色图片,本发明实施例包括以下处理流程:
(1)提取目标图像全局特征的流程:
将RGB三通道彩色图片转化成单通道灰度图进行计算,因为RGB除去颜色特征外其余的特征都是一样的,所以转化成单通道进行计算简化了计算量;
采用插值算法缩小图片尺寸,缩小尺寸以方便后边的步骤计算;
计算图片的DCT变换,得到32*32的DCT系数矩阵;
缩小DCT系数矩阵,只保留左上角的8*8的矩阵,这部分主要是图片中的最低频率;
计算DCT的平均值;
计算hash值,根据8*8的DCT矩阵,大于等于DCT均值的设为1,小于DCT均值的设为0,对DCT矩阵进行二值化,组合在一起,就构成了一个64位的0/1字符串,这就是这张图片的指纹信息;
(2)实时索引计算流程:
基于分组的思想,采用内存换速度的方式,将位的hash code值分位八组,每组八位;
建立八个dict,每个dict代表一组,以每组的值作为key,value是一个list,存放key相同的hash值;
查找时,把hash值分成八个,分别在八个map里边查找,如果有key相同的,取出key相同的所有hash值,进行线性遍历操作查询;
对当前图片库中的每张图片生成hash code存入数据库,形成索引库,这个索引库会作为初始索引库,对后续线上请求的图片生成hashcode并与索引库进行比对,最后根据比对结果返回检索图片结果。
通过对目标图像的全局特征进行提取,并在此基础上基于分组算法进行相似图片的查询与比对,能够在保证准确率和召回率的同时,有效提高计算效率。并且,可以根据当前图片数据库的图像更新,实现动态增删索引,进一步提高检索准确率。
作为本发明实施例的另一个方面,本发明实施例根据上述各实施例提供一种基于图片内容的图像检索装置,该装置用于在上述各实施例中实现基于图片内容的图像检索。因此,在上述各实施例的基于图片内容的图像检索方法中的描述和定义,可以用于本发明实施例中各个执行模块的理解,具体可参考上述实施例,此处不在赘述。
根据本发明实施例的一个实施例,基于图片内容的图像检索装置的结构如图3所示,为本发明实施例提供的译员基因的选取装置的结构示意图,该装置可以用于实现上述各方法实施例中基于图片内容的图像检索,该装置包括:指纹信息提取模块301、分组模块302和检索输出模块303。其中:
指纹信息提取模块301用于对目标图像依次进行DCT变换计算和二值化处理,获取目标图像全局特征的多数位字符串指纹信息;分组模块302用于对指纹信息进行哈希编码,并将指纹信息中的哈希编码值按位进行分组;检索输出模块303用于将每一分组按指纹信息值与哈希编码值按key-value形式进行表示,并基于每一key值对应的value值中的多个哈希编码值,分别到预建立的不同map中进行查找,获取检索结果。
具体而言,本发明实施例的装置利用指纹信息提取模块301进行目标图像的全局特征的提取。即,由指纹信息提取模块301先对目标图像进行DCT变换计算,提取目标图像在所有频率下的特征,再根据DCT变换计算的结果,对提取的特征进行二值化处理,最终由指纹信息提取模块301得到一个固定位数的0/1字符串,这就是这张目标图像的指纹信息。
之后,分组模块302采用分组式计算的索引查找算法。具体而言,分组模块302首先对于包含目标图像的全局特性的指纹信息进行哈希编码,得到对应的哈希编码值。之后,分组模块302将上述多数位字符串形式的指纹信息中的位的哈希编码值按位进行分组,每个分组具有相同的位数。
最后,对于上述各分组,在进行哈希数据存储时,检索输出模块303以各分组指纹信息值作为key值,并以该分组对应的哈希编码值确定该分组的value值,构成key-value数据格式,其中每个key值对应的value值中包含多个哈希编码值。则在进行检索时,对于每个分组,检索输出模块303基于该分组的多个哈希编码值,在对应的多个map中查询是否存在相同的key值,并根据查询结果输出最终检索结果。
本发明实施例提供的基于图片内容的图像检索装置,通过设置相应的执行模块,对目标图像的全局特征进行提取,并基于该全局特征,采用哈希算法与分组式计算相结合进行索引查找,能够在保证准确率和召回率的同时,有效降低计算时间,提高计算效率。
可以理解的是,本发明实施例中可以通过硬件处理器(hardwareprocessor)来实现上述各实施例的装置中的各相关程序模块。并且,本发明实施例的基于图片内容的图像检索装置利用上述各程序模块,能够实现上述各方法实施例的基于图片内容的图像检索流程,在用于实现上述各方法实施例中基于图片内容的图像检索时,本发明实施例的装置产生的有益效果与对应的上述各方法实施例相同,可以参考上述各方法实施例,此处不再赘述。
作为本发明实施例的又一个方面,本实施例根据上述各实施例提供一种电子设备,参考图4,为本发明实施例提供的电子设备的实体结构示意图,包括:至少一个存储器401、至少一个处理器402、通信接口403和总线404。
其中,存储器401、处理器402和通信接口403通过总线404完成相互间的通信,通信接口403用于该电子设备与图片数据库设备之间的信息传输;存储器401中存储有可在处理器402上运行的计算机程序,处理器402执行该计算机程序时,实现如上述各实施例所述的基于图片内容的图像检索方法。
可以理解为,该电子设备中至少包含存储器401、处理器402、通信接口403和总线404,且存储器401、处理器402和通信接口403通过总线404形成相互间的通信连接,并可完成相互间的通信,如处理器402从存储器401中读取基于图片内容的图像检索方法的程序指令等。另外,通信接口403还可以实现该电子设备与图片数据库设备之间的通信连接,并可完成相互间信息传输,如通过通信接口403实现对基于图片内容的图像检索等。
电子设备运行时,处理器402调用存储器401中的程序指令,以执行上述各方法实施例所提供的方法,例如包括:对目标图像依次进行DCT变换计算和二值化处理,获取目标图像全局特征的多数位字符串指纹信息;对指纹信息进行哈希编码,并将指纹信息中的哈希编码值按位进行分组;将每一分组按指纹信息值与哈希编码值按key-value形式进行表示,并基于每一key值对应的value值中的多个哈希编码值,分别到预建立的不同map中进行查找,获取检索结果等。
上述的存储器401中的程序指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。或者,实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例还根据上述各实施例提供一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储计算机指令,该计算机指令使计算机执行如上述各实施例所述的基于图片内容的图像检索方法,例如包括:对目标图像依次进行DCT变换计算和二值化处理,获取目标图像全局特征的多数位字符串指纹信息;对指纹信息进行哈希编码,并将指纹信息中的哈希编码值按位进行分组;将每一分组按指纹信息值与哈希编码值按key-value形式进行表示,并基于每一key值对应的value值中的多个哈希编码值,分别到预建立的不同map中进行查找,获取检索结果等。
本发明实施例提供的电子设备和非暂态计算机可读存储介质,通过执行上述各实施例所述的译员基因的选取方法,对目标图像的全局特征进行提取,并基于该全局特征,采用哈希算法与分组式计算相结合进行索引查找,能够在保证准确率和召回率的同时,有效降低计算时间,提高计算效率。
可以理解的是,以上所描述的装置、电子设备及存储介质的实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,既可以位于一个地方,或者也可以分布到不同网络单元上。可以根据实际需要选择其中的部分或全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上实施方式的描述,本领域的技术人员可以清楚地了解,各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如U盘、移动硬盘、ROM、RAM、磁碟或者光盘等,包括若干指令,用以使得一台计算机设备(如个人计算机,服务器,或者网络设备等)执行上述各方法实施例或者方法实施例的某些部分所述的方法。
另外,本领域内的技术人员应当理解的是,在本发明实施例的申请文件中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本发明实施例的说明书中,说明了大量具体细节。然而应当理解的是,本发明实施例的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本发明实施例公开并帮助理解各个发明方面中的一个或多个,在上面对本发明实施例的示例性实施例的描述中,本发明实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。
然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明实施例要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明实施例的单独实施例。
最后应说明的是:以上实施例仅用以说明本发明实施例的技术方案,而非对其限制;尽管参照前述实施例对本发明实施例进行了详细的说明,本领域的技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例各实施例技术方案的精神和范围。

Claims (9)

1.一种基于图片内容的图像检索方法,其特征在于,包括:
对目标图像依次进行DCT变换计算和二值化处理,获取所述目标图像全局特征的多数位字符串指纹信息,以进行目标图像的全局特征的提取;
对所述指纹信息进行哈希编码,并将所述指纹信息中的哈希编码值按位进行分组;
将每一分组按指纹信息值与哈希编码值按key-value形式进行表示,并基于每一key值对应的value值中的多个哈希编码值,分别到预建立的不同map中进行查找,获取检索结果;
其中,所述对目标图像依次进行DCT变换计算和二值化处理,获取所述目标图像全局特征的多数位字符串指纹信息的步骤具体包括:
对所述目标图像进行DCT变换计算,获取所述目标图像的DCT系数矩阵,并基于所述DCT系数矩阵计算DCT平均值;
通过比较所述DCT系数矩阵中每个元素与所述DCT平均值的大小,对所述DCT系数矩阵进行二值化处理,获取所述目标图像的所述指纹信息。
2.根据权利要求1所述的方法,其特征在于,在所述获取所述目标图像的DCT系数矩阵的步骤之后,还包括:
缩小所述DCT系数矩阵,保留位于所述DCT系数矩阵中左上角处固定维度的DCT子矩阵;
相应的,所述通过比较所述DCT系数矩阵与所述DCT平均值的大小,对所述DCT系数矩阵进行二值化处理的步骤具体包括:
通过比较所述DCT子矩阵与所述DCT平均值的大小,对所述DCT子矩阵进行二值化处理。
3.根据权利要求1所述的方法,其特征在于,所述将每一分组按指纹信息值与哈希编码值按key-value形式进行表示的步骤具体包括:
按照所述分组的总数,建立对应数量的dict,并以各分组的指纹信息值作为对应dict的key值,每个dict的value值为一个list,用于存放相同key值的哈希编码值。
4.根据权利要求1所述的方法,其特征在于,在所述基于每一key值对应的value值中的多个哈希编码值,分别到预建立的不同map中进行查找的步骤之前,还包括:
对当前图片库中的每张历史图片生成哈希编码,并将各历史图片的哈希编码存入map数据库,构成索引库,所述map数据库中包含多个map。
5.根据权利要求4所述的方法,其特征在于,所述基于每一key值对应的value值中的多个哈希编码值,分别到预建立的不同map中进行查找,获取检索结果的步骤具体包括:
分别基于所述value值中的各哈希编码值,通过检索所述索引库,在不同的map中进行查找,选取key值相同的所有哈希编码值;
遍历选取的每个哈希编码值,计算该哈希编码值与所述目标图像的哈希编码值间的汉明距离,并基于所述汉明距离,判断当前图片库中是否存在与所述目标图像重复的历史图片;
其中,选取的每个哈希编码值分别对应所述当前图片库中的一个历史图片。
6.根据权利要求1所述的方法,其特征在于,在所述对所述目标图像进行DCT变换计算的步骤之前,还包括:
检查所述目标图像是否能够正常解码;
和/或,对于所述目标图像为RGB三通道彩色图片的,将所述RGB三通道彩色图片转化成单通道灰度图;
和/或,采用插值算法,缩小所述目标图像的尺寸。
7.一种基于图片内容的图像检索装置,其特征在于,包括:
指纹信息提取模块,用于对目标图像依次进行DCT变换计算和二值化处理,获取所述目标图像全局特征的多数位字符串指纹信息,以进行目标图像的全局特征的提取;
分组模块,用于对所述指纹信息进行哈希编码,并将所述指纹信息中的哈希编码值按位进行分组;
检索输出模块,用于将每一分组按指纹信息值与哈希编码值按key-value形式进行表示,并基于每一key值对应的value值中的多个哈希编码值,分别到预建立的不同map中进行查找,获取检索结果;
其中,所述指纹信息提取模块,具体用于:
对所述目标图像进行DCT变换计算,获取所述目标图像的DCT系数矩阵,并基于所述DCT系数矩阵计算DCT平均值;
通过比较所述DCT系数矩阵中每个元素与所述DCT平均值的大小,对所述DCT系数矩阵进行二值化处理,获取所述目标图像的所述指纹信息。
8.一种电子设备,其特征在于,包括:至少一个存储器、至少一个处理器、通信接口和总线;
所述存储器、所述处理器和所述通信接口通过所述总线完成相互间的通信,所述通信接口还用于所述电子设备与图片数据库之间的信息传输;
所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1至6中任一所述的方法。
9.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求1至6中任一所述的方法。
CN201811644374.1A 2018-12-30 2018-12-30 基于图片内容的图像检索方法、装置与电子设备 Active CN111382298B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811644374.1A CN111382298B (zh) 2018-12-30 2018-12-30 基于图片内容的图像检索方法、装置与电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811644374.1A CN111382298B (zh) 2018-12-30 2018-12-30 基于图片内容的图像检索方法、装置与电子设备

Publications (2)

Publication Number Publication Date
CN111382298A CN111382298A (zh) 2020-07-07
CN111382298B true CN111382298B (zh) 2021-04-20

Family

ID=71222396

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811644374.1A Active CN111382298B (zh) 2018-12-30 2018-12-30 基于图片内容的图像检索方法、装置与电子设备

Country Status (1)

Country Link
CN (1) CN111382298B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113672761B (zh) * 2021-07-16 2023-07-25 北京奇艺世纪科技有限公司 视频处理方法及装置
CN115883873A (zh) * 2021-09-28 2023-03-31 山东云缦智能科技有限公司 一种基于视频基因的视频对比方法
CN113989530A (zh) * 2021-10-27 2022-01-28 广州致新电力科技有限公司 一种快速特征比对的方法及系统
CN115455218A (zh) * 2022-06-09 2022-12-09 中国公路工程咨询集团有限公司 公路图像分布式存储方法、搜索方法及装置
CN115357742B (zh) * 2022-08-02 2023-06-30 广州市玄武无线科技股份有限公司 门店图像查重方法、系统、终端设备及存储介质
CN116245706B (zh) * 2023-05-09 2023-07-14 深圳市乐升半导体有限公司 底图与png图的像素混合方法以及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6041439B2 (ja) * 2013-09-12 2016-12-07 Kddi株式会社 画像に基づくバイナリ特徴ベクトルを用いた画像検索装置、システム、プログラム及び方法
CN106599028A (zh) * 2016-11-02 2017-04-26 华南理工大学 一种基于视频图像处理的书本内容搜索匹配方法
CN108595710A (zh) * 2018-05-11 2018-09-28 杨晓春 一种快速的海量图片去重方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102521838B (zh) * 2011-12-19 2013-11-27 国家计算机网络与信息安全管理中心 一种图像匹配方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6041439B2 (ja) * 2013-09-12 2016-12-07 Kddi株式会社 画像に基づくバイナリ特徴ベクトルを用いた画像検索装置、システム、プログラム及び方法
CN106599028A (zh) * 2016-11-02 2017-04-26 华南理工大学 一种基于视频图像处理的书本内容搜索匹配方法
CN108595710A (zh) * 2018-05-11 2018-09-28 杨晓春 一种快速的海量图片去重方法

Also Published As

Publication number Publication date
CN111382298A (zh) 2020-07-07

Similar Documents

Publication Publication Date Title
CN111382298B (zh) 基于图片内容的图像检索方法、装置与电子设备
CN107256262B (zh) 一种基于物体检测的图像检索方法
JP5911578B2 (ja) 画像の特徴点位置情報を符号化する方法、コンピュータプログラム、モバイルデバイス
CN104036012B (zh) 字典学习、视觉词袋特征提取方法及检索系统
US20090289942A1 (en) Image learning, automatic annotation, retrieval method, and device
CN109697451B (zh) 相似图像聚类方法及装置、存储介质、电子设备
CN112380319B (zh) 一种模型训练的方法及相关装置
CN112417381B (zh) 应用于图像版权保护的快速定位侵权图像的方法及装置
CN112434553A (zh) 一种基于深度字典学习的视频鉴别方法及系统
CN110879967B (zh) 视频内容重复判断方法及装置
CN113094465A (zh) 一种设计产品查重方法和系统
CN108805280B (zh) 一种图像检索的方法和装置
CN110334628B (zh) 一种基于结构化随机森林的室外单目图像深度估计方法
CN110334290B (zh) 一种基于MF-Octree的时空数据快速检索方法
CN110110120B (zh) 一种基于深度学习的图像检索方法和装置
CN114973229A (zh) 文本识别模型训练、文本识别方法、装置、设备及介质
CN113157956B (zh) 图片搜索方法、系统、移动终端及存储介质
WO2019085765A1 (zh) 图像检索
CN111898544B (zh) 文字图像匹配方法、装置和设备及计算机存储介质
CN111506761B (zh) 一种相似图片查询方法、装置、系统及存储介质
CN108694411A (zh) 一种识别相似图像的方法
CN116975864A (zh) 恶意代码检测方法、装置、电子设备及存储介质
CN112632406A (zh) 查询方法、装置、电子设备及存储介质
CN117009968A (zh) 恶意代码的同源分析方法、装置、终端设备及存储介质
CN114580354B (zh) 基于同义词的信息编码方法、装置、设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20200909

Address after: 100085 Floor 102-1, Building No. 35, West Second Banner Road, Haidian District, Beijing

Applicant after: Seashell Housing (Beijing) Technology Co.,Ltd.

Address before: 300 457 days Unit 5, Room 1, 112, Room 1, Office Building C, Nangang Industrial Zone, Binhai New Area Economic and Technological Development Zone, Tianjin

Applicant before: BEIKE TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20210323

Address after: 101309 room 24, 62 Farm Road, Erjie village, Yangzhen, Shunyi District, Beijing

Applicant after: Beijing fangjianghu Technology Co.,Ltd.

Address before: 100085 Floor 101 102-1, No. 35 Building, No. 2 Hospital, Xierqi West Road, Haidian District, Beijing

Applicant before: Seashell Housing (Beijing) Technology Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant