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

文档序号:9506546阅读:来源:国知局
C是本发明实施例提供的特征点主方向匹配规则示意图;
[0049] 图6A是本发明实施例提供的特征点位置匹配规则示意图;
[0050] 图6B是本发明实施例提供的特征点位置匹配规则示意图;
[0051] 图7是本发明实施例提供的特征点覆盖面积规则的示意图;
[0052] 图8是本发明实施例提供的面向二进制特征的图像匹配方法的流程图;
[0053] 图9是本发明实施例提供的面向二进制特征的图像匹配方法的流程图。
【具体实施方式】
[0054] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对 本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并 不用于限定本发明。
[0055] 参见图1,在本发明的第一实施例中,提供了一种面向二进制特征的图像匹配系统 100,包括:
[0056] 特征提取模块10,用于提取待检测的图片的多个特征点的信息以及多个所述特征 点的第一二进制描述子;
[0057] 第一匹配模块20,用于将多个所述第一二进制描述子与预设的图片库中的所有图 片的第二二进制描述子进行比较,找出与多个所述第一二进制描述子匹配数最多的第二二 进制描述子所对应的第一图片;
[0058] 第二匹配模块30,用于将所述待检测的图片和所述第一图片进行特征点的信息的 匹配,获得所述待检测图片的匹配结果信息。
[0059] 在该实施例中,首先提取待检测图片的特征。具体的,可以通过特征提取模块10 提取待检测的图片的多个特征点的信息以及多个所述特征点的第一二进制描述子。优选 的,所述特征点的信息包括:所述特征点的特征点主方向、特征点位置和特征点覆盖面积。 然后,需要第一匹配模块20对待检测图片的特征与后台图片库中的特征分别进行匹配。第 一匹配模块20首先匹配二进制描述子个数,第一匹配模块20将多个所述第一二进制描述 子与预设的图片库中的所有图片的第二二进制描述子进行比较,找出与多个所述第一二进 制描述子匹配数最多的第二二进制描述子所对应的第一图片。最后,第二匹配模块30匹配 特征点的信息。第二匹配模块30将所述待检测的图片和所述第一图片进行特征点的信息 的匹配,若两者的所述特征点的信息匹配成功后,则所述第一图片为与所述待检测的图片 匹配的图片;若两者的所述特征点的信息匹配失败后,则所述第一图片不是与所述待检测 的图片匹配的图片。即在该实施例中,待检测图片的特征与后台图片库中的特征分别进行 二进制描述子个数匹配及特征点的信息的匹配,如果匹配都通过,则表示匹配成功,否则表 示失败。
[0060] 参见图2,在本发明的第二实施例中,特征提取模块10提取所述待检测的图片的 多个特征点的特征点主方向、特征点位置以及所述特征点的第一二进制描述子;面向二进 制特征的图像匹配系统100还包括:
[0061 ] 二进制索引建立模块40,用于建立所述图片库的二进制索引,所述二进制索引包 括由多个第二二进制描述子组成的二进制特征空间和每个所述第二二进制描述子所在图 片的图片序号。并且,在第一二进制描述子长度比较长时,可以通过特征提取模块10将所 述第一二进制描述子进行精简;另一方面,二进制索引建立模块40将所述图片库的二进制 索引中的第二二进制描述子进行精简,便于待检测图片的检索。
[0062] 在该实施例中,特征提取模块10提取待检测的图片的多个特征点的特征点主方 向、特征点位置以及所述特征点的第一二进制描述子。并且,在检索前需要由二进制索引建 立模块40预先建立图片库及其二进制索引。如图3所示,该二进制索引包括由多个第二二 进制描述子组成的二进制特征空间和每个所述第二二进制描述子所在图片的图片序号。
[0063] 具体的,图片库构成了所述二进制索引。然后借助此二进制索引,比较待检测图片 的第一二进制描述子与图片库中所有图片的特征点的第二二进制描述子。此二进制倒排索 引如图3所示。左边表示二进制的视觉单词中心,也可以理解为二进制特征。假设对第二二 进制描述子进行精简后的描述子长度为N,由于描述子是二进制的01串,则第二二进制描 述子的二进制特征空间大小为2 N,即由全0构成的特征到全1构成的特征。在一个实施方 式中,精简后的第二二进制描述子的长度为20,则特征空间的大小为2 2°,第二个第二二进 制特征由20个0构成,最后一个第二二进制特征由20个1构成。每个第二二进制特征后 面接图片库中包含有此特征的图片序号。在一个实施例中,全〇构成的二进制特征被图片 序号为000110、000123、000159的图片所拥有,全1构成的二进制特征被图片序号为000110 的图片所拥有,从图3中也可以看出,图片序号为000110的图片拥有全0构成的二进制特 征,全1构成的二进制特征以及111 111 111 111 11111101的二进制特征。这样在检索匹配之 前先建立起图片库的二进制倒排索引,加速后续匹配操作。
[0064] 参见图2,在本发明的第三实施例中,第一匹配模块20包括:
[0065] 第一匹配子模块21,用于分别将每个所述第一二进制描述子在所述二进制特征空 间中与所述第二二进制描述子进行匹配;
[0066] 第一选择子模块22,用于选择包括与多个所述第一二进制描述子匹配数最多的所 述第二二进制描述子的所述第一图片,若所述匹配数大于预设的第一阈值,则记录匹配的 多个所述第一二进制描述子和第二二进制描述子所对应的特征点对,并执行所述第二匹配 模块30的匹配操作,否则所述第一匹配模块20的匹配操作失败。
[0067] 在该实施例中,特征提取模块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个描述子是相同的,则认为其通过这一级的匹配进入下一 级的特征点的信息的匹配,并记录匹配的特征点之间的匹配关系,方便后续使用。如果最大 的得分小于阈值,则认为匹配失败,程序直接返回结果。
[0068] 在本发明的第四实施例中,第二匹配模块30包括:
[0069] 特征点方向匹配子模块31,用于分别计算匹配的多个所述特征点对的特征点的主 方向变化率;若两者的所述主方向变化率小于预设的第二阈值,则执行特征点位置匹配模 块的匹配操作,否则所述第一图片不是与所述待检测的图片匹配的图片;
[0070] 特征点位置匹配子模块32,用于通过分别计算匹配的多个所述特征点对之间的透 视变化矩阵以计算多个所述特征点对的内点比率,若所述内点比率大于预设的第三阈值, 则执行特征点覆盖面积匹配模块的匹配操作,否则所述第一图片不是与所述待检测的图片 匹配的图片;
[0071] 特征点覆盖面积匹配子模块33,用于计算多个所述特征点对中所述待检测图片中 的特征点的特征点覆盖面积,若所述覆盖面积大于预设的第四阈值,则第一图片是与所述 待检测的图片匹配的图片,否则所述第一图片不是与所述待检测的图片匹配的图片。
[0072] 在该实施例中,特征点方向匹配子模块31利用第一匹配模块20记录的匹配的特 征点,计算其主方向变化率,如果小于第二阈值,则进入步骤104,否则认为匹配失败,程序 直接返回结果。在一个实施例中,假设待检测图片特征点的主方向为Θ 31,图片库中图片的 主方向为ΘΜ,如图5Α,5Β所示,0al与Θ bl相匹配,Θ a2与Θ b2相匹配,依次类推,这些匹 配信息是特征点方向匹配子模块31最后记录的。同时采用var (data)表示一组数(data) 的方差,则主方向变化率c定义如下:
[0073] c = var( Θ bi-Θ ai),其中 i 为匹配对数
[0074] 假设待检测图片为图5A,图片库中的图片为图5B,主方向如图中箭头所示,按照 上式定义的结果计算,主方向变化率c是个比较小的值。如果图片库中的图片为5C,即图 5B旋转90度后获得,按照上式定义计算,由于计算的是两张图片主方向之差的方差,所以 θbl_ θal计算结果基本稳定在90度,变化率会比较小,因此主方向变化率c亦是个比较小 的值。综上所述,特征点方向匹配子模块31对图片的旋转鲁棒,可以有效的应对任意角度 的旋转。
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1