CN110348454B - 匹配局部图像特征描述符 - Google Patents
匹配局部图像特征描述符 Download PDFInfo
- Publication number
- CN110348454B CN110348454B CN201910271555.2A CN201910271555A CN110348454B CN 110348454 B CN110348454 B CN 110348454B CN 201910271555 A CN201910271555 A CN 201910271555A CN 110348454 B CN110348454 B CN 110348454B
- Authority
- CN
- China
- Prior art keywords
- feature
- image
- geometrically
- features
- best matching
- 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
Links
- 238000000034 method Methods 0.000 claims abstract description 66
- 238000011524 similarity measure Methods 0.000 claims abstract description 60
- 238000012545 processing Methods 0.000 claims description 70
- 239000013598 vector Substances 0.000 claims description 21
- 230000000007 visual effect Effects 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 3
- 230000001131 transforming effect Effects 0.000 claims description 2
- 238000004519 manufacturing process Methods 0.000 description 46
- 230000000875 corresponding effect Effects 0.000 description 20
- 238000012360 testing method Methods 0.000 description 19
- 238000004422 calculation algorithm Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 14
- 239000011159 matrix material Substances 0.000 description 10
- 230000009466 transformation Effects 0.000 description 9
- 238000001514 detection method Methods 0.000 description 8
- 230000006872 improvement Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000000844 transformation Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000002596 correlated effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 229910052710 silicon Inorganic materials 0.000 description 2
- 239000010703 silicon Substances 0.000 description 2
- 230000002194 synthesizing effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012993 chemical processing Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000000206 photolithography Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000005389 semiconductor device fabrication Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/593—Depth or shape recovery from multiple images from stereo images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/10—Image acquisition
- G06V10/12—Details of acquisition arrangements; Constructional details thereof
- G06V10/14—Optical characteristics of the device performing the acquisition or on the illumination arrangements
- G06V10/147—Details of sensors, e.g. sensor lenses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/462—Salient features, e.g. scale invariant feature transforms [SIFT]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
- H04N7/181—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20112—Image segmentation details
- G06T2207/20164—Salient point detection; Corner detection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Vascular Medicine (AREA)
- Image Analysis (AREA)
Abstract
本公开涉及匹配局部图像特征描述符。一种从相机视点捕获的图像中的特征匹配的方法,包括:使用视点的对极几何来定义第二图像中与第一图像中的第一特征相对应的几何约束区域;将第一特征的局部描述符与第二图像中的特征的局部描述符进行比较以确定相应的相似性度量;从位于几何约束区域中的特征标识:(i)对第一特征的几何最佳匹配,以及(ii)对第一特征的几何次最佳匹配;标识对第一特征的全局最佳匹配;执行几何最佳匹配和全局最佳匹配的相似性度量的第一比较;执行几何最佳匹配和几何次最佳匹配的相似性度量的第二比较;以及如果满足阈值,则选择第二图像中的几何最佳匹配特征。
Description
技术领域
本公开涉及用于匹配从由对极(epipolar)几何相关的相机视点捕获的图像中所标识的特征的方法和数据处理系统。
背景技术
许多图像处理系统能够将一个图像中的特征与另一图像中的特征相匹配。仅举两个示例,相机管线可以在由相机捕获的一系列图像中执行特征匹配,以便使得自动聚焦点能够在相机相对于场景移动时跟踪场景中的对象,并且立体相机系统可以在由一对相机捕获的一对图像中执行特征匹配以便标识对应地特征,从而使得可以从组合图像提出深度信息。
存在各种特征检测算法(有时称为显着性函数)来标识适用于在图像之间进行跟踪的特征。通常,这种算法用于检测图像中的高对比度特征,这些高对比度特征被良好地局部化并因此比低对比度的区域更可靠地标识。具体地,由于捕获场景的一个或多个相机的视点变化,高对比度特征更可能在场景的图像中被一致地标识。为了标识高对比度特征,可以使用在图像的像素数据中执行边和/或角检测的算法。
所选择的特征可以由局部描述符(或“特征描述符”)来方便地描述,其通常通过促进以高效方式比较和匹配特征的方式来提供特征的关键视觉特性的紧凑表示。例如,特征描述符可以是构成特征的像素中的对比度的表示。通过特征点周围的局部图像区域的一些变换形成局部描述符。存在用于从包括在特征中的像素数据生成局部描述符的各种算法。例如,局部描述符可以根据用于生成SIFT(比例不变特征变换)或SURF(加速鲁棒特征)描述符、或二进制描述符,例如BRISK(二进制鲁棒不变可伸缩关键点)和BRIEF(二进制鲁棒基本特征)描述符的算法来形成。局部描述符通常被表示为向量(在“描述符空间”中),其元素描述所表示的特征的视觉特性的变化。
局部描述符促进不同图像中的特征的高效比较以便评估这些特征在由图像捕获的场景中是否可以对应于同一现实世界点。例如,可以将来自一个图像的特征的局部描述符与第二图像的每个特征的相应局部描述符进行比较,以便形成每个特征配对的描述符距离,其指示相应局部描述符之间的相似性,并因此指示它们所表示的特征之间的相似性。两个局部描述符的比较可以涉及在一个局部描述符的描述符空间中执行从另一局部描述符的描述符空间的向量减法,其中,较小描述符距离(例如,描述符空间中所得向量的较小幅度)指示由局部描述符表示的特征之间的更紧密匹配。
匹配过程可能易于产生误差,即使是在使用最佳检测和局部描述方法时。
发明内容
提供本发明内容是为了介绍下面在具体实现方式中进一步描述的一系列概念。本发明内容不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。
提供了一种计算机实现的方法,用于匹配从由对极几何相关的相应相机视点捕获的第一和第二图像中所标识的特征,每个所标识的特征是由局部描述符描述的,该方法包括:
使用对极几何来定义第二图像中与第一特征相对应的几何约束区域,所述第一特征是在第一图像中由第一局部描述符表示的;
将第一局部描述符与第二图像中的特征的局部描述符进行比较,从而确定第一图像中的第一特征和第二图像中的相应特征之间的相应的相似性度量;
从位于第二图像中的几何约束区域中的特征标识:(i)对第一特征的几何最佳匹配特征,以及(ii)对第一特征的几何次最佳匹配特征;
从第二图像中的任何特征标识对第一特征的全局最佳匹配特征;
执行对针对几何最佳匹配特征和全局最佳匹配特征确定的相似性度量相对于第一阈值的第一比较;
执行对针对几何最佳匹配特征和几何次最佳匹配特征确定的相似性度量相对于第二阈值的第二比较;以及
根据是否满足第一阈值和第二阈值,选择第二图像中的几何最佳匹配特征作为对第一图像中的第一特征的输出匹配。
选择可以包括:如果不满足第一阈值或第二阈值,则不提供输出匹配。
根据几何最佳匹配特征和全局最佳匹配特征的相应的相似性度量,当几何最佳匹配特征作为对第一特征的匹配不比全局最佳匹配特征更差由第一预定义因子定义的量时,可以满足第一阈值。
根据几何最佳匹配特征和几何次最佳匹配特征的相应的相似性度量,当几何最佳匹配特征作为对第一特征的匹配比几何次最佳匹配特征更好由第二预定义因子定义的量时,可以满足第二阈值。
执行第一和第二比较可以包括计算相应相似性度量的幅度的第一和第二比率,如果相应比率分别满足第一和第二阈值,则满足第一和第二阈值。
将第一局部描述符与第二图像中的特征的局部描述符进行比较可以包括形成第一局部描述符和第二图像中的每个所述特征的相应局部描述符之间的描述符距离,并且标识几何最佳匹配和次最佳匹配特征可以包括标识与第二图像中的几何约束区域中的特征相对应的最短和次最短描述符距离。
标识全局最佳匹配特征可以包括标识第一局部描述符与第二图像中的不限于位于几何约束区域中的那些特征的特征的局部描述符之间的最短描述符距离。
所确定的每个相似性度量可以是第一局部描述符与第二图像的相应特征的局部描述符之间的描述符距离。
每个局部描述符可以是表示相应特征的像素的特性的向量,并且确定每个描述符距离可以包括在相应局部描述符之间执行向量减法并确定所产生的向量的幅度。
每个特征可以由点表示,并且每个特征的局部描述符可以根据相应图像中的点的局部像素来形成。
使用对极几何来定义第二图像中的几何约束区域可以包括使用对极几何来导出第二图像中对应于第一图像中的第一特征的对极线或对极区域,其中,该对极线或对极区域用于定义几何约束区域。
几何约束区域可以包括第二图像在对极线或对极区域的预定距离内的所有像素。
可以根据对极几何中的一个或多个误差度量来确定预定距离。
预定距离可以是到对极线或对极区域的边界的预定垂直距离,其根据对极几何随着相应图像中的位置而变化。
几何约束区域可以是对极线或对极区域。
每个特征可以表示相应图像中的局部像素集,并且可以使用以下确定中的一个或多个来确定特征位于几何约束区域中:确定由该特征表示的任何像素是否位于几何约束区域内;确定由该特征表示的一个或多个预定像素是否位于几何约束区域中;确定由该特征表示的预定比例的像素是否位于几何约束区域中。
该方法还可以包括:
从相机视点中的一个或两个接收标识对可视范围的限制的相机数据;以及
处理相机数据以便根据对极几何标识第二图像中的几何约束区域上的边界。
针对一个或两个相机视点的相机数据可以包括:深度信息,其指示从相机视点可见的最近和/或最远区域;视场信息,其指示从相机视点可见的区域;相机视点的视锥体(view frustum);以及指示相机视点前方和/或后方的区域的数据。
对极几何可以用于导出对极线,并且该方法还可以包括转换第二图像的坐标系以便将对极线映射为平行于坐标轴之一,并且随后在经转换的坐标系中,标识位于第二图像中的几何约束区域中的特征。
该方法还可以包括:
使用对极几何来定义第一图像中与第二图像中的几何最佳匹配特征相对应的第二几何约束区域;
将几何最佳匹配特征的局部描述符与第一图像中的特征的局部描述符进行比较,从而确定第一图像中的第一特征与第二图像中的相应特征之间的相应的相似性度量;
从位于第一图像中的第二几何约束区域中的特征标识(i)对第二图像的几何最佳匹配特征的第二几何最佳匹配特征,以及(ii)对第二图像的几何最佳匹配特征的第二几何次最佳匹配特征;
从第一图像中的任何特征标识对第二图像的几何最佳匹配特征的第二全局最佳匹配特征;
执行对针对第二几何最佳匹配特征和第二全局最佳匹配特征确定的相似性度量相对于第一阈值的第一比较;
执行对针对第二几何最佳匹配特征和第二几何次最佳匹配特征确定的相似性度量相对于第二阈值的第二比较;以及
根据是否满足第一和第二阈值,确认第二图像中的几何最佳匹配特征作为对第一图像中的第一特征的输出匹配。
不同的相机可以从相应的相机视点捕获图像。
不同相机位置处的同一相机可以从相应的相机视点捕获图像。
提供了一种数据处理系统,用于匹配从由对极几何相关的相应相机视点捕获的第一和第二图像中所标识的特征,每个所标识的特征是由局部描述符描述的,该数据处理系统包括:
几何单元,其被配置为使用对极几何来定义第二图像中与第一特征相对应的几何约束区域,所述第一特征是在第一图像中由第一局部描述符表示的;
比较单元,其被配置为将第一局部描述符与第二图像中的特征的局部描述符进行比较,从而确定第一图像中的第一特征和第二图像中的相应特征之间的相应的相似性度量;以及
匹配单元,其被配置为:
从位于第二图像中的几何约束区域中的特征标识:(i)对第一特征的几何最佳匹配特征,以及(ii)对第一特征的几何次最佳匹配特征;
从第二图像中的任何特征标识对第一特征的全局最佳匹配特征;
执行对针对几何最佳匹配特征和全局最佳匹配特征确定的相似性度量相对于第一阈值的第一比较;
执行对针对几何最佳匹配特征和几何次最佳匹配特征确定的相似性度量相对于第二阈值的第二比较;以及
根据是否满足第一阈值和第二阈值,选择第二图像中的几何最佳匹配特征作为对第一图像中的第一特征的输出匹配。
匹配单元可以被配置为:如果不满足第一阈值或第二阈值,则不提供输出匹配。
匹配单元可以被配置为:通过计算相应的相似性度量的幅度的第一和第二比率来执行第一和第二比较,如果相应比率分别满足第一和第二阈值,则满足第一和第二阈值。
比较单元可以被配置为形成第一局部描述符和第二图像中的每个所述特征的相应局部描述符之间的描述符距离,并且匹配单元可以被配置为通过标识与第二图像中的几何约束区域中的特征相对应的最短和次最短描述符距离来标识几何最佳匹配特征和次最佳匹配特征。
匹配单元可以被配置为:通过标识第一局部描述符与第二图像中的不限于位于几何约束区域中的那些特征的特征的局部描述符之间的最短描述符距离来标识全局最佳匹配特征。
几何单元可以被配置为使用对极几何来导出第二图像中对应于第一图像中的第一特征的对极线或对极区域,其中,该对极线或对极区域被用于定义几何约束区域。
几何约束区域可以包括第二图像在对极线或对极区域的预定距离内的所有像素。
可以根据对极几何中的一个或多个误差度量来确定预定距离。
预定距离可以是到对极线或对极区域的边界的预定垂直距离,其根据对极几何而随着相应图像中的位置变化。
每个特征可以表示相应图像中的局部像素集,并且如果下列项中的一个或多项为真则确定特征位于几何约束区域中:由该特征表示的任何像素位于几何约束区域中;由该特征表示的一个或多个预定像素位于几何约束区域中;由该特征表示的预定比例的像素位于几何约束区域中。
几何单元还可以被配置为从相机视点中的一个或两个接收标识对可视范围的限制的相机数据,并处理相机数据以便根据对极几何标识第二图像中的几何约束区域上的边界。
一个或两个相机视点的相机数据可以包括:深度信息,其指示从相机视点可见的最近和/或最远区域;视场信息,其指示从相机视点可见的区域;相机视点的视锥体;以及指示相机视点前方和/或后方的区域的数据。
几何单元可以被配置为使用对极几何来导出对极线,并且还可以被配置为转换第二图像的坐标系以便将对极线映射为平行于坐标轴之一,并使得比较单元在经转换的坐标系中标识位于第二图像中的几何约束区域中的特征。
数据处理系统还可以被配置为:
在几何单元处,使用已知对极几何来定义在第一图像中与第二图像中的几何最佳匹配特征相对应的第二几何约束区域;
在比较单元处,将几何最佳匹配特征的局部描述符与第一图像中的特征的局部描述符进行比较,从而确定第一图像中的第一特征与第二图像中的相应特征之间的相应的相似性度量;
在匹配单元处:
从位于第一图像中的第二几何约束区域中的特征标识(i)对第二图像的几何最佳匹配特征的第二几何最佳匹配特征,以及(ii)对第二图像的几何最佳匹配特征的第二几何次最佳匹配特征;
从第一图像中的任何特征标识对第二图像的几何最佳匹配特征的第二全局最佳匹配特征;
执行对针对第二几何最佳匹配特征和第二全局最佳匹配特征确定的相似性度量相对于第一阈值的第一比较;
执行对针对第二几何最佳匹配特征和第二几何次最佳匹配特征确定的相似性度量相对于第二阈值的第二比较;以及
根据是否满足第一和第二阈值,确认第二图像中的几何最佳匹配特征作为对第一图像中的第一特征的输出匹配。
不同的相机可以从相应的相机视点捕获图像。
不同相机位置处的相同相机可以从相应的相机视点捕获图像。
数据处理系统被体现在集成电路上的硬件中。
数据处理系统可以被配置为执行本文描述的任何方法。
提供了一种使用集成电路制造系统制造如本文所述的数据处理系统的方法。
提供了一种使用集成电路制造系统制造如本文所述的数据处理系统的方法,该方法包括:
使用布局处理系统处理图形处理系统的计算机可读描述,以便生成体现数据处理系统的集成电路的电路布局描述;以及
使用集成电路生成系统来制造根据电路布局描述的数据处理系统。
提供了用于执行如本文所述的方法的计算机程序代码。
提供了一种非暂态计算机可读存储介质,其上存储有计算机可读指令,所述计算机可读指令当在计算机系统上被执行时,使得计算机系统执行如本文所述的方法。
提供了一种集成电路定义数据集,该集成电路定义数据集当在集成电路制造系统中处理时,将集成电路制造系统配置为制造如本文所述的数据处理系统。
提供了一种非暂态计算机可读存储介质,其上存储有如本文所述的数据处理系统的计算机可读描述,该计算机可读描述当在集成电路制造系统中处理时,使得集成电路制造系统制造体现数据处理系统的集成电路。
提供了一种计算机可读存储介质,其上存储有如本文所述的数据处理系统的计算机可读描述,该计算机可读描述当在集成电路制造系统中处理时,使得集成电路制造系统:
使用布局处理系统处理数据处理系统的计算机可读描述,以便生成体现数据处理系统的集成电路的电路布局描述;以及
使用集成电路生成系统来制造根据电路布局描述的数据处理系统。
提供了一种集成电路制造系统,被配置为制造如本文所述的数据处理系统。
提供了一种集成电路制造系统,包括:
非暂态计算机可读存储介质,其上存储有如本文所述的数据处理系统的计算机可读描述;
布局处理系统,其被配置为处理计算机可读描述以便生成体现数据处理系统的集成电路的电路布局描述;以及
集成电路生成系统,其被配置为根据电路布局描述来制造数据处理系统。
附图说明
参考附图以示例的方式描述了本发明。在附图中:
图1示出了场景及其通过一对相机的捕获——图1(a)示出了场景,图1(b)示出了在第一相机位置处捕获的图像,并且图1(c)示出了在第二相机位置处捕获的图像;
图2是用于匹配在由对极几何相关的一对相机视点处捕获的图像中的特征的数据处理系统的示意图;
图3示出了用于匹配在由对极几何相关的一对相机视点处捕获的图像中的特征的方法的流程图;
图4是在相机的图像平面中形成的有界对极线的示意图,其中两个边界点都是有限远的并且在相机的前方;
图5是在相机的图像平面中形成的有界对极线的示意图,其中边界点中的一个在相机的后方;
图6是在相机的图像平面中形成的有界对极线的示意图,其中一个点在相机的前方无限远处,并且另一个点是相机前方的有限远点。
图7是在相机的图像平面中形成的有界对极线的示意图,其中一个点在相机的前方无限远处,并且另一个点是相机后方的有限远点。
图8是在相机的图像平面中形成的有界对极线的示意图,其中一个点在相机的后方无限远处,并且另一个点是相机后方的有限远点。
图9是在相机的图像平面中形成的有界对极线的示意图,其中一个点是相机前方的有限远点,并且另一个点位于相对于相机的深度0处。
图10是在相机的图像平面中形成的有界对极线的示意图,其中相机1中的近点是相机0前方的有限远点,包含x的图像平面平行于相机0的图像平面,并且相机1的远点在平面上位于无限远处。
图11是集成电路制造系统的示意图。
具体实施方式
通过示例的方式呈现以下描述以使得本领域技术人员能够制造和使用本发明。本发明不限于本文描述的实施例,并且对所公开的实施例的各种修改对于本领域技术人员将是明显的。仅通过示例的方式描述实施例。
通常,在图像处理系统中,捕获每个图像时(一个或多个)相机的相对位置和定向至少近似已知。例如,立体相机对的相对位置是已知的,但可以进行变化——例如,由于车辆底盘和相机安装点的弯曲而使得安装在车辆上的立体相机可能相对于彼此略微移动。在第二示例中,来自智能电话中的加速度计的信息可用于确定智能电话在捕获图像之间的位置和定向的变化,并因此提供对当捕获每个图像时智能手机相机的相对位置和定向的估计。对象也可以在场景中在不同时间捕获的图像之间移动。
捕获一对图像时(一个或多个)相机的相对位置和定向定义了相机的对极几何(或者在单个相机的情况下,捕获每个图像时的相机位置)。一对相机的对极几何可以根据例如通过从由相机捕获的图像估计对极几何或以任何其他方式确定相机的(可能近似的或估计的)位置和方向来导出。可以以任何方式确定、近似或估计一对相机的对极几何。除非另有说明,否则本文对“相机”的引用将被理解为指代从其捕获、合成或以其他方式生成图像的视点。如在本领域中典型的,对术语“相机”的使用不意味着图像由物理相机捕获,并且对不同相机的引用是对不同视点的引用,并且不一定是(尽管可能是)不同的物理相机。
提供了一种用于匹配图像中所标识的特征的改进方法,其使用对极几何的知识来约束匹配过程。与不使用对极几何来约束匹配过程的常规方法相比,该方法提供了增加数量的正确匹配以及减少数量的不正确匹配。
图1示出了真实世界场景100以及其由标记为C0和C1的位置处的相机112和113的捕获。图1(a)示出了相机的场景和位置,图1(b)示出了由相机112捕获的图像114,并且图1(c)示出了相机113捕获的图像115。相机112和113可以是不同的相机,或者是在不同时刻的相同相机。每个相机的视图的方向由箭头116、117指示,并且每个相机的视场由相应的箭头对104和105指示。对象101和102存在于场景100中并且由相机112和113从不同的视图观察。。
考虑对象101上的特征109。特征109对应于包括房屋101的左下角的图像区域,并且可以被选择为要跟踪的特征,因为其具有相对高的对比度。对于相机112,特征109在图像中被检测为如图1(b)所示的特征123。在本示例中,特征109可以由图像114中的点表示——例如,它是点、块、角、或区域特征。更一般地,图像中所标识的特征可以是任何种类的特征,包括点、块、区域、边、角或线特征,给出了一些示例。基于可从图像114获得的知识并且在没有深度信息的情况下,表示图像114中的特征109的点在现实世界场景中可以位于沿着线103的任何地方,该线103始于相机112并且延伸到相机的视觉极限。从相机113的视角,该线103表现为跨相机113的视场延伸的对极线,如图1(c)所示。
因此,可以通过图像中的点标识的图像114中的特征可以作为对极线投射到图像115中。图像114中的其他类型的特征可以通过对极几何被映射为作为对极区域投射到图像115中的平面或体积。例如,图像114中的边缘或线特征可以通过对极几何映射到作为图像的对极区域投射到图像115中的平面中。可以使用对极区域作为下面描述的几何约束区域118。
连接相机的对极几何至少近似已知,并且因此可以计算图像115中的对极线103的位置(至少近似)。如本领域中已知的,可以根据相机C0和C1的已知位置(或那些点的相对位置)和相机的视图方向的已知定向(或相对定向)(由箭头116和117指示)来确定对极几何。
可以以任何适合的方式确定对极几何。例如:
·这对相机的相对位置和定向可以是已知的(例如,由于被支撑在诸如车辆或智能电话之类的公共设备上——可能形成立体相机对);
·可以通过处理所捕获的图像(例如,使用运动估计技术)来推断这对相机的相对位置和定向,以便产生关于场景的三维信息,并因此允许估计关于相机的相对位置和定向(例如,通过检测一对图像中的对应特征集,并计算将由第一相机捕获的图像中的特征集的位置转换到在由第二相机捕获的图像中观察到的特征集的位置所需的几何转换——可以根据所计算的几何转换推断相机的相对位置和定向);
·来自在其中实现相机的设备中的加速度计的信息可用于确定在相机捕获图像的两个时间点之间相机的位置和定向的变化;
·上述项中的一项或多项——例如,可以粗略地知道相机的位置和定向,从而促进处理所捕获的图像以便产生关于场景的三维信息,并因此允许对相机的相对位置和定向的改进估计(该过程可以在两个或更多个捕获图像上迭代以便系统性地改进对相机的相对位置和定向的估计)。
然而,确定对极几何,其可以以本文所述的方式使用以改进对在一对相机图像中标识的特征的匹配。
图2示出了用于匹配在图像对114和115中标识的特征的数据处理系统200的示意图。特征检测器203被配置为检测图像114、115中的感兴趣特征。特征检测器203可以被配置为检测任何种类的特征,包括点、块、区域、边、角或线特征,给出了一些示例。可以以对于特定应用适当的任何方式来执行特征检测。通常,特征检测器检测图像中的高对比度特征,这些高对比度特征被很好地定位并且可以在从不同视点捕获的场景的图像中被一致地标识。例如,特征检测器203可以使用在图像的像素数据中执行边和/或角检测的特征检测算法。用于针对点、块、角、边和线执行特征检测的示例性算法在计算机视觉(Algorithms andApplication,R.Szeliki,Springer 2011)的第4章中进行了描述。
在图1所示的示例中,特征检测器在图像114和115上操作角检测算法。特征检测器标识图像114中的角特征121-125和图像115中的角特征131-135。观察到图像114中的特征123和图像115中的特征132彼此对应并对应于图1(a)所示的现实世界场景中的对象101上的特征109对于人来说是微不足道的,但这对于计算机来说不是微不足道的,并且在该点处系统200不知道图像114中的哪些特征对应于图像115中的哪些特征。
如上所述,描述符生成器204被配置为针对每个图像中所标识的每个特征生成局部描述符(或“特征描述符”)。可以生成对于特定应用适当的任何种类的局部描述符。局部描述符通常以有助于以高效方式比较并匹配特征的方式提供特征的视觉特性的紧凑表示。例如,局部描述符可以是对构成特征的图像的像素中的对比度的表示。可以通过围绕特征点的局部图像区域的一些转换来形成局部描述符。存在用于从包括在特征中的像素数据生成局部描述符的各种算法。例如,如上所述,已知的局部描述符包括SIFT、SURF、BRISK和BRIEF描述符。局部描述符通常被表示为向量(在描述符空间中),其元素描述所表示的特征的一个或多个视觉特性的变化。
描述符生成器204可以被配置为在数据存储区210处存储其为图像的每个特征生成的局部描述符。这可以避免使描述符生成器必须为同一特征多次重新生成局部描述符。数据存储区可以是描述符生成器可访问的任何种类的存储器(包括缓存或查找表)。描述符生成器204可以包括如图2所示的数据存储区210。描述符生成器可以存储为图像生成的局部描述符,同时该图像在数据处理系统200处被处理。一旦针对特征匹配不再需要图像时,可以刷新数据存储区并为存储在数据存储区中的下一图像生成局部描述符。
为每个特征生成的局部描述符用于比较图像中所检测到的特征,以便标识每个图像中对应于相同真实世界特征的那些特征。图像114中的特征的局部描述符与图像115中的特征的局部描述符的比较由比较单元206执行。由比较单元对一对图像中的特征的局部描述符执行的比较可以以任何方式执行,以便提供特征之间的相似性度量。
比较单元可以将图像114中的特征的局部描述符与图像115中的每个特征的局部描述符进行比较。被比较的特定局部描述符以及局部描述符被比较的顺序是实现方式细节,并且通常可以在比较单元206处以任何合适的方式确定,以便根据本文描述的特征匹配算法提供相似性度量。
可以执行局部描述符的比较以便形成描述符距离。描述符距离表示对应于局部描述符的特征之间的相似性度量。描述符距离可以以任何方式形成以便表示由局部描述符描述的特征之间的相似性。例如,在比较一对局部描述符时,可以通过从这对局部描述符中的一个局部描述符中减去这对局部描述符中的另一个局部描述符并计算该差值的幅度来形成描述符距离。典型地,局部描述符被表示为向量,使得局部描述符的向量减法产生向量,其在描述符空间中的幅度表示这些局部描述符之间的差值,并因此提供对其相似性的度量。
对于输入图像对的一个图像中的给定特征,几何单元205被配置为基于捕获输入图像的一个或多个相机的至少近似对极几何来确定输入对的另一图像中的几何约束区域。几何单元本身可以从所接收的数据209估计对极几何,或者对极几何可以至少近似为几何单元已知的或由几何单元接收。例如,对于一对立体相机,对极几何可以基本上固定并存储在几何单元205处。
在一些实施例中,几何单元205可以被配置为接收数据209,该数据209标识对捕获输入图像的(一个或多个)相机的相对位置和定向的估计。例如,在智能电话中,加速度计可以在捕获两个输入图像的时刻确定智能电话处的相机的近似相对位置和定向,并且几何单元可以被配置为根据该数据计算对极几何。
在一些实施例中,几何单元205可以被配置为接收输入图像本身和/或那些图像中由特征检测器203标识的特征。几何单元可以被配置为通过处理输入图像和/或特征来估计在捕获输入图像的(一个或多个)时间(一个或多个)相机的对极几何——例如通过标识将一个输入图像的特征映射到另一个输入图像的特征的转换。本领域中已知各种算法用于计算这种转换并从中推断对极几何的估计。
几何单元205可以接收由特征检测器203检测到的特征。使用为一对图像建立的对极几何,几何单元被配置为生成输入对的第二图像中的几何约束区域,在其中寻找针对输入对的第一图像的特征的匹配。几何约束区域表示第二图像的基于对极几何期望存在匹配的区域。几何约束区域可以从针对其寻找匹配的特征的对极线或区域导出。如已经描述的,表示由一个相机捕获的图像中的特征的点投射到由第二相机捕获的图像中的对极线。表示由一个相机捕获的图像中的特征的线投射到由第二相机捕获的图像中的对极区域。
几何单元可以使用其对极几何的至少近似知识来导出第二图像中针对第一图像中的给定特征的对极线或区域,并形成该对极线或区域的几何约束区域。几何单元可以将图像的几何约束区域标识为由位于表示图像中的对象特征的对极线或区域的预定距离内的图像的那些部分定义的区域。预定距离可以是固定的,或者可以沿着对极线的长度或者随着对极区域中的位置而变化。定义关于对极线或区域的几何约束区域适应关于精确对极几何的不确定性(例如,对极几何可以是估计)。在一些示例中,几何约束区域可以是与对极线或区域相同的一个。
在一些示例中,图像可以被划分为多个图块(tile),并且针对被寻找的特征的几何约束区域可以包括通过其确定对极线或区域以供该特征通过的图块集,或者具有位于对极线的预定距离内或位于对极区域内或其预定距离内的一个或多个点的图块集。
可以根据对极几何中的不确定性的一个或多个度量来确定到对极线或区域的预定距离。例如,可以使用对极几何中的不确定性的估计来根据已建立的误差分析原理导出对极几何中的误差的估计。对极几何中不确定性的度量可能是由于例如根据所接收的数据计算对极几何中的一个或多个误差、根据其导出对极几何的值的度量误差、以及由相机的镜头畸变引起的误差。因为误差可能由于表示对极线或区域的值的几何和/或大小的影响而跨图像变化(例如,被定义为值的比例的误差将随着该值的大小在绝对值大小中变化),距对极线或区域的预定距离也可能变化。例如,在基于对极线形成几何约束区域的情况下,该区域的边界将不与对极线平行,并且可能不是线性的。
例如,在本示例中,在对极线103上相对靠近相机C0 112的位置的点处,到对极线的垂直距离(即如图1c所示的线106和107与对极线103的距离)相比于在对极线103上相对远离相机C0 112的位置的点处的对应垂直距离可以相对较小。在其他示例中,可以使用单个误差估计(例如,平均或最大误差的估计)以使得预定距离跨图像固定,并且几何约束区域的边界(例如106和107)平行于对极线。
更一般地,可以以任何方式确定几何约束区域——包括基于对给定相机系统的一对图像中的匹配点的位置的评估来凭经验确定。几何约束区域的边界可以由距对极线或区域的预定垂直距离来定义——例如,其可以是固定的或者是沿对极线或对极区域中的位置的位置的函数。
在图1所示的示例中,图像114的特征123由几何单元根据相机112和113的对极几何转换为图像115中的对极线103。可以针对对极线103将几何约束区域118定义为包括在线的确定垂直距离108内的图像的部分,包括对极线本身上的点。在图1(c)所示的示例中,垂直距离108因此定义图像115内的区域118上的边界106和107。
一旦已经标识图像115的对应于图像114中的特征123的几何约束区域118,几何单元可以被配置为标识位于该几何约束区域内的图像115的那些特征。例如,给定图像115中的所有特征的集合,几何单元可以被配置为标识位于几何约束区域内的特征的子集。以这种方式,几何单元可以被配置为标识图像115中的那些特征,根据通过其关联图像114和115的对极几何,这些特征可以提供对图像114中的特征123的匹配,对此已经确定了几何约束区域118。
匹配单元207被配置为基于在比较单元206处形成的相似性度量和由几何单元205确定的几何数据来标识一对图像中的匹配特征。匹配单元接收在一对图像(例如114和115)中检测到的特征的局部描述符与标识位于针对一个或两个图像确定的每个几何约束区域内的特征的几何信息之间的相似性度量。几何信息可以是向匹配单元标识图像中的哪些特征位于针对该图像确定的几何约束区域内的任何种类的数据。例如,几何信息可以是标识几何单元205已经标识为位于几何约束区域内的一组特征的信息。在其他示例中,几何信息可以表示几何约束区域,其中匹配单元本身被配置为确定图像的哪些特征位于该区域内。
可以提供控制器211以用于控制数据处理系统200处的操作序列。返回到图1中所示的示例,对于针对其在第二图像115中寻找匹配的图像114的给定特征123,控制器可以被配置为使得:
a)几何单元确定图像115中的几何约束区域118;
b)描述符生成器生成图像114的特征123的局部描述符以及由特征检测器在图像115中标识的每个特征,并将这些局部描述符存储在数据存储区210处;
c)使用存储在数据存储区210处的局部描述符,比较单元206将图像115中标识的每个特征与图像114的特征123进行比较;
d)匹配单元207接收由比较单元生成的相似性度量以及标识位于几何约束区域118内的图像115的那些特征的几何信息;
e)匹配单元207使用相似性度量和几何信息来标识图像115中的针对图像114的特征123的最佳匹配特征。
许多其他实现方式是可能的,并且上述控制器配置仅是对被配置为执行根据本文描述的原理的特征匹配的数据处理系统的操作进行排序的一种可能方法。
为了标识匹配特征,匹配单元207被配置为标识(a)第二图像的几何约束区域中的针对第一图像的特征的最佳匹配,以及(b)第二图像中针对第一图像的该特征的全局(例如,任何地方或基本上任何地方)最佳匹配。匹配单元根据在比较单元206处针对图像的相应区域生成的相似性度量集合来确定特征的最佳匹配,选择最相似的特征作为最佳匹配。次最佳匹配是由相似性度量指示的次最相似特征。对于几何约束区域,从中选择最佳匹配的相似性度量集合是位于第二图像115中的几何约束区域中的特征的相似性度量集合。对于整个图像,从中选择最佳匹配的相似性度量集合是图像中任何地方或基本上任何地方的特征的相似性度量集合(例如,可以忽略图像的边缘处的匹配)。如果相似性度量是描述符距离,则具有最低描述符距离(在描述符空间中)的特征与针对其寻找匹配的第一图像的特征最相似。
匹配单元被配置为将几何约束区域中的最佳匹配的相似性度量(例如,描述符距离sN1)与第二图像中的全局最佳匹配的相似性度量(例如,描述符距离sG)进行比较。为了将几何约束区域中的最佳匹配特征选择为输出匹配208,几何约束区域中的最佳匹配的相似性度量必须等于第二图像中的全局最佳匹配的相似性度量,或者不指示比全局最佳匹配显著更差的匹配。可以在相似性度量之间执行任何适合的比较以便确定是否可以将几何约束区域中的最佳匹配特征选择为输出匹配208。例如,比较可以包括形成相似性度量的比率、形成相似性度量的平方(或另一个幂)的比率、从一个相似性度量中减去另一个相似性度量等。
最佳几何约束特征的相似性度量(例如描述符距离sN1)与最佳全局特征的相似性度量(例如描述符距离sG)的比较可以包括形成那些相似性度量的比率(例如,sN1/sG)。在本文描述的示例中,相似性度量是描述符空间中的描述符距离,其中较低描述符距离指示较大相似性。例如,比较可以涉及确定几何约束和全局描述符距离的比率(sN1/sG)是否低于预定阈值tG,其中tG大于1(unity)。如果满足该条件,则几何约束区域中的最佳匹配特征不是比第二图像中的全局最佳匹配特征显著更差的匹配。作为示例,阈值tG可以被选择为在1.01至1.1的范围内。可以凭经验标识给定应用和相机系统的阈值tG的最佳值。该第一比率测试确保在几何约束区域中找到的匹配不比图像中的全局最佳匹配显著更差。如果全局最佳匹配在几何约束区域中,则相同特征将是全局图像和几何约束区域的最佳匹配,使得sN1=sG,并且比率sN1/sG=1。
匹配单元还可以被配置为执行第二测试,该第二测试将几何约束区域中的最佳匹配的相似性度量与几何约束区域中的次最佳匹配的相似性度量进行比较。匹配单元还可以被配置为:使得如果几何约束区域中的最佳匹配和次最佳匹配的相似性度量指示最佳匹配是比该区域的第二最佳匹配显著更好的匹配,则可以将几何约束区域中的最佳匹配特征选择为输出匹配208。在其中相似性度量是描述符距离的示例中,该第二测试比较可以涉及确定几何约束区域中的特征的最佳匹配描述符距离(sN1)与次最佳描述符距离(sN2)的比率低于预定阈值(tN)(其小于1),指示几何约束区域中的最佳匹配特征是比几何约束区域中的次最佳特征显著更好的匹配。阈值tN必须在0<tN<1的范围内,并且通常在0.5≤tN≤0.8的范围内选择tN的值。该第二比率测试确保几何约束区域中的最佳匹配是明确的。
在本文描述的示例中,为了将几何约束区域中的最佳匹配选择为输出匹配208,必须满足两个条件,即sN1/sG<tG并且sN1/sN2<tN。当不满足第一或第二比率测试时,匹配单元可以被配置为不输出在第二图像中寻找其匹配的第一图像的给定特征的匹配。以这种方式,匹配单元可以被配置为仅提供高置信度的匹配。换句话说,匹配单元仅提供明确地在特征的几何约束区域中为最佳匹配并且针对其在几何约束区域之外没有显著更好的匹配的匹配。
在标识特征的最佳匹配时,匹配单元可以被配置为确认匹配是对称的。如果第一图像中的特征fA的最佳匹配是第二图像中的特征fB并且第二图像中的特征fB的最佳匹配是第一图像中的特征fA,则最佳匹配是对称的。因此,在标识针对第一图像的特征fA的第二图像中的最佳匹配fB时,匹配单元可以被配置为随后标识特征fB在第一图像中的最佳匹配。如果发现特征fA是fB在第一图像中的最佳匹配,则fB被确认为fA在第二图像中的最佳匹配(随后fA也可被确认为fB在第一图像中的最佳匹配)。
如果未发现特征的最佳匹配是对称的并且因此未被确认,则匹配单元可以被配置为不提供该特征的最佳匹配输出。
现在将描述数学示例,其中相似性度量是描述符距离,使得较低距离指示特征之间的更好匹配。将理解的是,可以容易地修改以下方法以用于其他类型的相似性度量——例如,其中较大值指示特征之间的更好匹配。
针对图像中的每个检测到的特征计算局部描述符向量d,使得每个特征可以被定义为具有描述符的点f={o,d},其中,o是图像中的特征的位置。可以使用任何方法来计算特征的描述符向量。在该示例中,可以评估描述符向量之间的距离,其在特征之间存在更好匹配时返回较低分数。
给定两组特征,第一图像中的f0={f00,f01,…,f0i,…,f0(I-1)}以及第二图像中的f1={f10,f11,…,f1j,…,f1(J-1)},基于描述符的匹配涉及在描述符空间中找到最近相邻特征对。例如,搜索第二组f1以获得第一组的特征f00的最佳匹配特征;然后搜索第二组以获得第一组的下一特征f01的最佳匹配特征;并且依此类推,直到找到完整的特征组f0的匹配。这两个图像由至少近似已知的对极几何相关。可以认为该知识在匹配过程中提供“几何约束”。
对于第一组的给定特征,可以标识三个描述符距离:第一组的给定特征与第二组中的满足几何约束(即位于根据本文所述原理确定的几何约束区域内)的其最近相邻特征(在描述符空间中)之间的描述符距离sN1;第一组的给定特征与第二组中的满足几何约束的其次最近相邻特征(在描述符空间中)之间的描述符距离sN2;以及第一组的给定特征与第二组中的与几何无关的(即从第二组的任何特征中选择)其全局最近相邻特征之间的描述符距离sG。使用这些描述符距离应用两个比率测试。
第一比率测试是在满足几何约束的最近相邻特征和与几何无关(例如,图像中的任何位置)的最近相邻特征之间的:
如上所述,tG大于1,并且可以被选择为在1.01≤tG<1.1的范围内。
第二比率测试是最近相邻比率测试,其受到由在其中寻找特征匹配的图像之间的对极几何建立的几何约束的影响:
这里,如上所述,tN在0<tN<1的范围内,并且可以被选择在0.5≤tN≤0.8的范围内。
第一比率测试将所选匹配与整个图像的特征进行比较以确保匹配不是比图像中的任何其他匹配的显著更差的匹配。这有助于确保几何约束区域中所标识的最佳匹配是对另一图像中的主题特征的真实匹配。该第一测试可以称为全局最近相邻比率测试。第二比率测试检查匹配是否明确地是几何约束区域内的最佳匹配。
在第二比率测试中使用对极几何约束特别有助于排除许多可能的不正确匹配,并提高图像之间的特征匹配的可靠性。这可以通过返回到图1来理解。
特征检测器203标识图像114中的特征121-125和图像115中的特征131-135。考虑数据处理系统200被布置为标识图像114中的特征123的匹配的情况。如所描述的,几何单元205使用图像之间的至少近似已知的对极几何来导出图像115中的几何约束区域118,该几何约束区域118描述特征123的预期位置范围。几何单元205可以从关于图像114中所标识的特征的针对图像115形成的对极线导出几何约束区域118——例如,通过标识包括图像115的位于对极线的预定距离108内的那些部分的区域。
在图像115中检测到的每个特征131-135具有由描述符生成器204为其生成的局部描述符。比较单元206被配置为将特征131-135的每个局部描述符与针对图像114的主题特征123形成的局部描述符进行比较。使用特征的局部描述符,匹配单元207从位于由几何单元205标识的几何约束区域118中的特征132、134、135标识对特征123的最佳和次最佳匹配。在这种情况下,最接近匹配被标识为特征132并且次最接近的是特征135。匹配单元还从所有特征131-135中标识对特征123的最佳全局匹配。在这种情况下,最接近全局匹配也被识别为特征132。
在该示例中,假设满足比率测试的阈值,则将特征132选择为特征123的最佳匹配。从图1可以理解这是正确的匹配。
在其他示例中,特征133可以表现为对特征123的最佳全局匹配(可能是由于图像115中的特征132被场景中的另一对象部分遮挡)。然而,不能选择特征133作为特征123的匹配,因为它不位于几何约束区域118中。如果特征133是比特征132显著更好的匹配(即,如果s132/s133≥tG,其中d132是特征132的描述符距离,并且其中,d133是特征133的描述符距离),则特征132将不被选择为与对特征123的匹配,并且将不返回特征123的匹配。尽管未提供匹配,但这与返回不明确或不正确的匹配相比通常是有利的。在图像之间还可以找到其他特征匹配:例如,特征133可能被标识为对特征124的匹配。
图3是示出在本示例中由数据处理系统200执行的标识第二图像中针对第一图像的特征的匹配的方法的流程图。在步骤301,在第二图像中标识特征,并且为第一特征和第二图像的每个特征形成局部描述符以促进对特征的比较。对于输入对的第一图像中的第一特征,在步骤302使用两个图像之间的已知对极几何确定图像115中的对应对极线,并且从对极线导出几何约束区域。
在步骤303,将第一特征的局部描述符与第二图像中检测到的特征的局部描述符进行比较。执行该比较以便在304标识第二图像的几何约束区域中的第一特征的最佳匹配和次最佳匹配特征。并且在305,标识第二图像中的全局最佳匹配特征。通过比较全局和几何约束最佳匹配和次最佳匹配特征中的每一个来形成相似性度量(例如,描述符距离)。然后在306对相似性度量执行比率测试以便验证几何约束区域中的最佳匹配特征不是比图像中的全局最佳匹配特征显著更差至少第一阈值因子的匹配,并且几何约束区域中的最佳匹配特征是比该区域中的次最佳匹配特征显著更好至少第二阈值因子的匹配。如果满足比率测试,则选择308几何约束区域中的最佳匹配特征作为第一特征的输出匹配。否则,不为第一特征提供匹配307。
在其中相机/相机位置之间的对极几何被认为是从在相机/相机位置处捕获的图像进行估计的结果的系统中,使用输出匹配来改进对极几何的估计可能是有利的。然后可以在本文所述的方法中使用对极几何的改进估计来标识未来的特征匹配。以这种方式,可以实现所估计的对极几何和特征匹配的迭代改进。例如,图2中所示的数据处理系统的几何单元205可以被配置为根据从不同相机位置捕获的场景的一对图像中标识的匹配特征来估计对极几何——例如,通过使用适当的算法来确定坐标转换,该坐标转换将一个图像中的一组检测到的特征映射到图像对的第二图像中的一组匹配检测特征上。如本领域中已知的,一旦在图像之间映射点所需的坐标转换是已知的,则可以导出描述那些图像的对极几何的基本矩阵(或另一组值)。在计算机视觉(Algorithms and Application,R.Szeliki,Springer 2011)的第七章中描述了用于标识坐标转换以在两个图像之间进行映射并因此导出与这些图像相关的对极几何的示例性技术。
视图约束
可以进一步改进从对极线导出的几何约束区域的定义以便从已知不会发现匹配的区域中排除图像的区域。可以通过使用一个或两个相机的视锥体的知识来实现一种这样的改进。例如,可以确定捕获其中要执行特征匹配的图像的一个或两个相机的深度约束。深度约束可以包括下列项中的一项或多项:定义真实世界场景中相对于相机的可能被标识为特征的最近和/或最远点的数据(例如,一个或多个平面或其他表面);定义一个或两个相机的视场以标识相机可见的点的范围的数据(例如,一个或多个平面或其他表面);定义哪些点位于相机前方或后方的数据(例如,用于标识场景中的点是否位于相机后方并因此对相机不可见的几何测试)。注意,在一些示例中,要执行特征匹配的图像将由相同相机捕获。
标识一对相机(或两个不同位置和/或定向处的相同相机)的视图约束可以如下用数学方式处理。在下面的示例中,第一图像1中的点被投射到第二图像0中。
基本矩阵可以用于描述一对相机的对极几何。基本矩阵可以用于将一个图像中的点投射到另一图像中的线。投射到第一图像中的点的3D点必须位于第二图像中的线上。如上所述,该对极关系可用于约束视图之间的2D特征的匹配。可以基于3D点相对于相机可以假设的有限深度范围来标识附加深度约束。
假设3D空间中的点在两个图像中被观察为点:/>令观察的齐次形式为/>对极几何被定义为,
其中,F是基本矩阵。
在匹配问题中,x可能是未知的,并且p0和p1之间的对应关系是未知的。对极几何可用于约束针对匹配的搜索。给定点p1,图像0中的候选点p0(如果其位于线上)仅是针对p1的匹配,
如上所述,允许由基本矩阵定义的对极几何中的噪声和误差是有利的,因此测试可以应用为,
dist(l0,p0)<t,
其中,dist(l0,p0)找到点和线之间的最短欧几里德(Eucliedan)距离(例如,到线的垂直距离),并且t是根据容许误差选择的阈值。
如果已知点相对于相机1的深度受到限制并且已知相机的校准,则可以应用附加约束。相机校准可以包括内在参数矩阵K、外在旋转R和转换t。
其中,fx和fy是水平和竖直焦距,投射中心是图像中的点(cx,cy),并且s是偏斜参数,其对于方形像素相机为0。因此,点投射方程为,
p=Px=K[R t]x。
可以找到x的最近和最远的可能解并将其投射到图像0以找到线l0上的边界点。首先,必须找到投射到p1的3D线(也称为点p1的反投射)。其可以被定义为相机中心C1和投射到点p1的平面上无限处的点i之间的线。在没有关于深度约束的另外信息可用的情况下,这两个点还用作x的最小和最大深度解。相机中心为,
点i的形式为其可以被解释为方向向量并且可以从投射方程中求解,
这里因为R根据定义是正交的(它是旋转矩阵),并且
然后,3D点是满足对极线并位于对极线上的任何点,
x=ai+bC1。
几何单元205可以被配置为基于至少表达对极几何的近似的基本矩阵来以上述方式计算对极线。
注意,即使i是齐次量(homogeneous quality),向量的比例也应保持为上面计算的i′,以确保a的解在后续步骤中具有正确的比例。此外,符号对于确定i是在相机0的前方还是后方是重要的。由于x是非齐次量(并且其比例和符号仅在x=i时才重要),a和b的值可以被缩放任何因子以产生等同结果。通过设置b=1来表示任何有限远点并通过设置b=0来表示无限远点是最简单的。
通过将点转换为相机坐标并测量z坐标来找到有限远点的深度。
/>
其中,是/>的第三行。因此,通过设置a=d找到深度为d的x的解,
x(d)=di+C1。
令相机的最小工作深度为dn并且最大深度为df,则图像1中x的对应解为xn=x(dn)和xf=x(df)。在相机的工作范围未知的情况下,相机中心和无限远点提供绝对最大工作范围(xn(0)=C1,xf(∞)=i)。将这些边界点投射到图像0给出图像0中的对极线上的边界点,
pn=P0xn,
pf=P0xf.
图4至图10示出了基于边界点的性质和位置的不同情况。在这些图中,为简单起见丢弃一个维度,使得2D点到1D图像的投射被示出。π0是相机0的图像平面,并且包含π0和C0的三角形定义相机0的视角。
如果xn和xf都在相机0的前方,则在图像0中找到的对极线作为连接pn和pf的线,如图4所示的有限情况,并且如图6所示的xf=i的情况。
如果xn和xf都在相机0后方,则相机0不能观察到点x并且未定义对极线。在确立特征仅由其中一个相机观察到的情况下,可以不执行特征匹配并且避免与该匹配相关联的处理成本。
如果一个点在相机前方并且另一个点在相机后方,则对极线以远离相机0后方的点的投射的方向从相机0前方的点的图像延伸。图5示出了对于有限远点的这种情况。图7示出了xn在相机后方的情况,并且图8示出了xf为无限远并且在相机后方的情况。
结合相对于相机0的深度约束进一步约束了对极线。这还防止其中一个边界点在相机0前方而另一个边界点在相机0后方的情况。为了找到点相对于相机0的深度,将其转换到相机0坐标空间,
然后深度为zd0,
其中,上标(3)指示矩阵的第3行。给定相对于相机0的深度值,反转该等式给出a的表达式。
a=α-1(d0-β)。
注意,如果p1的反投射平行于相机0的图像平面,则α=0并且上述等式无效。深度限制dn和df可以根据以下等式从相对于相机0的深度转换为相对于相机1的深度,
dn0=α-1(dn-β),
df0=α-1(df-β).
根据相机的相对定向,相比于df0,dn0相对于相机1的深度可能更大。为简化对深度进行比较,如果dn0>df0,则可以交换深度以使得dn0<df0。然后,最终深度限制是来自相机0和1的限制的交点:
这些深度限制可以由几何单元205计算以便标识对极线的一个或两个端点是否位于相机0的可视范围内。如果相机工作深度不交叠,则dn01>df01并且不定义对极线。
在这种情况下,几何单元205可以被配置为不在图像0中寻找图像1的特征的对应于对极线的匹配特征。这避免了不必要的处理。否则,点xn=x(dn01)和xf=x(df01)将不在相机0后方,并且至少部分对极线将位于相机0的可视范围内。
在xn或xf之一在包含相机0的中心并且与相机0的图像平面平行的平面中(相对于相机0的深度=0,相机平面)的情况下,该点投射到图像0中的无限远点。这仅在dn=0时可以发生。因此,找到dn的有意义的值可以简化实现方式。
图9示出了xn位于相机0的相机平面上的情况。相机平面上的点投射到形式为的点。这可以被解释为图像平面中的方向向量。与i一样,如果符号被正确地保留,则该方向向量可以被解释为仅指向一个方向。在上面列出的所有xn、xf和相机矩阵都被计算的情况下,符号将是正确的。
在图9的示例中,对极线以由给出的方向从pf延伸。替代地,pn可以是有限远的并且pf可以为无限远的,使得线以由pf给出的方向从pn延伸。图10示出了产生无限远pf的特殊情况:x的反投射线在与相机0的图像平面平行的平面上并且xf=i。
如果x与C0和C1共线,则对极线减小到图像0中的对极点e0=P0C1以及图像1中的对极点p1=e1=P1C0。在这种情况下,不能求解x的深度并且不能定义几何约束区域。在这种情况下,匹配单元可以被配置为不寻找对图像0中的特征的匹配。
通过形成根据已知深度约束限制的对极线,几何单元可以进一步减小其中在通过至少近似已知的对极几何与第一图像相关的第二图像中预期找到第一图像中标识的特征的区域的大小。几何单元可以基于有界对极线导出几何约束区域,使得几何约束区域本身根据所建立的深度约束来限制。例如,几何单元可以导出包括有界对极线的预定距离内的所有点的几何约束区域。
上述示例仅是可以形成有界对极线的一种方式。几何单元可以被配置为以任何方式形成有界对极线,不限于本文给出的特定示例。
坐标旋转
利用图像0坐标系中的旋转以便将对极线映射为与坐标轴之一平行是有利的。例如,坐标系可以被映射为使得对极线与x轴平行,并因此在图像0中是“水平的”。这简化了计算点-线距离以找到线和点之间的y偏移,并且上面计算的深度约束成为x坐标上的限制。对极线可以写为l′=[a′ b′ c′]。它是齐次量,因此可以根据需要进行缩放。为了使子向量[ab]为单位向量,线根据以下等式进行缩放,
注意,具有a=b=0的线无效,因此不需要解决此情况。需要旋转以对线进行如下映射,
lRl=[1 0 c],
其中,Rl形式为,
rc=cos(θ),
rs=sin(θ).
扩展并简化得到,
求解rc和rs得到,
对于给定对极线,该矩阵可用于旋转在其中寻找特征的图像的坐标系以使得对极线平行于x轴。几何单元执行这种旋转以便简化对极线的后续使用可能是有利的。例如,由于与对极线的垂直距离仅由y值给出,因此检查图像中检测到的哪些特征位于对极线的预定距离内(例如以确定哪些特征位于几何约束区域内)变得微不足道。
图2的数据处理系统被示出为包括多个功能块。这仅是示意性的,并且不旨在限定这些实体的不同逻辑元件之间的严格划分。可以以任何适当的方式提供每个功能块。应当理解,本文描述为由数据处理系统形成的中间值不需要在任何点由数据处理系统物理地生成,并且可以仅表示方便地描述由数据处理系统在其输入和输出之间执行的处理的逻辑值。
本文描述的数据处理系统可以以硬件的方式体现在集成电路上。本文描述的数据处理系统可以被配置为执行本文描述的任何方法。通常,上述的功能、方法、技术、或组件中的任何一者可以用软件、固件、硬件(例如,固定逻辑电路)或其任何组合来实现。本文可以使用术语“模块”、“功能”、“组件”、“元件”、“单元”、“块”和“逻辑”来总体地表示软件、固件、硬件、或其任何组合。在软件实现方式的情况下,模块、功能、组件、元件、单元、块、或逻辑表示在处理器上执行时执行指定任务的程序代码。本文所描述的算法和方法可以由执行使得(一个或多个)处理器执行算法/方法的代码的一个或多个处理器来执行。计算机可读存储介质的示例包括随机存取存储器(RAM)、只读存储器(ROM)、光盘、闪存、硬盘存储器、以及可以使用磁的、光的、和其他技术来存储指令或其他数据并且可以被机器访问的其他存储器设备。
本文所使用的术语计算机程序代码和计算机可读指令是指用于处理器的任何种类的可执行代码,包括以机器语言、解释型语言、或脚本语言表达的代码。可执行代码包括二进制代码、机器代码、字节代码、定义了集成电路的代码(例如,硬件描述语言或网表)、以及以编程语言代码(例如C、Java或OpenCL)表达的代码。例如,可执行代码可以是任何种类的软件、固件、脚本、模块、或库,它们例如当在虚拟机或其他软件环境中被适当地执行、处理、解释、编译、执行时,使得支持可执行代码的计算机系统的处理器执行由代码指定的任务。
处理器、计算机、或计算机系统可以是具有使得其可以执行指令的处理能力的任何种类的设备、机器、或专用电路、或其集合或其一部分。处理器可以是任何种类的通用或专用处理器,例如,CPU、GPU、片上系统、状态机、介质处理器、专用集成电路(ASIC)、可编程逻辑阵列、可编程门阵列、现场可编程门阵列(FPGA)等。计算机或计算机系统可以包括一个或多个处理器。
还旨在包含定义本文所述的硬件配置以用于设计集成电路或用于配置可编程芯片以执行期望功能的软件,例如,HDL(硬件描述语言)软件。也就是说,可以提供计算机可读存储介质,其上编码有集成电路定义数据集形式的计算机可读程序代码,其当在集成电路制造系统中被处理时将该系统配置为制造数据处理系统,该数据处理系统被配置为执行本文所描述的任何方法,或者制造包括本文所描述的任何装置的数据处理系统。集成电路定义数据集例如可以是集成电路描述。
可以提供一种在集成电路制造系统中制造如本文所述的数据处理系统的方法。可以提供一种集成电路定义数据集,当在集成电路制造系统中被处理时,该集成电路定义数据集使得制造数据处理系统的方法被执行。
集成电路定义数据集可以采用以下形式:计算机代码,例如作为网表;用于配置可编程芯片的代码;作为硬件描述语言,其定义在任何级别下的集成电路,包括作为寄存器转移级(RTL)代码、作为诸如Verilog或VHDL之类的高级电路表示以及作为诸如OASIS(RTM)和GDSII之类的低级电路表示。可以在计算机系统处处理在逻辑上定义集成电路的更高级别表示(例如RTL),所述计算机系统被配置用于生成集成电路在包括电路元件的定义的软件环境的背景下的制造定义以及用于组合那些元件以便生成通过所述表示如此定义的集成电路的制造定义的规则。情况通常是,软件在计算机系统上执行以便定义机器,可能需要一个或多个中间用户步骤(例如提供命令、变量等)以使被配置用于生成集成电路的制造定义的计算机系统执行定义集成电路的代码,以便生成该集成电路的制造定义。
现在将关于图11描述在集成电路制造系统中处理集成电路定义数据集的示例,以将系统配置为制造数据处理系统。
图11示出了集成电路(IC)制造系统1002的示例,该集成电路制造系统1002被配置为制造本文任何示例中所述的数据处理系统。具体而言,IC制造系统1002包括布局处理系统1004和集成电路生成系统1006。IC制造系统1002被配置为接收IC定义数据集(例如,定义如本文任何示例中所述的数据处理系统),处理IC定义数据集,并根据IC定义数据集生成IC(例如,其体现本文任何示例中所述的数据处理系统)。IC定义数据集的处理将IC制造系统1002配置为制造体现如本文任何示例中所述的数据处理系统的集成电路。
布局处理系统1004被配置为接收并处理IC定义数据集以确定电路布局。根据IC定义数据集确定电路布局的方法在本领域中是已知的,并且例如可以涉及合成RTL代码以确定要生成的电路的门级表示,例如在逻辑组件(例如,NAND、NOR、AND、OR、MUX和触发器组件)方面。可以通过确定逻辑组件的位置信息来根据电路的门级表示确定电路布局。这可以自动地或在用户参与情况下完成以便优化电路布局。当布局处理系统1004已确定电路布局时,其可以将电路布局定义输出到IC生成系统1006。电路布局定义可以是例如电路布局描述。
如本领域中已知的,IC生成系统1006根据电路布局定义来生成IC。例如,IC生成系统1006可以实现用于生成IC的半导体器件制作工艺,其可以涉及光刻和化学处理步骤的多步骤序列,在此期间在由半导体材料制成的晶片上逐步创建电子电路。电路布局定义可以采用掩模的形式,所述掩模可在光刻工艺中被用于根据电路定义来生成IC。替代地,提供给IC生成系统1006的电路布局定义可以采用计算机可读代码的形式,IC生成系统2106可以使用所述计算机可读代码来形成适合于在生成IC时使用的掩模。
由IC制造系统1002执行的不同工艺可以例如由一方全部在一个位置中实现。替代地,IC制造系统1002可以是分布式系统,使得一些工艺可以在不同的位置处执行,并且可以由不同方执行。例如,可以在不同的位置中和/或由不同方执行以下步骤的阶段中的一些:(i)合成表示IC定义数据集的RTL代码以形成要生成的电路的门级表示,(ii)基于门级表示生成电路布局,(iii)根据电路布局形成掩模,以及(iv)使用掩模来制作集成电路。
在其他示例中,在集成电路制造系统处处理集成电路定义数据集可以将系统配置为制造数据处理系统,而不用处理IC定义数据集以便确定电路布局。例如,集成电路定义数据集可以定义可重构处理器(例如FPGA)的配置,并且该数据集的处理可以将IC制造系统配置为生成具有该定义的配置的可重构处理器(例如通过将配置数据加载到FPGA)。
在一些实施例中,集成电路制造定义数据集当在集成电路制造系统中被处理时,可以使集成电路制造系统生成如本文所述的设备。例如,由集成电路制造定义数据集以上面关于图11所述的方式配置集成电路制造系统可以使如本文所述的设备被制造。
在一些示例中,集成电路定义数据集可以包括在数据集处定义的硬件上或者与在数据集处定义的硬件相结合地运行的软件。在图11所示的示例中,IC生成系统还可以通过集成电路定义数据集来配置以在制造集成电路时,根据在集成电路定义数据集处定义的程序代码来将固件加载到该集成电路上或者以其他方式向集成电路提供程序代码以供与该集成电路一起使用。
在本申请中在设备、装置、模块和/或系统中(以及在本文实施的方法中)阐述的构思的实现方式当与已知实现方式相比较时可以产生性能改进。性能改进可以包括增加的计算性能、减少的等待时间、增加的吞吐量和/或降低的功耗中的一个或多个。在(例如在集成电路中)制造这样的设备、装置、模块和系统期间,可以针对物理实现方式来权衡性能改进,从而改进制造方法。例如,可以针对布局面积来权衡性能改进,从而与已知实现方式的性能匹配但是使用较少硅。例如,这可以通过以串行方式重用功能块或者在设备、装置、模块和/或系统的元件之间共享功能块来完成。相反地,可以针对改进的性能权衡在本申请中阐述的在设备、装置、模块和系统的物理实现方式方面产生改进(例如减小的硅区域)的构思。例如,这可以通过在预定义区域预算内制造模块的多个实例来完成。
本申请人特此孤立地公开本文描述的每个单独的特征以及两个或更多个这样的特征的任何组合,只要这样的特征或组合能够鉴于本领域的技术人员的公知常识总体上基于本说明书来执行,而不管这样的特征或特征的组合是否解决本文公开的任何问题。鉴于上述描述,对于本领域的技术人员而言将显然的是,可以在本发明的范围内做出各种修改。
Claims (20)
1.一种计算机实现的方法,用于匹配从由对极几何相关的相应相机视点捕获的第一图像和第二图像中所标识的特征,每个所标识的特征是由局部描述符来描述的,所述方法包括:
使用所述对极几何来定义所述第二图像中与第一特征相对应的几何约束区域,所述第一特征是在所述第一图像中由第一局部描述符表示的;
将所述第一局部描述符与所述第二图像中的特征的局部描述符进行比较,从而确定所述第一图像中的所述第一特征和所述第二图像中的相应特征之间的相应的相似性度量;
从位于所述第二图像中的所述几何约束区域中的特征标识如下项:(i)对所述第一特征的几何最佳匹配特征,以及(ii)对所述第一特征的几何次最佳匹配特征;
从所述第二图像中的任何特征标识对所述第一特征的全局最佳匹配特征;
执行对针对所述几何最佳匹配特征和所述全局最佳匹配特征所确定的相似性度量相对于第一阈值的第一比较;
执行对针对所述几何最佳匹配特征和所述几何次最佳匹配特征所确定的相似性度量相对于第二阈值的第二比较;以及
根据是否同时满足所述第一阈值和所述第二阈值,选择所述第二图像中的几何最佳匹配特征作为对所述第一图像中的所述第一特征的输出匹配。
2.根据权利要求1所述的计算机实现的方法,其中,所述选择包括:如果不满足所述第一阈值和所述第二阈值中的至少一者,则不提供输出匹配。
3.根据权利要求1或2所述的计算机实现的方法,其中,根据所述几何最佳匹配特征和所述全局最佳匹配特征的相应的相似性度量,当所述几何最佳匹配特征作为对所述第一特征的匹配不比所述全局最佳匹配特征更差由第一预定义因子定义的量时,满足所述第一阈值。
4.根据权利要求1或2所述的计算机实现的方法,其中,根据所述几何最佳匹配特征和所述几何次最佳匹配特征的相应的相似性度量,当所述几何最佳匹配特征作为对所述第一特征的匹配比所述几何次最佳匹配特征更好由第二预定义因子定义的量时,满足所述第二阈值。
5.根据权利要求1或2所述的计算机实现的方法,其中,执行所述第一比较和所述第二比较包括:计算相应的相似性度量的幅度的第一比率和第二比率,如果相应比率分别满足所述第一阈值和所述第二阈值,则同时满足所述第一阈值和所述第二阈值。
6.根据权利要求1或2所述的计算机实现的方法,其中,将所述第一局部描述符与所述第二图像中的特征的局部描述符进行比较包括形成所述第一局部描述符和所述第二图像中的每个所述特征的相应局部描述符之间的描述符距离,并且标识几何最佳匹配特征和次最佳匹配特征包括标识与所述第二图像中的所述几何约束区域中的特征相对应的最短描述符距离和次最短描述符距离。
7.根据权利要求6所述的计算机实现的方法,其中,标识所述全局最佳匹配特征包括:标识所述第一局部描述符与所述第二图像中的特征的局部描述符之间的最短描述符距离,该特征不限于位于所述几何约束区域中的那些特征。
8.根据权利要求1或2所述的计算机实现的方法,其中,所确定的每个相似性度量是所述第一局部描述符与所述第二图像的相应特征的局部描述符之间的描述符距离。
9.根据权利要求8所述的计算机实现的方法,其中,每个局部描述符是表示所述相应特征的像素的特性的向量,并且确定每个描述符距离包括在相应局部描述符之间执行向量减法并确定所产生的向量的幅度。
10.根据权利要求1或2所述的计算机实现的方法,其中,所述使用所述对极几何来定义所述第二图像中的几何约束区域包括:使用所述对极几何来导出所述第二图像中与所述第一图像中的所述第一特征相对应的对极线或对极区域,其中,所述对极线或对极区域用于定义所述几何约束区域。
11.根据权利要求10所述的计算机实现的方法,其中,所述几何约束区域包括所述第二图像在所述对极线或对极区域的预定距离内的所有像素。
12.根据权利要求11所述的计算机实现的方法,其中,所述预定距离是根据所述对极几何中的一个或多个误差度量来确定的。
13.根据权利要求11所述的计算机实现的方法,其中,所述预定距离是到所述对极线或到所述对极区域的边界的预定垂直距离,所述预定垂直距离根据所述对极几何而随着相应图像中的位置变化。
14.根据权利要求1或2所述的计算机实现的方法,其中,每个特征表示相应图像中的局部像素集,并且使用以下确定中的一个或多个来确定特征位于所述几何约束区域中:确定由该特征表示的任何像素是否位于所述几何约束区域内;确定由该特征表示的一个或多个预定像素是否位于所述几何约束区域内;确定由该特征表示的预定比例的像素是否位于所述几何约束区域中。
15.根据权利要求1或2所述的计算机实现的方法,还包括:
从所述相机视点中的一个或两个接收标识对可视范围的限制的相机数据;以及
处理所述相机数据以根据所述对极几何来标识所述第二图像中的所述几何约束区域上的边界。
16.根据权利要求15所述的计算机实现的方法,其中,针对一个或两个相机视点的所述相机数据包括:深度信息,所述深度信息指示从所述相机视点可见的最近和/或最远区域;视场信息,所述视场信息指示从所述相机视点可见的区域;所述相机视点的视锥体;以及指示所述相机视点前方和/或后方的区域的数据。
17.根据权利要求10所述的计算机实现的方法,其中,所述对极几何被用于导出对极线,并且所述方法还包括转换所述第二图像的坐标系以将所述对极线映射为平行于坐标轴之一,并且随后在经转换的坐标系中,标识位于所述第二图像中的所述几何约束区域中的特征。
18.根据权利要求1或2所述的计算机实现的方法,还包括:
使用所述对极几何来定义所述第一图像中与所述第二图像中的所述几何最佳匹配特征相对应的第二几何约束区域;
将所述几何最佳匹配特征的局部描述符与所述第一图像中的特征的局部描述符进行比较,从而确定所述第一图像中的所述第一特征和所述第二图像中的相应特征之间的相应的相似性度量;
从位于所述第一图像中的所述第二几何约束区域中的特征标识如下项:(i)对所述第二图像的所述几何最佳匹配特征的第二几何最佳匹配特征,以及(ii)对所述第二图像的所述几何最佳匹配特征的第二几何次最佳匹配特征;
从所述第一图像中的任何特征标识对所述第二图像的所述几何最佳匹配特征的第二全局最佳匹配特征;
执行对针对所述第二几何最佳匹配特征和针对所述第二全局最佳匹配特征所确定的相似性度量相对于所述第一阈值的第一比较;
执行对针对所述第二几何最佳匹配特征和针对所述第二几何次最佳匹配特征所确定的相似性度量相对于所述第二阈值的第二比较;以及
根据是否同时满足所述第一阈值和所述第二阈值,确认所述第二图像中的所述几何最佳匹配特征作为对所述第一图像中的所述第一特征的输出匹配。
19.一种数据处理系统,用于匹配从由对极几何相关的相应相机视点捕获的第一图像和第二图像中所标识的特征,每个所标识的特征是由局部描述符来描述的,所述数据处理系统包括:
几何单元,所述几何单元被配置为使用所述对极几何来定义所述第二图像中与第一特征相对应的几何约束区域,所述第一特征是在所述第一图像中由第一局部描述符表示的;
比较单元,所述比较单元被配置为将所述第一局部描述符与所述第二图像中的特征的局部描述符进行比较,从而确定所述第一图像中的所述第一特征和所述第二图像中的相应特征之间的相应的相似性度量;以及
匹配单元,所述匹配单元被配置为:
从位于所述第二图像中的所述几何约束区域中的特征标识如下项:(i)对所述第一特征的几何最佳匹配特征,以及(ii)对所述第一特征的几何次最佳匹配特征;
从所述第二图像中的任何特征标识对所述第一特征的全局最佳匹配特征;
执行对针对所述几何最佳匹配特征和针对所述全局最佳匹配特征所确定的相似性度量相对于第一阈值的第一比较;
执行对针对所述几何最佳匹配特征和针对所述几何次最佳匹配特征所确定的相似性度量相对于第二阈值的第二比较;以及
根据是否同时满足所述第一阈值和所述第二阈值,选择所述第二图像中的所述几何最佳匹配特征作为对所述第一图像中的所述第一特征的输出匹配。
20.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在计算机系统处被执行时,使得所述计算机系统执行匹配从由对极几何相关的相应相机视点捕获的第一图像和第二图像中所标识的特征的方法,每个所标识的特征是由局部描述符描述的,所述方法包括:
使用所述对极几何来定义所述第二图像中与第一特征相对应的几何约束区域,所述第一特征是在所述第一图像中由第一局部描述符表示的;
将所述第一局部描述符与所述第二图像中的特征的局部描述符进行比较,从而确定所述第一图像中的所述第一特征和所述第二图像中的相应特征之间的相应的相似性度量;
从位于所述第二图像中的所述几何约束区域中的特征标识如下项:(i)对所述第一特征的几何最佳匹配特征,以及(ii)对所述第一特征的几何次最佳匹配特征;
从所述第二图像中的任何特征标识对所述第一特征的全局最佳匹配特征;
执行对针对所述几何最佳匹配特征和针对所述全局最佳匹配特征所确定的相似性度量相对于第一阈值的第一比较;
执行对针对所述几何最佳匹配特征和针对所述几何次最佳匹配特征所确定的相似性度量相对于第二阈值的第二比较;以及
根据是否同时满足所述第一阈值和所述第二阈值,选择所述第二图像中的所述几何最佳匹配特征作为对所述第一图像中的所述第一特征的输出匹配。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1805688.7A GB2572755B (en) | 2018-04-05 | 2018-04-05 | Matching local image feature descriptors |
GB1805688.7 | 2018-04-05 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110348454A CN110348454A (zh) | 2019-10-18 |
CN110348454B true CN110348454B (zh) | 2024-04-30 |
Family
ID=62202908
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910271555.2A Active CN110348454B (zh) | 2018-04-05 | 2019-04-04 | 匹配局部图像特征描述符 |
Country Status (3)
Country | Link |
---|---|
US (3) | US10885376B2 (zh) |
CN (1) | CN110348454B (zh) |
GB (1) | GB2572755B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019019157A1 (en) * | 2017-07-28 | 2019-01-31 | Qualcomm Incorporated | INITIALIZING IMAGE SENSOR IN A ROBOTIC VEHICLE |
US11475485B2 (en) * | 2018-07-03 | 2022-10-18 | International Business Machines Corporation | Automated curation of digital information and user interface for same |
JP7240115B2 (ja) * | 2018-08-31 | 2023-03-15 | キヤノン株式会社 | 情報処理装置及びその方法及びコンピュータプログラム |
KR20210113637A (ko) * | 2019-01-09 | 2021-09-16 | 트리나미엑스 게엠베하 | 적어도 하나의 대상체의 위치를 결정하기 위한 검출기 |
EP3702985A1 (en) * | 2019-02-28 | 2020-09-02 | Accenture Global Solutions Limited | Augmented reality enabled cargo loading optimization |
CN110533720B (zh) * | 2019-08-20 | 2023-05-02 | 西安电子科技大学 | 基于联合约束的语义slam系统及方法 |
WO2021146031A1 (en) * | 2020-01-19 | 2021-07-22 | Udisense Inc. | Measurement calibration using patterned sheets |
GB2593227A (en) * | 2020-03-20 | 2021-09-22 | Sony Corp | Image processing method and apparatus |
CN112767230A (zh) * | 2021-02-26 | 2021-05-07 | 清华大学 | Gpu图神经网络优化方法及装置 |
CN113516184B (zh) * | 2021-07-09 | 2022-04-12 | 北京航空航天大学 | 一种图像特征点匹配的误匹配剔除方法及系统 |
US11875496B2 (en) | 2021-08-25 | 2024-01-16 | Genpact Luxembourg S.à r.l. II | Dimension estimation using duplicate instance identification in a multiview and multiscale system |
CN115471769B (zh) * | 2022-08-16 | 2023-04-07 | 上海航翼高新技术发展研究院有限公司 | 一种工具柜中工具存在状态的视觉识别方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101819680A (zh) * | 2010-05-12 | 2010-09-01 | 上海交通大学 | 图像匹配点对的检测方法 |
CN105976399A (zh) * | 2016-04-29 | 2016-09-28 | 北京航空航天大学 | 一种基于sift特征匹配的运动目标检测方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU7989991A (en) * | 1990-05-29 | 1991-12-31 | Axiom Innovation Limited | Machine vision stereo matching |
GB9716240D0 (en) * | 1997-07-31 | 1997-10-08 | Tricorder Technology Plc | Scanning apparatus and methods |
JP4593730B2 (ja) * | 2000-06-26 | 2010-12-08 | 株式会社トプコン | ステレオ画像の測定装置 |
JP2005037378A (ja) * | 2003-06-30 | 2005-02-10 | Sanyo Electric Co Ltd | 奥行計測方法と奥行計測装置 |
KR101706216B1 (ko) * | 2012-04-03 | 2017-02-13 | 한화테크윈 주식회사 | 고밀도 삼차원 영상 재구성 장치 및 방법 |
US9965861B2 (en) * | 2014-12-29 | 2018-05-08 | Intel Corporation | Method and system of feature matching for multiple images |
CN106203342A (zh) | 2016-07-01 | 2016-12-07 | 广东技术师范学院 | 基于多角度局部特征匹配的目标识别方法 |
WO2018047687A1 (ja) * | 2016-09-12 | 2018-03-15 | パナソニックIpマネジメント株式会社 | 三次元モデル生成装置及び三次元モデル生成方法 |
WO2018125939A1 (en) | 2016-12-30 | 2018-07-05 | DeepMap Inc. | Visual odometry and pairwise alignment for high definition map creation |
US10592771B2 (en) * | 2016-12-30 | 2020-03-17 | Accenture Global Solutions Limited | Multi-camera object tracking |
US11025887B2 (en) * | 2017-02-27 | 2021-06-01 | Sony Corporation | Field calibration of stereo cameras with a projector |
CN107730543B (zh) | 2017-09-08 | 2021-05-14 | 成都通甲优博科技有限责任公司 | 一种半稠密立体匹配的快速迭代计算方法 |
-
2018
- 2018-04-05 GB GB1805688.7A patent/GB2572755B/en active Active
-
2019
- 2019-04-04 CN CN201910271555.2A patent/CN110348454B/zh active Active
- 2019-04-05 US US16/376,003 patent/US10885376B2/en active Active
-
2020
- 2020-12-01 US US17/108,145 patent/US11756222B2/en active Active
-
2023
- 2023-09-11 US US18/244,516 patent/US20240029287A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101819680A (zh) * | 2010-05-12 | 2010-09-01 | 上海交通大学 | 图像匹配点对的检测方法 |
CN105976399A (zh) * | 2016-04-29 | 2016-09-28 | 北京航空航天大学 | 一种基于sift特征匹配的运动目标检测方法 |
Non-Patent Citations (2)
Title |
---|
多视点立体图像虚拟视点生成算法研究与实现;张蔷;《中国优秀硕士学位论文全文数据库 信息科技辑》;正文第三-四章 * |
结合亮度序局部特征描述的图匹配算法;鲍文霞;胡根生;梁栋;张艳;;哈尔滨工程大学学报;36(03);第399-403页 * |
Also Published As
Publication number | Publication date |
---|---|
GB201805688D0 (en) | 2018-05-23 |
US10885376B2 (en) | 2021-01-05 |
US11756222B2 (en) | 2023-09-12 |
US20210081704A1 (en) | 2021-03-18 |
US20240029287A1 (en) | 2024-01-25 |
GB2572755A (en) | 2019-10-16 |
CN110348454A (zh) | 2019-10-18 |
GB2572755B (en) | 2020-06-10 |
US20190311214A1 (en) | 2019-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110348454B (zh) | 匹配局部图像特征描述符 | |
CN107810522B (zh) | 实时、基于模型的对象检测及姿态估计 | |
US11615552B2 (en) | Crossing point detector, camera calibration system, crossing point detection method, camera calibration method, and recording medium | |
JP5384746B2 (ja) | プルーニング機能、画像スケーリング、および、空間制約付き特徴マッチングによる画像認識アルゴリズムの性能の改善 | |
US9378431B2 (en) | Method of matching image features with reference features and integrated circuit therefor | |
JP5705147B2 (ja) | 記述子を用いて3dオブジェクトまたはオブジェクトを表す方法 | |
JP2011133273A (ja) | 推定装置及びその制御方法、プログラム | |
US20190259177A1 (en) | System and method for simultaneous consideration of edges and normals in image features by a vision system | |
EP3383038B1 (en) | Camera calibration | |
JP7219561B2 (ja) | 車載環境認識装置 | |
CN110136048B (zh) | 一种图像配准方法及系统、存储介质及终端 | |
JP2016513842A (ja) | 異なる精度のソフトウェアアルゴリズム及びハードウェアアルゴリズムを実施する評価層を備えた画像プロセッサ | |
CN116977671A (zh) | 基于图像空间定位的目标跟踪方法、装置、设备及存储介质 | |
EP3352136B1 (en) | Crossing point detector, camera calibration system, crossing point detection method, camera calibration method, and recording medium | |
GB2583839A (en) | Matching local image feature descriptors | |
CN114998755A (zh) | 在遥感图像中地标匹配的方法及装置 | |
JP6843552B2 (ja) | 画像処理装置、画像処理方法およびプログラム。 | |
JP5464671B2 (ja) | 画像処理装置、画像処理方法および画像処理プログラム | |
WO2014192061A1 (ja) | 画像処理装置、画像処理方法及び画像処理プログラム | |
Rastgar | Robust self-calibration and fundamental matrix estimation in 3D computer vision | |
WO2021100681A1 (ja) | 三次元モデル生成方法及び三次元モデル生成装置 | |
CN117745778A (zh) | 一种点云配准实现方法、装置、存储介质及电子设备 | |
JP2022186523A (ja) | 3次元点群処理装置、3次元点群処理方法、及び3次元点群処理プログラム | |
CN115147619A (zh) | 一种优化图像添加次序的增量式运动恢复结构方法 | |
JP2017009477A (ja) | 3次元形状計測装置、3次元形状計測方法および3次元形状計測プログラム |
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 | ||
GR01 | Patent grant |