CN105260739B - 面向二进制特征的图像匹配方法及其系统 - Google Patents

面向二进制特征的图像匹配方法及其系统 Download PDF

Info

Publication number
CN105260739B
CN105260739B CN201510603903.3A CN201510603903A CN105260739B CN 105260739 B CN105260739 B CN 105260739B CN 201510603903 A CN201510603903 A CN 201510603903A CN 105260739 B CN105260739 B CN 105260739B
Authority
CN
China
Prior art keywords
picture
binary
matching
characteristic point
detected
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
CN201510603903.3A
Other languages
English (en)
Other versions
CN105260739A (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.)
National Computer Network Emergency Response Technical Team Coordination Centre
Institute of Computing Technology of CAS
Original Assignee
National Computer Network Emergency Response Technical Team Coordination Centre
Institute of Computing Technology of CAS
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 National Computer Network Emergency Response Technical Team Coordination Centre, Institute of Computing Technology of CAS filed Critical National Computer Network Emergency Response Technical Team Coordination Centre
Priority to CN201510603903.3A priority Critical patent/CN105260739B/zh
Publication of CN105260739A publication Critical patent/CN105260739A/zh
Application granted granted Critical
Publication of CN105260739B publication Critical patent/CN105260739B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures

Abstract

本发明适用于图像检索技术领域,提供了一种面向二进制特征的图像匹配方法及其系统,所述方法包括:特征提取步骤:提取待检测的图片的多个特征点的信息以及多个所述特征点的第一二进制描述子;第一匹配步骤:将多个所述第一二进制描述子与预设的图片库中的所有图片的第二二进制描述子进行比较,找出与多个所述第一二进制描述子匹配数最多的第二二进制描述子所对应的第一图片;第二匹配步骤:将所述待检测的图片和所述第一图片进行特征点的信息的匹配,获得所述待检测图片的匹配结果信息。由此,本发明提高了图像匹配的准确性及速度。

Description

面向二进制特征的图像匹配方法及其系统
技术领域
本发明涉及图像检索技术领域,尤其涉及一种面向二进制特征的图像匹配方法及其系统。
背景技术
互联网图像视觉信息的迅速增长,给信息的组织与管理带来了巨大挑战,对海量图像进行内容分析与检测的需求越来越大,基于内容的图像检索技术应运而生。基于内容的图像检索技术主要分为两个部分,第一部分主要是图像特征的提取,包括特征点的位置,特征点的主方向以及特征点的描述子。第二部分主要是图片匹配技术,包括图片特征索引以及相应的匹配规则,由于图片特征库往往是巨大的海量数据,因此需要高效、稳定的索引技术配合合理的匹配规则,才能满足实时海量数据的检索需求。
现有的主流的图像匹配方法主要是用到了BOW(bag of word,词袋模型)以及倒排索引技术,配合(Hamming_Embedding,海明嵌入)等匹配规则,达到海量图片匹配检索的目的。然后,在词袋模型中,首先需要训练视觉单词中心,再把特征描述子分配到距离最近的视觉中心,这个过程中视觉中心的个数难以确定,如果个数太多,需要巨大的计算量,往往需要GPU协助,如果太小,则检索效果不好,同时分配特征描述子的过程也是计算密集型的过程。另外一方面,词袋模型以及海明嵌入的规则往往只应用于实数特征描述子(即每个描述子分量是个实数),不能满足实时监控领域的图像检索需求。
综上可知,现有的图像匹配技术在实际使用上,显然存在不便与缺陷,所以有必要加以改进。
发明内容
针对上述的缺陷,本发明的目的在于提供一种面向二进制特征的图像匹配方法及其系统,以提高图像匹配的准确性及速度。
为了实现上述目的,本发明提供一种面向二进制特征的图像匹配方法,所述方法包括:
特征提取步骤:提取待检测的图片的多个特征点的信息以及多个所述特征点的第一二进制描述子;
第一匹配步骤:将多个所述第一二进制描述子与预设的图片库中的所有图片的第二二进制描述子进行比较,找出与多个所述第一二进制描述子匹配数最多的第二二进制描述子所对应的第一图片;
第二匹配步骤:将所述待检测的图片和所述第一图片进行特征点的信息的匹配,获得所述待检测图片的匹配结果信息。
根据所述的图像匹配方法,所述特征点的信息包括:所述特征点的特征点主方向、特征点位置和特征点覆盖面积;
所述特征提取步骤包括:提取所述待检测的图片的多个特征点的特征点主方向、特征点位置以及所述特征点的第一二进制描述子;
在所述第一匹配步骤之前包括:
二进制索引建立步骤:建立所述图片库的二进制索引,所述二进制索引包括由多个第二二进制描述子组成的二进制特征空间和每个所述第二二进制描述子所在图片的图片序号。
根据所述的图像匹配方法所述第一匹配步骤包括:
分别将每个所述第一二进制描述子在所述二进制特征空间中与所述第二二进制描述子进行匹配;
选择包括与多个所述第一二进制描述子匹配数最多的所述第二二进制描述子的所述第一图片,若所述匹配数大于预设的第一阈值,则记录匹配的多个所述第一二进制描述子和第二二进制描述子所对应的特征点对,并执行所述第二匹配步骤,否则所述第一匹配步骤失败。
根据所述的图像匹配方法所述第二匹配步骤包括:
特征点方向匹配步骤:分别计算匹配的多个所述特征点对的特征点的主方向变化率;若两者的所述主方向变化率小于预设的第二阈值,则执行特征点位置匹配步骤,否则所述第一图片不是与所述待检测的图片匹配的图片;
特征点位置匹配步骤:通过分别计算匹配的多个所述特征点对之间的透视变化矩阵以计算多个所述特征点对的内点比率,若所述内点比率大于预设的第三阈值,则执行特征点覆盖面积匹配步骤,否则所述第一图片不是与所述待检测的图片匹配的图片;
特征点覆盖面积匹配步骤:计算多个所述特征点对中所述待检测图片中的特征点的特征点覆盖面积,若所述覆盖面积大于预设的第四阈值,则第一图片是与所述待检测的图片匹配的图片,否则所述第一图片不是与所述待检测的图片匹配的图片。
根据所述的图像匹配方法所述特征提取步骤还包括:将所述第一二进制描述子进行精简;
所述二进制索引建立步骤还包括:将所述图片库的二进制索引中的第二二进制描述子进行精简。
为了实现本发明的另一发明目的,本发明还提供了一种面向二进制特征的图像匹配系统,所述系统包括:
特征提取模块,用于提取待检测的图片的多个特征点的信息以及多个所述特征点的第一二进制描述子;
第一匹配模块,用于将多个所述第一二进制描述子与预设的图片库中的所有图片的第二二进制描述子进行比较,找出与多个所述第一二进制描述子匹配数最多的第二二进制描述子所对应的第一图片;
第二匹配模块,用于将所述待检测的图片和所述第一图片进行特征点的信息的匹配,获得所述待检测图片的匹配结果信息。
根据所述的图像匹配系统,所述特征点的信息包括:所述特征点的特征点主方向、特征点位置和特征点覆盖面积;
所述特征提取模块提取所述待检测的图片的多个特征点的特征点主方向、特征点位置以及所述特征点的第一二进制描述子;
所述系统还包括:
二进制索引建立模块,用于建立所述图片库的二进制索引,所述二进制索引包括由多个第二二进制描述子组成的二进制特征空间和每个所述第二二进制描述子所在图片的图片序号。
根据所述的图像匹配系统,所述第一匹配模块包括:
第一匹配子模块,用于分别将每个所述第一二进制描述子在所述二进制特征空间中与所述第二二进制描述子进行匹配;
第一选择子模块,用于选择包括与多个所述第一二进制描述子匹配数最多的所述第二二进制描述子的所述第一图片,若所述匹配数大于预设的第一阈值,则记录匹配的多个所述第一二进制描述子和第二二进制描述子所对应的特征点对,并执行所述第二匹配模块的匹配操作,否则所述第一匹配模块的匹配操作失败。
根据所述的图像匹配系统,所述第二匹配模块包括:
特征点方向匹配子模块,用于分别计算匹配的多个所述特征点对的特征点的主方向变化率;若两者的所述主方向变化率小于预设的第二阈值,则执行特征点位置匹配模块的匹配操作,否则所述第一图片不是与所述待检测的图片匹配的图片;
特征点位置匹配子模块,用于通过分别计算匹配的多个所述特征点对之间的透视变化矩阵以计算多个所述特征点对的内点比率,若所述内点比率大于预设的第三阈值,则执行特征点覆盖面积匹配模块的匹配操作,否则所述第一图片不是与所述待检测的图片匹配的图片;
特征点覆盖面积匹配子模块,用于计算多个所述特征点对中所述待检测图片中的特征点的特征点覆盖面积,若所述覆盖面积大于预设的第四阈值,则第一图片是与所述待检测的图片匹配的图片,否则所述第一图片不是与所述待检测的图片匹配的图片。
根据所述的图像匹配系统,所述特征提取模块将所述第一二进制描述子进行精简;
所述二进制索引建立模块将所述图片库的二进制索引中的第二二进制描述子进行精简。
本发明通过提取待检测的图片的多个特征点的信息以及多个所述特征点的第一二进制描述子;然后,将多个所述第一二进制描述子与预设的图片库中的所有图片的第二二进制描述子进行比较,找出与多个所述第一二进制描述子匹配数最多的第二二进制描述子所对应的第一图片;最后,将所述待检测的图片和所述第一图片进行特征点的信息的匹配,获得所述待检测图片的匹配结果信息,由此,提高了图片匹配的效率及准确性能。具体的,在本发明中,创新的引入了四个匹配准则,依次通过待检测图片与图片库中的二进制描述子个数匹配、特征点主方向匹配、特征点位置匹配、以及特征点覆盖面积匹配,实现在保证速度以及召回率的同时,保证了极高的匹配精度。在现在主流的CPU(酷睿i74770)平台上,检索索引能覆盖一百万的图片所包含的特征库,内存仅需占用2GB,单核单线程每秒能检索500张图片,速度极快。在精度保证99%的情况下,召回率保证在85%以上,因此,本发明的技术方案极其适合应用在对速度要求高的嵌入式平台以及实时监控平台上。
附图说明
图1是本发明实施例提供的面向二进制特征的图像匹配系统的组成示意图;
图2是本发明实施例提供的面向二进制特征的图像匹配系统的组成示意图;
图3是本发明实施例提供的二进制倒排索引的示意图;
图4A是本发明实施例提供的二进制描述子匹配规则示意图;
图4B是本发明实施例提供的二进制描述子匹配规则示意图;
图5A是本发明实施例提供的特征点主方向匹配规则示意图;
图5B是本发明实施例提供的特征点主方向匹配规则示意图;
图5C是本发明实施例提供的特征点主方向匹配规则示意图;
图6A是本发明实施例提供的特征点位置匹配规则示意图;
图6B是本发明实施例提供的特征点位置匹配规则示意图;
图7是本发明实施例提供的特征点覆盖面积规则的示意图;
图8是本发明实施例提供的面向二进制特征的图像匹配方法的流程图;
图9是本发明实施例提供的面向二进制特征的图像匹配方法的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参见图1,在本发明的第一实施例中,提供了一种面向二进制特征的图像匹配系统100,包括:
特征提取模块10,用于提取待检测的图片的多个特征点的信息以及多个所述特征点的第一二进制描述子;
第一匹配模块20,用于将多个所述第一二进制描述子与预设的图片库中的所有图片的第二二进制描述子进行比较,找出与多个所述第一二进制描述子匹配数最多的第二二进制描述子所对应的第一图片;
第二匹配模块30,用于将所述待检测的图片和所述第一图片进行特征点的信息的匹配,获得所述待检测图片的匹配结果信息。
在该实施例中,首先提取待检测图片的特征。具体的,可以通过特征提取模块10提取待检测的图片的多个特征点的信息以及多个所述特征点的第一二进制描述子。优选的,所述特征点的信息包括:所述特征点的特征点主方向、特征点位置和特征点覆盖面积。然后,需要第一匹配模块20对待检测图片的特征与后台图片库中的特征分别进行匹配。第一匹配模块20首先匹配二进制描述子个数,第一匹配模块20将多个所述第一二进制描述子与预设的图片库中的所有图片的第二二进制描述子进行比较,找出与多个所述第一二进制描述子匹配数最多的第二二进制描述子所对应的第一图片。最后,第二匹配模块30匹配特征点的信息。第二匹配模块30将所述待检测的图片和所述第一图片进行特征点的信息的匹配,若两者的所述特征点的信息匹配成功后,则所述第一图片为与所述待检测的图片匹配的图片;若两者的所述特征点的信息匹配失败后,则所述第一图片不是与所述待检测的图片匹配的图片。即在该实施例中,待检测图片的特征与后台图片库中的特征分别进行二进制描述子个数匹配及特征点的信息的匹配,如果匹配都通过,则表示匹配成功,否则表示失败。
参见图2,在本发明的第二实施例中,特征提取模块10提取所述待检测的图片的多个特征点的特征点主方向、特征点位置以及所述特征点的第一二进制描述子;面向二进制特征的图像匹配系统100还包括:
二进制索引建立模块40,用于建立所述图片库的二进制索引,所述二进制索引包括由多个第二二进制描述子组成的二进制特征空间和每个所述第二二进制描述子所在图片的图片序号。并且,在第一二进制描述子长度比较长时,可以通过特征提取模块10将所述第一二进制描述子进行精简;另一方面,二进制索引建立模块40将所述图片库的二进制索引中的第二二进制描述子进行精简,便于待检测图片的检索。
在该实施例中,特征提取模块10提取待检测的图片的多个特征点的特征点主方向、特征点位置以及所述特征点的第一二进制描述子。并且,在检索前需要由二进制索引建立模块40预先建立图片库及其二进制索引。如图3所示,该二进制索引包括由多个第二二进制描述子组成的二进制特征空间和每个所述第二二进制描述子所在图片的图片序号。
具体的,图片库构成了所述二进制索引。然后借助此二进制索引,比较待检测图片的第一二进制描述子与图片库中所有图片的特征点的第二二进制描述子。此二进制倒排索引如图3所示。左边表示二进制的视觉单词中心,也可以理解为二进制特征。假设对第二二进制描述子进行精简后的描述子长度为N,由于描述子是二进制的01串,则第二二进制描述子的二进制特征空间大小为2N,即由全0构成的特征到全1构成的特征。在一个实施方式中,精简后的第二二进制描述子的长度为20,则特征空间的大小为220,第二个第二二进制特征由20个0构成,最后一个第二二进制特征由20个1构成。每个第二二进制特征后面接图片库中包含有此特征的图片序号。在一个实施例中,全0构成的二进制特征被图片序号为000110、000123、000159的图片所拥有,全1构成的二进制特征被图片序号为000110的图片所拥有,从图3中也可以看出,图片序号为000110的图片拥有全0构成的二进制特征,全1构成的二进制特征以及11111111111111111101的二进制特征。这样在检索匹配之前先建立起图片库的二进制倒排索引,加速后续匹配操作。
参见图2,在本发明的第三实施例中,第一匹配模块20包括:
第一匹配子模块21,用于分别将每个所述第一二进制描述子在所述二进制特征空间中与所述第二二进制描述子进行匹配;
第一选择子模块22,用于选择包括与多个所述第一二进制描述子匹配数最多的所述第二二进制描述子的所述第一图片,若所述匹配数大于预设的第一阈值,则记录匹配的多个所述第一二进制描述子和第二二进制描述子所对应的特征点对,并执行所述第二匹配模块30的匹配操作,否则所述第一匹配模块20的匹配操作失败。
在该实施例中,特征提取模块10提取的待检测图片的第一二进制描述子与图片库中所有图片的第二二进制描述子进行比较,找出匹配最多的图片,如果对应的匹配数大于第一阈值,则记录所匹配的特征对,然后进入特征点的信息匹配。否则表示匹配失败。如图4A所示,假设待检测图片的描述子仅包含这三种特征:全0构成的特征(假设为A)、全1构成的特征(假设为B)以及除倒数第二位为0其他都为1(假设为C)的特征。首先,开辟一个数组score,长度为图片库图片的数量,并全部置零。这里假设图片库的图片序号连续,即图片库有100万张图片,最大的图片序号即为100万。然后,在二进制索引中,在左边中找到A特征,A特征后面接的所有图片,在score中递增1。例如,这里A特征包含000110、000123、000159三张图片,即在score数组中,第110、第123、第159的位置上递增1。接着在索引中找到B特征,B特征中包含图片000110、000432、000123、000268四张图片,在score数组中,第110、第432、第123、第268的位置上递增1。C特征同理。最后可以得到一个score数组,如图4B所示,这个score数组可以理解为待检测图片的第一二进制描述子与图片库中图片的第二二进制描述子的相似度,数值越高表示相似度越高,在本实施例中,000110的图片与待检测图片相似度最高,得分3的具体含义为两者拥有相同描述子的数量。如果得分大于某个阈值,在一个实施方式中,选取的第一阈值是10,即如果待检测图片与图片库中的图片有至少10个描述子是相同的,则认为其通过这一级的匹配进入下一级的特征点的信息的匹配,并记录匹配的特征点之间的匹配关系,方便后续使用。如果最大的得分小于阈值,则认为匹配失败,程序直接返回结果。
在本发明的第四实施例中,第二匹配模块30包括:
特征点方向匹配子模块31,用于分别计算匹配的多个所述特征点对的特征点的主方向变化率;若两者的所述主方向变化率小于预设的第二阈值,则执行特征点位置匹配模块的匹配操作,否则所述第一图片不是与所述待检测的图片匹配的图片;
特征点位置匹配子模块32,用于通过分别计算匹配的多个所述特征点对之间的透视变化矩阵以计算多个所述特征点对的内点比率,若所述内点比率大于预设的第三阈值,则执行特征点覆盖面积匹配模块的匹配操作,否则所述第一图片不是与所述待检测的图片匹配的图片;
特征点覆盖面积匹配子模块33,用于计算多个所述特征点对中所述待检测图片中的特征点的特征点覆盖面积,若所述覆盖面积大于预设的第四阈值,则第一图片是与所述待检测的图片匹配的图片,否则所述第一图片不是与所述待检测的图片匹配的图片。
在该实施例中,特征点方向匹配子模块31利用第一匹配模块20记录的匹配的特征点,计算其主方向变化率,如果小于第二阈值,则进入步骤104,否则认为匹配失败,程序直接返回结果。在一个实施例中,假设待检测图片特征点的主方向为θai,图片库中图片的主方向为θbi,如图5A,5B所示,θa1与θb1相匹配,θa2与θb2相匹配,依次类推,这些匹配信息是特征点方向匹配子模块31最后记录的。同时采用var(data)表示一组数(data)的方差,则主方向变化率c定义如下:
c=var(θbiai),其中i为匹配对数
假设待检测图片为图5A,图片库中的图片为图5B,主方向如图中箭头所示,按照上式定义的结果计算,主方向变化率c是个比较小的值。如果图片库中的图片为5C,即图5B旋转90度后获得,按照上式定义计算,由于计算的是两张图片主方向之差的方差,所以θbiai计算结果基本稳定在90度,变化率会比较小,因此主方向变化率c亦是个比较小的值。综上所述,特征点方向匹配子模块31对图片的旋转鲁棒,可以有效的应对任意角度的旋转。如果c值小于第二阈值,则表示两张图片主方向相似,认为通过这一级的匹配,进入下一级的匹配,否则表示匹配失败,程序直接返回结果。
特征点位置匹配子模块32通过计算匹配特征点集之间的透视变化矩阵从而计算内点比率,如果内点比率大于第三阈值,则进入特征点覆盖面积匹配,否则表示匹配失败,程序直接返回结果。匹配点对依然用到了第一匹配模块20最后记录的匹配点对信息。假设待检测图片中的特征点坐标为(xi,yi),i为匹配对数,设此点集为X,图片库中图片的特征点坐标为(si,ti),i为匹配对数,设此点集为S,特征点位置匹配子模块32首先计算点集S和点集X之间的透视变化矩阵H:
同时保证误差最小:
依据平面透视变化理论,如果匹配对数小于等于4对,则H矩阵是唯一确定的,误差为0。如果匹配点数大于4对,且有外点,类似最小二乘法,则能找到一个矩阵H,使误差达到最小。具体做法如下:
假设匹配对数为N,随机选出4对,一共有种选法。每种算法计算一个透视变化矩阵H,然后应用到所有的N对匹配中,计算误差。遍历所有种选法,选取误差最小的那个变化矩阵,作为最终的透视变化矩阵。
有了透视变化矩阵H后,即可以把X点集映射到X′点集。如果两张图片确实是匹配图片,则X′点集与S点集之间的误差是很小的。如图6A和图6B所示,图6A的黑色点表示X点集,图6B的灰色点表示通过透视变换矩阵映射后成的X′点集,由于左右两张图片确实是相似的匹配图片,所以灰色X′点集与S点集之间的误差是很小的。在一个实施例中,假设当灰色点与白色点之间的距离小于10像素时,认为灰色点变换之前的黑色点是一个内点。这样可以计算所有匹配点的内点个数从而计算内点比率,在一个实施例中,当比率大于第三阈值,如67%时,则认为待检测图片通过这一级的匹配,进入下一级的特征点覆盖面积匹配,否则返回匹配失败。这里有一点值得注意,即使两张图片不是匹配图片,他们特征点之间的透视变换矩阵也可以找到的,也就是X点集亦可以映射到X′点集,只是X′点集与S点集之间的误差是很大的,从而导致内点个数大大减少。
特征点覆盖面积匹配子模块33依然使用第一匹配模块20记录的匹配点对,只不过只计算待检测图片的特征点覆盖面积,如果覆盖面积大于第四阈值,例如70%,则表示匹配成功,否则失败。如图7所示中框线所示,黑色的特征点都在方框线内;表示特征点覆盖面积匹配子模块33的匹配操作主要是为了去除一些文字以及图案边界的错误匹配。
在上述多个实施例中,面向二进制特征的图像匹配系统100的多个模块可以是软件单元,硬件单元或软硬件结合单元。
参见图8,在本发明的第五实施例中,提供了一种面向二进制特征的图像匹配方法,所述方法包括:
步骤S801中,提取待检测的图片的多个特征点的信息以及多个所述特征点的第一二进制描述子;该步骤为特征提取步骤,由特征提取模块10实现;
步骤S802中,将多个所述第一二进制描述子与预设的图片库中的所有图片的第二二进制描述子进行比较,找出与多个所述第一二进制描述子匹配数最多的第二二进制描述子所对应的第一图片;该步骤为第一匹配步骤,该步骤由第一匹配模块20实现;
步骤S803中,将所述待检测的图片和所述第一图片进行特征点的信息的匹配,获得所述待检测图片的匹配结果信息。该步骤为第二匹配步骤,由第二匹配模块30实现。
在该实施例中,首先,提取待检测图片的特征。优选的,特征点的信息包括:所述特征点的特征点主方向、特征点位置和特征点覆盖面积。接着,待检测图片的特征与后台图片库中的特征分别进行匹配。如包括二进制描述子个数匹配,特征点主方向匹配,特征点位置匹配以及特征点覆盖面积匹配。第二匹配模块30将所述待检测的图片和所述第一图片进行特征点的信息的匹配,若两者的所述特征点的信息匹配成功后,则所述第一图片为与所述待检测的图片匹配的图片;若两者的所述特征点的信息匹配失败后,则所述第一图片不是与所述待检测的图片匹配的图片。即如果四级匹配都通过,则表示匹配成功,否则表示失败。而所述特征提取步骤包括:特征提取模块10提取所述待检测的图片的多个特征点的特征点主方向、特征点位置以及所述特征点的第一二进制描述子;在所述第一匹配步骤之前包括:二进制索引建立步骤:二进制索引建立模块40建立所述图片库的二进制索引,所述二进制索引包括由多个第二二进制描述子组成的二进制特征空间和每个所述第二二进制描述子所在图片的图片序号。
为了实现面向二进制特征的图像匹配,需要建立图片库,如图3所示,该图片库的检索索引采用了二进制视觉中心,视觉中心个数可以根据平台的计算能力动态调整,同时省略了分配特征二进制描述子的过程,保证了极快的计算速度以及高检索召回率。此二进制倒排索引如图3所示。左边表示二进制的视觉单词中心,也可以理解为二进制特征。假设对第二二进制描述子进行精简后的描述子长度为N,由于描述子是二进制的01串,则第二二进制描述子的二进制特征空间大小为2N,即由全0构成的特征到全1构成的特征。在一个实施方式中,精简后的第二二进制描述子的长度为20,则特征空间的大小为220,第二个第二二进制特征由20个0构成,最后一个第二二进制特征由20个1构成。每个第二二进制特征后面接图片库中包含有此特征的图片序号。
在本发明的第七实施例中,所述第一匹配步骤包括:
第一匹配子模块21分别将每个所述第一二进制描述子在所述二进制特征空间中与所述第二二进制描述子进行匹配;
第一选择子模块22选择包括与多个所述第一二进制描述子匹配数最多的所述第二二进制描述子的所述第一图片,若所述匹配数大于预设的第一阈值,则记录匹配的多个所述第一二进制描述子和第二二进制描述子所对应的特征点对,并执行所述第二匹配步骤,否则所述第一匹配步骤失败。
在该实施例中,特征提取模块10提取的待检测图片的第一二进制描述子与图片库中所有图片的第二二进制描述子进行比较,找出匹配最多的图片,如果对应的匹配数大于第一阈值,则记录所匹配的特征对,留待后级匹配使用。然后进入特征点的信息匹配。否则表示匹配失败。
在本发明的第八实施例中,所述第二匹配步骤包括:
特征点方向匹配步骤:特征点方向匹配子模块31分别计算匹配的多个所述特征点对的特征点的主方向变化率;若两者的所述主方向变化率小于预设的第二阈值,则执行特征点位置匹配步骤,否则所述第一图片不是与所述待检测的图片匹配的图片;
特征点位置匹配步骤,特征点位置匹配子模块32通过分别计算匹配的多个所述特征点对之间的透视变化矩阵以计算多个所述特征点对的内点比率,若所述内点比率大于预设的第三阈值,则执行特征点覆盖面积匹配步骤,否则所述第一图片不是与所述待检测的图片匹配的图片;
特征点覆盖面积匹配步骤,特征点覆盖面积匹配子模块33计算多个所述特征点对中所述待检测图片中的特征点的特征点覆盖面积,若所述覆盖面积大于预设的第四阈值,则第一图片是与所述待检测的图片匹配的图片,否则所述第一图片不是与所述待检测的图片匹配的图片。
在该实施例中,提供了一种面向二进制特征的图像匹配方法,具体的匹配过程包括:二进制描述子个数匹配、特征点主方向匹配、特征点位置匹配、5、特征点覆盖面积匹配。而预先的,若第一二进制描述子长度太长可以进行精简;图片库中的图片的第二二进制描述子也进行精简。由于通过了,四级匹配,包括二进制描述子个数匹配,特征点主方向匹配,特征点位置匹配以及特征点覆盖面积匹配,在保证召回率的情况下能有效提高匹配的准确度。经过实际数据测试,通过第一级描述子个数匹配的召回率达到98%,准确率在30%,通过第二级特征点主方向匹配的召回率达到95%,准确率在70%,通过第三级特征点位置匹配的召回率达到90%,准确率在95%,最后第四级特征点覆盖面积匹配召回率保持在85%,准确率在99%以上,同时速度保持在每秒单核单线程500张图片(除去提取特征时间),如果包括主流二进制特征提取的时间,速度大约在60张图片。
参见图9,在本发明的第九实施例中提供了面向二进制特征的图像匹配方法,所述方法流程描述如下:
在步骤S901中,首先提取待检测图片的特征,包括特征点的位置、特征点的主方向以及特征点的二进制描述子,以供后续操作使用。当然,图片库中的图片也需要以相同的算法提取相同的特征信息并将一部分信息载入内存方便后续比较。如果提取的二进制描述子长度较长,为了防止后续的二进制索引的特征空间过大,需要进行描述子精简,将精简后的描述子作为此特征点的描述子。这样在检索匹配之前先建立起图片库的二进制倒排索引,加速后续匹配操作。
在步骤S902(二进制描述子个数匹配)中,将步骤S901中提取的待检测图片的描述子与图片库中所有图片的描述子进行比较,找出匹配最多的图片,如果对应的匹配数大于阈值,则记录所匹配的特征对,然后进入步骤S903,否则表示匹配失败。
在步骤S903(特征点主方向匹配)中,利用步骤S902中记录的匹配的特征点,计算其主方向变化率,如果小于阈值,则进入步骤S904,否则认为匹配失败,程序直接返回结果。
在步骤S904(特征点位置匹配)中,通过计算匹配特征点集之间的透视变化矩阵从而计算内点比率,如果内点比率大于阈值,则进入步骤S905,否则表示匹配失败,程序直接返回结果。匹配点对依然用到了步骤S902最后记录的匹配点对信息。
在步骤S905(特征点覆盖面积)中,依然使用步骤S902记录的匹配点对,只不过只计算待检测图片的特征点覆盖面积,如果覆盖面积大于阈值,则表示匹配成功,否则失败。这个步骤主要是为了去除一些文字以及图案边界的错误匹配。
在本发明的又一个实施例中,还提供了一种面向二进制特征的图像匹配系统。系统分为五个模块,索引加载模块、特征点描述子个数匹配模块、特征点主方向匹配模块、特征点位置匹配模块、特征点覆盖面积匹配模块。索引加载模块的工作时从磁盘加载图片库的信息,生成二进制索引,并常驻内存,方便后续匹配使用。特征点描述子个数匹配模块、特征点主方向匹配模块、特征点位置匹配模块、特征点覆盖面积匹配模块分别执行步骤S902、步骤S903、步骤S904以及步骤S905。
在该实施例中,通过四级匹配,包括描述子个数匹配,特征点主方向匹配,特征点位置匹配以及特征点覆盖面积匹配,在保证召回率的情况下能有效提高匹配的准确度。在一个实施例中,经过实际数据测试,通过第一级描述子个数匹配的召回率达到98%,准确率在30%,通过第二级特征点主方向匹配的召回率达到95%,准确率在70%,通过第三级特征点位置匹配的召回率达到90%,准确率在95%,最后第四级特征点覆盖面积匹配召回率保持在85%,准确率在99%以上,同时速度保持在每秒单核单线程500张图片(除去提取特征时间),如果包括主流二进制特征提取的时间,速度大约在60张图片。
综上所述,本发明通过提取待检测的图片的多个特征点的信息以及多个所述特征点的第一二进制描述子;然后,将多个所述第一二进制描述子与预设的图片库中的所有图片的第二二进制描述子进行比较,找出与多个所述第一二进制描述子匹配数最多的第二二进制描述子所对应的第一图片;最后,将所述待检测的图片和所述第一图片进行特征点的信息的匹配,获得所述待检测图片的匹配结果信息,由此,提高了图片匹配的效率及准确性能。具体的,在本发明中,创新的引入了四个匹配准则,依次通过待检测图片与图片库中的二进制描述子个数匹配、特征点主方向匹配、特征点位置匹配、以及特征点覆盖面积匹配,实现在保证速度以及召回率的同时,保证了极高的匹配精度。在现在主流的CPU(酷睿i74770)平台上,检索索引能覆盖一百万的图片所包含的特征库,内存仅需占用2GB,单核单线程每秒能检索500张图片,速度极快。在精度保证99%的情况下,召回率保证在85%以上,因此,本发明的技术方案极其适合应用在对速度要求高的嵌入式平台以及实时监控平台上。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

Claims (4)

1.一种面向二进制特征的图像匹配方法,其特征在于,所述方法包括:
特征提取步骤:提取待检测的图片的多个特征点的信息以及多个所述特征点的第一二进制描述子;
第一匹配步骤:将多个所述第一二进制描述子与预设的图片库中的所有图片的第二二进制描述子进行比较,找出与多个所述第一二进制描述子匹配数最多的第二二进制描述子所对应的第一图片;
第二匹配步骤:将所述待检测的图片和所述第一图片进行特征点的信息的匹配,获得所述待检测图片的匹配结果信息;
其中所述特征点的信息包括:所述特征点的特征点主方向、特征点位置和特征点覆盖面积;
所述特征提取步骤包括:提取所述待检测的图片的多个特征点的特征点主方向、特征点位置以及所述特征点的第一二进制描述子;
在所述第一匹配步骤之前包括:
二进制索引建立步骤:建立所述图片库的二进制索引,所述二进制索引包括由多个第二二进制描述子组成的二进制特征空间和每个所述第二二进制描述子所在图片的图片序号;
所述第一匹配步骤包括:
分别将每个所述第一二进制描述子在所述二进制特征空间中与所述第二二进制描述子进行匹配;
选择包括与多个所述第一二进制描述子匹配数最多的所述第二二进制描述子的所述第一图片,若所述匹配数大于预设的第一阈值,则记录匹配的多个所述第一二进制描述子和第二二进制描述子所对应的特征点对,并执行所述第二匹配步骤,否则所述第一匹配步骤失败;
所述第二匹配步骤包括:
特征点方向匹配步骤:分别计算匹配的多个所述特征点对的特征点的主方向变化率;若两者的所述主方向变化率小于预设的第二阈值,则执行特征点位置匹配步骤,否则所述第一图片不是与所述待检测的图片匹配的图片;
特征点位置匹配步骤:通过分别计算匹配的多个所述特征点对之间的透视变化矩阵以计算多个所述特征点对的内点比率,若所述内点比率大于预设的第三阈值,则执行特征点覆盖面积匹配步骤,否则所述第一图片不是与所述待检测的图片匹配的图片;
特征点覆盖面积匹配步骤:计算多个所述特征点对中所述待检测图片中的特征点的特征点覆盖面积,若所述覆盖面积大于预设的第四阈值,则第一图片是与所述待检测的图片匹配的图片,否则所述第一图片不是与所述待检测的图片匹配的图片。
2.根据权利要求1所述的图像匹配方法,其特征在于,所述特征提取步骤还包括:将所述第一二进制描述子进行精简;
所述二进制索引建立步骤还包括:将所述图片库的二进制索引中的第二二进制描述子进行精简。
3.一种面向二进制特征的图像匹配系统,其特征在于,所述系统包括:
特征提取模块,用于提取待检测的图片的多个特征点的信息以及多个所述特征点的第一二进制描述子;
第一匹配模块,用于将多个所述第一二进制描述子与预设的图片库中的所有图片的第二二进制描述子进行比较,找出与多个所述第一二进制描述子匹配数最多的第二二进制描述子所对应的第一图片;
第二匹配模块,用于将所述待检测的图片和所述第一图片进行特征点的信息的匹配,获得所述待检测图片的匹配结果信息;
其中所述特征点的信息包括:所述特征点的特征点主方向、特征点位置和特征点覆盖面积;
所述特征提取模块提取所述待检测的图片的多个特征点的特征点主方向、特征点位置以及所述特征点的第一二进制描述子;
所述系统还包括:
二进制索引建立模块,用于建立所述图片库的二进制索引,所述二进制索引包括由多个第二二进制描述子组成的二进制特征空间和每个所述第二二进制描述子所在图片的图片序号;
所述第一匹配模块包括:
第一匹配子模块,用于分别将每个所述第一二进制描述子在所述二进制特征空间中与所述第二二进制描述子进行匹配;
第一选择子模块,用于选择包括与多个所述第一二进制描述子匹配数最多的所述第二二进制描述子的所述第一图片,若所述匹配数大于预设的第一阈值,则记录匹配的多个所述第一二进制描述子和第二二进制描述子所对应的特征点对,并执行所述第二匹配模块的匹配操作,否则所述第一匹配模块的匹配操作失败;
所述第二匹配模块包括:
特征点方向匹配子模块,用于分别计算匹配的多个所述特征点对的特征点的主方向变化率;若两者的所述主方向变化率小于预设的第二阈值,则执行特征点位置匹配模块的匹配操作,否则所述第一图片不是与所述待检测的图片匹配的图片;
特征点位置匹配子模块,用于通过分别计算匹配的多个所述特征点对之间的透视变化矩阵以计算多个所述特征点对的内点比率,若所述内点比率大于预设的第三阈值,则执行特征点覆盖面积匹配模块的匹配操作,否则所述第一图片不是与所述待检测的图片匹配的图片;
特征点覆盖面积匹配子模块,用于计算多个所述特征点对中所述待检测图片中的特征点的特征点覆盖面积,若所述覆盖面积大于预设的第四阈值,则第一图片是与所述待检测的图片匹配的图片,否则所述第一图片不是与所述待检测的图片匹配的图片。
4.根据权利要求3所述的图像匹配系统,其特征在于,所述特征提取模块将所述第一二进制描述子进行精简;
所述二进制索引建立模块将所述图片库的二进制索引中的第二二进制描述子进行精简。
CN201510603903.3A 2015-09-21 2015-09-21 面向二进制特征的图像匹配方法及其系统 Active CN105260739B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510603903.3A CN105260739B (zh) 2015-09-21 2015-09-21 面向二进制特征的图像匹配方法及其系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510603903.3A CN105260739B (zh) 2015-09-21 2015-09-21 面向二进制特征的图像匹配方法及其系统

Publications (2)

Publication Number Publication Date
CN105260739A CN105260739A (zh) 2016-01-20
CN105260739B true CN105260739B (zh) 2018-08-31

Family

ID=55100420

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510603903.3A Active CN105260739B (zh) 2015-09-21 2015-09-21 面向二进制特征的图像匹配方法及其系统

Country Status (1)

Country Link
CN (1) CN105260739B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106384127B (zh) * 2016-09-08 2019-04-02 中国科学院计算技术研究所 为图像特征点确定比较点对及二进制描述子的方法及系统
CN106650657A (zh) * 2016-12-16 2017-05-10 广东工业大学 一种基于全脸二进制匹配的身份验证方法及装置
CN108319958A (zh) * 2018-03-16 2018-07-24 福州大学 一种基于特征融合匹配的行驶证检测和识别方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103617217A (zh) * 2013-11-20 2014-03-05 中国科学院信息工程研究所 一种基于层次索引的图像检索方法及系统
CN103745498A (zh) * 2014-01-16 2014-04-23 中国科学院自动化研究所 一种基于图像的快速定位方法
CN104573681A (zh) * 2015-02-11 2015-04-29 成都果豆数字娱乐有限公司 一种人脸识别方法
US9754183B2 (en) * 2012-11-16 2017-09-05 Enswers Co., Ltd. System and method for providing additional information using image matching

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9754183B2 (en) * 2012-11-16 2017-09-05 Enswers Co., Ltd. System and method for providing additional information using image matching
CN103617217A (zh) * 2013-11-20 2014-03-05 中国科学院信息工程研究所 一种基于层次索引的图像检索方法及系统
CN103745498A (zh) * 2014-01-16 2014-04-23 中国科学院自动化研究所 一种基于图像的快速定位方法
CN104573681A (zh) * 2015-02-11 2015-04-29 成都果豆数字娱乐有限公司 一种人脸识别方法

Also Published As

Publication number Publication date
CN105260739A (zh) 2016-01-20

Similar Documents

Publication Publication Date Title
CN109816012B (zh) 一种融合上下文信息的多尺度目标检测方法
US10366304B2 (en) Localization and mapping method
CN111553406B (zh) 基于改进yolo-v3的目标检测系统、方法及终端
CN109960737B (zh) 半监督深度对抗自编码哈希学习的遥感影像内容检索方法
CN108052653A (zh) 图像特征描述符的获取方法、装置、存储介质、终端及图像检索方法
CN107944282B (zh) 一种基于非对称预测误差直方图修改的可逆信息隐藏方法
CN104732511B (zh) 一种凸多边形图像块的检测方法、装置及设备
CN111199214A (zh) 一种残差网络多光谱图像地物分类方法
CN105844669A (zh) 一种基于局部哈希特征的视频目标实时跟踪方法
CN105260739B (zh) 面向二进制特征的图像匹配方法及其系统
US20090161968A1 (en) Invariant visual scene and object recognition
CN113223068B (zh) 一种基于深度全局特征的多模态图像配准方法及系统
CN110472662B (zh) 基于改进的orb算法的图像匹配方法
CN108287833A (zh) 一种用于艺术品鉴定的以图搜图方法
CN109272442A (zh) 全景球面图像的处理方法、装置、设备和存储介质
CN104077561B (zh) 指纹自动比对方法
CN116416626B (zh) 圆形印章数据的获取方法、装置、设备及存储介质
Zong et al. A cascaded refined rgb-d salient object detection network based on the attention mechanism
CN109190450A (zh) 基于分布式计算平台的人工智能遥感影像数据提取方法
CN107301618A (zh) 基于gpu并行加速的基础矩阵和单应矩阵估计方法和系统
US11023781B2 (en) Method, apparatus and device for evaluating image tracking effectiveness and readable storage medium
CN113704276A (zh) 地图更新方法、装置、电子设备及计算机可读存储介质
CN111414958A (zh) 一种视觉词袋金字塔的多特征图像分类方法及系统
CN106844715A (zh) 一种图片检索匹配方法和装置
Chen et al. FPAN: fine-grained and progressive attention localization network for data retrieval

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant