CN109154501B - 视觉导航系统中的几何匹配 - Google Patents
视觉导航系统中的几何匹配 Download PDFInfo
- Publication number
- CN109154501B CN109154501B CN201780029285.3A CN201780029285A CN109154501B CN 109154501 B CN109154501 B CN 109154501B CN 201780029285 A CN201780029285 A CN 201780029285A CN 109154501 B CN109154501 B CN 109154501B
- Authority
- CN
- China
- Prior art keywords
- features
- feature
- subset
- map
- previous
- 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
- 230000000007 visual effect Effects 0.000 title claims description 24
- 230000009466 transformation Effects 0.000 claims abstract description 56
- 238000003384 imaging method Methods 0.000 claims abstract description 10
- 238000000034 method Methods 0.000 claims description 56
- 238000013139 quantization Methods 0.000 claims description 19
- 238000013507 mapping Methods 0.000 claims description 8
- 238000007670 refining Methods 0.000 claims description 3
- 238000005259 measurement Methods 0.000 description 35
- 230000015654 memory Effects 0.000 description 31
- 238000004891 communication Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 9
- 230000003287 optical effect Effects 0.000 description 7
- 238000011002 quantification Methods 0.000 description 6
- 238000013519 translation Methods 0.000 description 5
- 230000001413 cellular effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- 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
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/10—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
- G01C21/12—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
- G01C21/16—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
- G01C21/165—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
- G01C21/1652—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments with ranging devices, e.g. LIDAR or RADAR
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/10—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
- G01C21/12—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
- G01C21/16—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
- G01C21/165—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
- G01C21/1654—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments with electromagnetic compass
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/10—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
- G01C21/12—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
- G01C21/16—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
- G01C21/165—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
- G01C21/1656—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments with passive imaging devices, e.g. cameras
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3859—Differential updating map data
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
-
- 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/579—Depth or shape recovery from multiple images from motion
-
- 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/757—Matching configurations of points or features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/38—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
- G01S19/39—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/42—Determining position
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/04—Indexing scheme for image data processing or generation, in general involving 3D image data
-
- 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/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
Abstract
产生包括本地特征和所述本地特征的3D方位的第一地图,所述本地特征包括当前图像中的可见特征和共同可见的特征的对应集合。可确定包括先前特征和所述先前特征的3D方位的第二地图,其中每一先前特征:在先于所述本地特征中的任一个的首次成像的时间被首次成像,并且处于至少一个本地特征的阈值距离内。通过将所述第一地图和所述第二地图进行比较,确定包括所述第一地图中的先前经成像本地特征的第一子集和所述第二地图中的所述先前特征的对应的第二子集,其中所述第一子集中的每一本地特征对应于所述第二子集中的相异先前特征。确定将本地特征的子集映射到先前特征的子集的变换。
Description
相关申请案的交叉引用
本申请案主张2016年6月9日申请的标题为“视觉导航系统中的几何匹配(Geometric Matching In Visual Navigation Systems)”的美国非临时申请案第15/178,505号的权益和优先权。以上申请案全部转让给本案受让人,且其全部以引用的方式并入本文中。
技术领域
本文中所揭示的标的物大体上涉及视觉导航系统,且特定来说,涉及用于维持视觉导航系统中的准确度和精确度的系统和方法。
背景技术
智能手机和其它移动装置日渐用于视觉导航。在视觉导航(VN)系统(VNS)中,由相机捕获的视觉惯性测距(VIO)或基于视觉的定位(VBP)系统(在本文中统称为“VNS”)图像结合其它传感器或无线测量用于方位确定和/或估计移动装置的轨迹。
术语“测距(odometry)”是指基于来自传感器的测量值对位置随时间的改变的估计。如本文中所使用,术语“视觉惯性测距”(VIO)是指使用图像和其它基于传感器的测量的组合的测距以及基于图像的测距两者。在VIO中,可逐帧追踪若干视觉特征,所述特征可用于确定相机相对运动的准确估计值。
在传统的VNS中,使用图像之间的基于视觉或外观的特征匹配确定移动装置的位姿。传统的VNS遭遇“位姿漂移”(或漂移),其描述移动装置的实际位置与移动装置的VN确定的位置之间的误差。一种减小或缓解位姿漂移的方法为“环路闭合”。位姿漂移或漂移由于个别帧的位姿计算的残留误差并且从此类误差逐帧累计而发生。在环路闭合中,移动装置可确定在某一任意时间长度之后,当前观察到的特征是否对应于其轨迹上的某一先前观察到的特征。接着可基于以下中的一或多个校正移动装置的位置和/或轨迹:当前相机位姿、先前估计的特征方位和/或对应的先前相机位姿,进而减小位姿漂移的影响。然而,随着时间长度增加,需要视觉上匹配以确定环路闭合事件是否已发生的特征点的搜索空间显著地增加,由此限制适用性。此外,因为特征的外观可基于视点和/或照明改变,仅基于基于视觉或外观的特征匹配的环路闭合可具有挑战性。
发明内容
在一些实施例中,一种在用户装备(UE)上的处理器实施的方法可包括:部分地基于当前图像帧的所估计的相机位姿,产生包括本地特征和所述本地特征的3D方位的第一地图,其中所述本地特征包括所述当前图像帧中的多个可见特征和对应于所述多个可见特征的共同可见的特征的集合;确定包括先前特征和对应于所述先前特征的3D方位的第二地图,其中每一先前特征在先于所述本地特征中的任一个的首次成像的时间被首次成像,且其中每一先前特征在至少一个本地特征的阈值距离内;基于所述第一地图与所述第二地图的比较,确定包括所述第一地图中的先前经成像本地特征的第一子集和所述第二地图中的所述先前特征的对应的第二子集,其中所述第一子集中的每一本地特征对应于所述第二子集中的相异先前特征;和确定变换,其中所述变换将所述本地特征的所述第一子集映射到所述先前特征的所述第二子集。
在另一方面中,一种用户装备(UE)可包括:能够捕获图像的至少一个图像传感器;和耦合到所述图像传感器的处理器,其中所述处理器被配置成:部分地基于当前图像帧的所估计的相机位姿,产生包括本地特征和所述本地特征的3D方位的第一地图,其中所述本地特征包括所述当前图像帧中的多个可见特征和对应于所述多个可见特征的共同可见的特征的集合;确定包括先前特征和对应于所述先前特征的3D方位的第二地图,其中每一先前特征在先于所述本地特征中的任一个的首次成像的时间被首次成像,且其中每一先前特征在至少一个本地特征的阈值距离内;基于所述第一地图与所述第二地图的比较,确定包括所述第一地图中的先前经成像本地特征的第一子集和所述第二地图中的所述先前特征的对应的第二子集,其中所述第一子集中的每一本地特征对应于所述第二子集中的相异先前特征;和确定变换,其中所述变换将所述本地特征的所述第一子集映射到所述先前特征的所述第二子集。
在另一方面,一种用户装备(UE)可包括:能够捕获图像的图像感测装置;和耦合到所述图像感测装置的处理装置,其中所述处理装置包括:能够捕获图像的图像感测装置;用于部分地基于当前图像帧的经估计相机位姿,产生包括本地特征和所述本地特征的3D方位的第一地图的装置,其中所述本地特征包括所述当前图像帧中的多个可见特征和对应于所述多个可见特征的共同可见的特征的集合;用于确定包括先前特征和对应于所述先前特征的3D方位的第二地图的装置,其中每一先前特征在先于所述本地特征中的任一个的首次成像的时间被首次成像,且其中每一先前特征在至少一个本地特征的阈值距离内;用于基于所述第一地图与所述第二地图的比较,确定包括所述第一地图中的先前经成像本地特征的第一子集和所述第二地图中的所述先前特征的对应的第二子集的装置,其中所述第一子集中的每一本地特征对应于所述第二子集中的相异先前特征;和用于确定变换的装置,其中所述变换将所述本地特征的所述第一子集映射到所述先前特征的所述第二子集。
在另一方面中,一种非暂时性计算机可读媒体可包括指令,所述指令在由处理器执行时致使所述处理器:部分地基于当前图像帧的所估计的相机位姿,产生包括本地特征和所述本地特征的3D方位的第一地图,其中所述本地特征包括所述当前图像帧中的多个可见特征和对应于所述多个可见特征的共同可见的特征的集合;确定包括先前特征和对应于所述先前特征的3D方位的第二地图,其中每一先前特征在先于所述本地特征中的任一个的首次成像的时间被首次成像,且其中每一先前特征在至少一个本地特征的阈值距离内;基于所述第一地图与所述第二地图的比较,确定包括所述第一地图中的先前经成像本地特征的第一子集和所述第二地图中的所述先前特征的对应的第二子集,其中所述第一子集中的每一本地特征对应于所述第二子集中的相异先前特征;和确定变换,其中所述变换将所述本地特征的所述第一子集映射到所述先前特征的所述第二子集。
所述揭示的方法可由一或多个UE的移动站、移动装置、机器人、包含无人机的车辆等使用视觉惯性测距执行。所揭示的实施例还涉及由处理器使用非暂时性计算机可读媒体或计算机可读存储器创建、存储、存取、读取或修改的软件、固件和程序指令。
附图说明
图1示出说明根据所揭示实施例的能够支持VNS功能的UE的某些示范性特征的示意性框图。
图2A示出起始于位置L1处的UE 100的实际轨迹和估计轨迹(由虚线所示)。
图2B示出在各个相机位置处所捕获的图像帧序列中可见的特征点。
图3示出用于以与所揭示的实施例一致的方式部分地基于几何信息的重新定位的示范性方法300的流程图。
图4示出通过将3D体积400划分成立方体获得的3D体积400的示范性量化的示意性表示。
图5A示出与特征相关联的示范性特征记录500。
图5B示出与经量化3D空间的每一单元相关联的量化记录550。
图6说明从第一地图中的本地特征的子集到第二地图中的先前特征的第二子集的变换600。
图7示出用于以与所揭示的实施例一致的方式部分地基于几何信息的重新定位的示范性方法的流程图。
具体实施方式
在地图绘制和/或导航系统中,术语“测距”是指基于来自传感器的测量值对位置随时间的改变的估计。在VNS中,可逐帧追踪若干视觉特征,所述特征可用于确定相机相对运动的准确估计值。然而,VNS遭遇位姿漂移,所述位姿漂移可累计并且除非经校正否则逐图像帧逐渐增加。位姿漂移描述移动装置的实际位置与移动装置的VNS确定的位置之间的误差。位姿漂移或漂移由于个别帧的位姿计算的残留误差并且从此类误差逐帧累计而发生。一种减小或缓解位姿漂移的方法为“环路闭合”。在环路闭合中,移动装置可确定在某一任意时间长度之后,当前观察到的特征是否对应于其轨迹上的某一先前观察到的特征。
所揭示实施例涉及环路闭合的确定或VNS中的“重新定位”。在一些实施例中,VNS可创建和/或维持3维(3D)地图,其可包含观察到的特征的3D位置。部分地基于场景中的当前观察到的特征,VNS可确定最近观察到的特征的子集。最近观察到的特征的子集可与在某一先前时间处观察到的在空间上或在几何形状上邻近于所述最近观察到特征的先前特征匹配。可例如基于3D地图确定特征的空间接近度。
对于给定图像特征,位姿漂移通常不受同时或在某一短时间时间间隔内已观察到的附近特征的估计位置的不准确性影响。因此,在一些实施例中,刚性变换可用以基于最近观察到的特征的子集与在某一较早时间观察到的先前特征的集合之间的对应关系的程度确定是否已发生环路闭合事件。在一些实施例中,可基于估计的特征在空间上的方位对所述特征分组。因此,空间接近度可用以促进先前观察到的特征的候选集的确定以用于与最近观察到的特征的子集进行比较。在其中将最近特征的集合映射到其先前观察到的对应物的刚性变换为纯平移的情况下,在一些实施例中,可使用穷举搜索精简候选集以获得匹配最近观察到的特征的子集的对应特征的集合。在一些实施例中,可使用基于随机样本一致性(RANSAC)的技术精简候选集。在一些实施例中,可另外和/或结合上述技术使用基于外观的特征性质或描述符精简候选匹配的集合。在一些实施例中,可使用各种稳健性估计技术、霍夫变换或类似方法获得匹配最近观测到的特征的子集的对应特征的集合。在下文相对于图进一步描述这些和其它实施例。
术语“用户装置(UD)”或“用户装备(UE)”或在本文中可互换地使用并且可指代一种装置,例如蜂窝式或其它无线通信装置、个人通信系统(PCS)装置、个人导航装置(PND)、个人信息管理器(PIM)、个人数字助理(PDA)、手提式计算机或其它能够接收无线通信和/或导航信号的合适的移动装置。术语还意在包含例如通过短程无线、红外、有线连接或其它连接与个人导航装置(PND)通信的装置,不管在所述装置或所述PND处是否发生卫星信号接收、辅助数据接收和/或位置相关的处理。UE可表示移动电话、记事本型计算机或手提式计算机,或其可为收集用于提供实时位置和/或地图创建目的的测量值集合的车辆。
另外,术语UD、UE、“移动站”、“移动装置”或“目标”意在包含所有装置,包含无线和有线通信装置、计算机、手提式计算机等,其能够例如经由因特网、Wi-Fi、蜂窝式无线网络、DSL网络、封包电缆网络或其它网络与服务器通信,且不管在所述装置处、在服务器处或在与所述网络相关联的另一装置处是否发生卫星信号接收、辅助数据接收和/或与位置有关的处理。上文的任何可操作组合也被视为“用户装置”。
图1示出说明能够支持VNS功能的UE 100的某些示范性特征的示意性框图。VNS功能可包含视觉导航、VIO和/或VBP中的一或多个。在一些实施例中,VNS功能可基于基于传感器的测量值的组合,其可包含图像传感器、相机或其它基于图像的技术。
UE 100可例如包含一或多个处理器150、存储器130、收发器110(例如,无线网络接口)和图像传感器/相机180(在下文“相机180”),和/或惯性测量单元(IMU)170。在一些实施例中,UE 100可以任选地包含GNSS或卫星定位系统(SPS)接收器140。在一些实施例中,UE100也可以任选地或另外包含传感器185,其可包括以下中的一或多个:磁力计、高度计、气压计和各种其它传感器。在一些实施例中,UE 100可包含非暂时性计算机可读媒体160、显示器190和存储器130,其可用一或多个连接120(例如,总线、线、光纤、链接等)可操作地连接到彼此。在某些实例实施方案中,UE 100的全部或部分可呈芯片集等形式。
在其中UE 100包含SPS接收器140的实施例中,可使SPS接收器140能够接收与一或多个SPS资源相关联的信号。接收的GNSS/SPS信号可存储在存储器130中和/或供处理器150用以确定UE 100的位置。在一些实施例中,SPS接收器可包含码相位接收器和载波相位接收器,其可测量载波相关信息。与其携载的伪随机噪声(PRN)(码相位)序列相比频率通常高得多的载波可有助于更准确的位置确定。术语“码相位测量”指代使用粗略获取(C/A)码接收器的测量,其使用PRN序列中所含有的信息计算UE 100的位置。术语“载波相位测量”指代使用载波相位接收器的测量,其使用载波信号计算位置。载波信号可采取(例如针对GPS)1575.42MHz下的信号L1(其携载状态消息和用于定时的伪随机码)和1227.60MHz下的L2信号(其携载更精确的军事伪随机码)的形式。在一些实施例中,当符合质量参数的GNSS信号可用时,载波相位测量可用于结合码相位测量和差分技术确定位置。载波相位测量与微分校正的一起使用可产生辅助计量位置准确性。然而,即使在其中UE 100配备有SPS接收器140的实施例中,GNSS测量可能在多个情境中不可用且UE 100可替代地或另外使用VNS进行定位、测距和/或导航应用。
收发器110可例如包含能够通过一或多种类型的无线通信网络发射一或多个信号的发射器112以及用以接收通过所述一或多种类型的无线通信网络发射的一或多个信号的接收器114。无线通信网络可包含例如无线广域网(WWAN)(包含蜂窝式网络)和/或无线局域网(WLAN)。
在一些实施例中,UE 100可包括光学传感器(例如CCD或CMOS传感器)和/或相机180。在一些实施例中,光学传感器可包含或耦合到光检测与测距(LIDAR)单元/激光器,其具有包含扫描器、光检测器和接收器电子装置的相关联器械。光学传感器/相机在下文指代“相机180”。相机180可将光学图像转换成电子或数字图像并且可将所捕获图像发送到处理器150。在一些实施例中,相机180可被单独收容,并且可操作地耦合到显示器190、处理器150和/或UE 100中的其它功能单元。
在一些实施例中,UE 100还可包含惯性测量单元(IMU)170。在一些实施例中,IMU170可包括3轴加速计、3轴陀螺仪和/或磁力计,其可将速度、取向和/或其它位置相关信息提供给处理器150。在一些实施例中,IMU 170可被配置成测量和输出所测量的信息以同步到相机180对每一图像帧的捕获和/或UE 100中的传感器185进行的测量。在一些实施例中,处理器150可部分地使用IMU 170的输出确定UE 100的位置和取向。
术语“测量集”用以指由UE在测量方位在一时间点或在时间点的某一指定时间间隔内执行的信号测量。进行的信号测量可与VN、地图绘制和/或位置确定有关。进行的信号测量也可取决于UE 100、UE 100的能力、环境特性和/或可用于UE 100在特定方位/时间进行的测量的信号特性。通常,测量集可包括VIO测量(例如,基于所捕获的图像或LIDAR测量)以及IMU测量,其中测量集的每一元素可能已记录在时间点的某一指定时间间隔内。由UE100所记录的测量集可存储在UE 100上的存储器130中。
可使用硬件、固件和软件的组合来实施处理器150。在一些实施例中,处理器150包含计算机视觉(CV)组件155(在下文为“CV 155”),其可实施多种图像处理、视觉导航和计算机视觉功能。
在一些实施例中,相机180可包含多个相机、前置和/或后置相机、广角相机,且还可并有CCD、CMOS和/或其它传感器。相机180可为静态相机和/或摄像机,可捕获环境的一系列2维(2D)静止和/或视频图像帧,并将所捕获的图像帧发送到处理器150。在一些实施例中,相机180可为佩戴式相机,或外部相机,其可操作地耦合到UD 100中的其它功能单元但与其分开收容。在一个实施例中,由相机180捕获的图像可呈原始的未经压缩格式,且可在经处理和/或存储在存储器160中之前进行压缩。在一些实施例中,图像压缩可由处理器150(例如,由CV 155)使用无损或有损压缩技术执行。
在一些实施例中,相机180可为深度感测相机或可耦合到深度传感器。术语“深度传感器”用以指代可用以独立地和/或结合相机180获得环境的深度信息的功能单元。在一些实施例中,可包括RGBD相机,除了色彩(RGB)图像之外,当启用深度传感器时,其还可捕获每像素深度(D)信息。作为另一实例,在一些实施例中,相机110可呈3D飞行时间(3DTOF)相机的形式。在具有3DTOF相机110的实施例中,深度传感器可呈耦合到3DTOF相机110的频闪光的形式,其可照亮场景中的物件,且反射光可由相机110中的CCD/CMOS传感器捕获。可通过测量光脉冲行进到目标且回到传感器所花时间来获得深度信息。在一些实施例中,UE100可包含或耦合到LIDAR传感器,其可提供测量值以估计UE 100在两个方位之间的相对位移。
作为另一实例,深度传感器可呈耦合到相机110的光源的形式。在一个实施例中,光源可将可由一或多个窄频带的光组成的结构化或纹理化的光图案投影到场景中的物件上。接着可通过利用由物件的表面形状引起的经投影图案的几何失真来获得深度信息。在一个实施例中,可从配准(register)到RGB相机的例如红外线结构光投影仪与红外线相机的组合的立体传感器获得深度信息。在一些实施例中,相机180可为能够捕获3维(3D)图像的立体相机。在另一实施例中,相机180可包含能够估计深度信息的深度传感器。举例来说,深度传感器可形成无源立体视觉传感器的部分,其可使用两个或更多个相机获得场景的深度信息。可使用捕获的场景中的两个相机共同的点的像素坐标连同相机位姿信息和/或三角测量技术来获得每像素深度信息。在一些实施例中,当深度传感器不在使用中时,可停用深度传感器。举例来说,当不使用时,可将深度传感器置于待用模式中或断电。在一些实施例中,处理器150可在一或多个时间点停用(或启用)深度感测。
处理器150也可以执行用以处理由相机180捕获的图像帧的软件。举例来说,处理器150和/或CV 155可能能够处理从相机180接收的一或多个图像帧以确定相机180和/或UE100的位姿,从而基于从相机180接收的图像实施各个计算机视觉和图像处理算法和/或执行VIO。相机180的位姿是指相机180相对于参考帧的位置和取向。在一些实施例中,可确定6自由度(6-DOF)的相机位姿,所述自由度是指三个平移分量(其可由参考帧的X、Y、Z坐标给出)和三个角度分量(例如相对于同一参考帧的侧倾、俯仰和横摆)。
在一些实施例中,可确定和/或由处理器150使用基于由相机180捕获的图像帧的视觉跟踪解决方案跟踪相机180和/或UE 100的6-DOF位姿。在一些实施例中,可使用专用电路例如专用集成电路(ASIC)、数字信号处理器(DSP)和/或专用处理器实施处理器150和/或CV 155。
在一些实施例中,CV 155可实施各种计算机视觉和/或图像处理方法,例如3D重建、图像压缩和滤波。在一些实施例中,CV 155可执行视觉导航、VIO、基于视觉的定位等。在一些实施例中,CV 155实施的方法可基于由相机180捕获的色彩或灰度级图像数据,其可用以产生相机的6-DOF位姿测量的估计值。
在一些实施例中,CV 155和/或处理器150可识别3维(3D)的视觉上突出点或显著特征(在下文为“特征”)。所述特征可包含所捕获图像帧中的可在后续图像帧中跟踪的关键点或兴趣点、拐点、边缘、图像贴片和/或特征描述符。在一些实施例中,可使用描述符表示显著图像特征,所述描述符可采取本领域中众所周知的尺度不变特征变换(SIFT)、加速稳健描述符(SURF)、加速段测试特征(FAST)等的形式。在一些实施例中,显著图像特征可与几何信息一起存储在存储器130中,所述几何信息可包含存储的每一显著图像特征的经估计3D位置。在一些实施例中,可用每一特征被首次观测到的时间为所述特征加时间戳。在一些实施例中,图像或对象检测器可在稍后点使用存储的图像描述符和与每一特征相关联的对应几何信息确定和/或更新UE的位姿。除了与所揭示的实施例一致的几何或空间特征匹配方式之外,CV 155也可以实施基于计算机视觉的特征跟踪和匹配。
在一些实施例中,处理器150可用以例如通过检测“环路闭合”执行重新定位。在图2A中说明环路闭合,其示出起始于位置L1 205处的UE 100的实际轨迹220和UE 100的估计的轨迹230(由虚线示出)。在UE沿着轨迹220行进时,UE 100可使用VIO部分地基于多个特征点n图像例如与某一对象X 235相关联的特征点估计其位置。然而,VIO遭遇漂移。因此,随着漂移误差累计,估计的轨迹230偏离实际轨迹220。因此,当UE 100处于位置L2时,在UE 100的实际位姿与UE 100的估计位姿之间存在偏离,其被称为漂移。在图2A中,在时间t2处的漂移240是所估计位置L2'210与实际位置L2 215之间的差。由于漂移随时间累计,为最小化漂移,在一些实施例中,处理器150可通过基于先前观测到的特征校正漂移来执行环路闭合或重新定位。
举例来说,可使用重新定位确定先前已经观测到对象X 235。可使用先前估计的对象X的方位和与先前观测相关联的UE 100的位姿校正在时间t2的漂移240和UE 100的所估计位置L2'210。虽然常规重新定位是基于视觉特征匹配,但仅使用视觉技术用于重新定位在计算上可为昂贵的。另外,因为特征可从不同视点呈现为不同的,所以仅基于基于外观的技术的重新定位有时可产生不准确的结果。
在一些实施例中,处理器150和/或CV 155可确定:(i)相机位置的有序序列,(ii)与每一相机位置相关联的多个特征,和(iii)相机位置的多个特征中的每一个的对应3D位置。在一些实施例中,特征以及与每一特征相关联的几何信息(其可包含特征的3D位置)可存储在数据库、表等中,并且用以构建环境的一或多个地图。在一些实施例中,可在UE 100在环境内移动时实时构建所述地图。
在一些实施例中,地图可包含被称为“本地地图”的第一地图,其可包含当前对相机180可见的特征和共同可见的特征。相对于第一特征的术语“共同可见”是指从其中第一特征也可见的相机位姿可见的那些特征。在一些实施例中,对于当前图像帧中的每一特征,可确定对应的共同可见特征的集合。对于本地地图中的特征fi,共同可见特征的对应集合Ci经确定为从所以先前相机位姿可见的那些特征,特征fi也从所述先前相机位姿可见。本地特征地图(M)则可写为M=F∪C,其中F={fi|i=1,2...n}是n个当前可见的特征的集合,且C=C1∪C2∪...∪Cn是共同可见的特征的对应集合。C可获得为对应于本地特征fi的共同可见的特征的集合的并集Ci。
在一些实施例中,所述地图可另外包含被称为“先前地图”的第二地图S,其可包含在比看见M中的特征的视点更早的时间从相机位姿看见的每个特征。
因为可在一些帧序列上跟踪当前帧中的特征fi∈F,所以可基于当前帧中可见的特征和可存在于一或多个先前帧序列中的特征获得每一fi的共同可见的特征的对应集合Ci。举例来说,算法可记录首次看见特征fi∈F的时间和/或帧并且构建所述帧的共同可见的特征的集合。当在后续帧中观察到特征时,可添加额外的共同可见的特征以获得集合Ci。在一些实施例中,可执行重新定位以确定在后续不连续帧中呈现的某一特征fi对应于先前已出现的特征fj。在一些实施例中,在重新定位建立对应关系之前,特征fi可处理为与特征fj相异的特征。
图2B示出在各个相机位置处所捕获的图像帧序列中可见的特征点。图2B说明对应本地特征地图MT和相机位姿282处的示范性当前图像帧T 255的先前地图ST的一部分。
如图2B中所示,本地特征集合FT={f1,f2,f3,f4},其中f1、f2、f3和f4是在相机位姿282处的当前图像帧T 255中可见的特征。如图2B中所示,特征f2,f3和f4也在图像帧T-1 260中与相机位姿284处的特征p1和p2一起可见。因此,特征f2、f3和f4以及特征p1和p2为共同可见的特征。另外,如图2B中所示,特征f1、f2、f3或f4(在当前图像帧T 255中可见)中无任一个在分别处于相机位姿286、288、290和292处的图像帧T-2265、T-3 270、T-4 275或T-5 280中可见。因此,对于相机位置282处的图像帧T 255,由MT={f1,f2,f3,f4,p1,p2}给出对应本地特征地图。
此外,如图2B中所示,在相机位置286处的图像帧T-2 265中,特征p1和p2(其处于本地特征地图MT中)与特征p3、p4和p5一起可见。特征p3、p4和p5不处于本地地图中,这是因为其在图像帧T 255中或在其中特征f1、f2、f3或f4中的至少一个可见的图像帧中不可见。
类似地,在相机位置288处的图像帧T-3 270中,特征p3、p4和p5可见。特征p3、p4和p5不在本地地图中,这是因为其在图像帧T 255中或在其中特征f1、f2、f3或f4中的至少一个可见的图像帧中不可见。
在相机位置290处的图像帧T-4 275中,特征p4、p5和p6可见。特征p4、p5和p6不在本地地图中,这是因为其在图像帧T 255中或在其中特征f1、f2、f3或f4中的至少一个可见的图像帧中不可见。
在图2B中,特征p3、p4和p5也不处于先前地图ST中,这是因为其与特征p1和p2一起在位姿286处在帧T-2中被看见,所述特征处于本地特征地图MT中。如上所概述,先前地图ST包含在比看见MT中的特征的最早视点更早的时间从相机位姿看见的特征。因此,在位姿288和290处在图像帧T-3 270和T-4 275中看见的特征p3、p4和p5既不在本地地图MT中(因为其在图像帧T 255中或在其中特征f1、f2、f3或f4中的至少一个可见的的图像帧中不可见),也不在先前地图中(因为其在位姿286处在图像帧T-2中与MT中的特征p1和p2一起被看见)。特征p3、p4和p5可例如为第三地图的部分,其可为包含当前时间看见的所有特征的全局地图G。全局地图G因此可包含本地特征地图M、先前地图S中的特征以及既不在本地特征地图M中也不在先前地图S中的其它特征。
在图2B中,在分别处于位姿290和292处的图像帧T-4 275和T-5 280中看见的特征p6以及在位姿292处的图像帧T-5 280中看见的特征p7和p8处于先前地图ST中,这是因为其在比看见MT中的特征的最早时间更早的时间处被看见。在一些实施例中,在图像帧T-5 280之前的图像帧中的特征也可为先前地图ST的部分。在一些实施例中,本地特征地图MT和全局先前地图ST中的每一特征可与对应3D位置相关联。在一些实施例中,可例如基于在首次观测到一特征的时间的相机位姿,确定和存储对应于所述特征的3D位置。此外,在一些实施例中,可在环路闭合之后校正或更新一或多个特征的所确定的和/或存储的3D位置。
在一些实施例中,可基于特征或特征点在本地特征地图M、先前地图S和/或全局3D地图G中的一或多个中的位置索引所述特征或特征点。举例来说,可量化全局3D地图G,且正被UE 100勘察的3D空间可包括量化单元。在一些实施例中,量化单元可采取立方体的形式,使得正被勘察的3D空间可被视为多个立方体。在一些实施例中,可基于观测到的特征所在的立方体和/或一或多个相邻立方体,索引所述观测到的特征。举例来说,可当特征处于立方体之间的边界附近时用多于一个立方体,或基于与特征的方位相关联的不确定度,来索引特征。
因此,当观测到一特征时,可确定其方位且所述特征可添加到环境的地图,且与特征的方位相关联的不确定度可用以确定所述特征可位于其中的一或多个立方体。所述特征可与对应于立方体识别符的关键字相关联。相反地,在一些实施例中,每一立方体可与一或多个特征识别符相关联。因此给定一特征,可获得所述特征可位于其中的立方体,且相反地,给定一立方体,可确定位于所述立方体中的特征。
可以多种方式实现跟踪UE 100和/或相机180在中空间坐标系中的位姿。在一些实施例中,可使用基于VIO的跟踪进行跟踪,其在一些实施例中可使用视觉跟踪系统与惯性跟踪系统的组合。举例来说,相机180所捕获的图像可结合由IMU 170和/或传感器组185中的传感器(例如高度计、气压计、磁力计等)进行的测量用以确定UE 100及/或相机180的位姿。在另一实施例中,来自深度传感器的可与相机180对深度图像的捕获一起被捕获的深度数据可部分地用以计算相机位姿。在一些实施例中,基于VIO的技术可部分地用以校正IMU170中的误差(例如偏差和漂移)。在一些实施例中,当可用时,GNSS坐标还可用以提供3D位置信息。
在一些实施例中,相机的位姿可用以重新校准IMU 170中的传感器,以及/或补偿和/或去除与传感器185和/或IMU 170中的传感器的测量值的偏差。举例来说,IMU 170和/或传感器185可与UE 100中的相机180对每一图像帧的捕获同步地输出经测量信息。当可例如基于图像准确地估计相机位姿(例如,图像中的一或多个对应特征点的成功检测)时,则可使用VIO估计的相机位姿对由IMU 170和/或传感器185进行的测量应用校正,以及/或重新校准IMU 170/传感器185,使得由IMU 170和/或传感器185进行的测量可更紧密地跟踪经VIO确定的位姿。
可取决于应用通过各种装置实施本文中所描述的方法。举例来说,可使用硬件、固件、软件或其任何组合中的模块来实施这些方法。对于硬件实施方案,处理器150可实施于一或多个专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理装置(DSPD)、可编程逻辑装置(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、电子装置、经设计以执行本文所描述的功能的其它电子单元,或其组合内。
对于固件和/或软件实施方案,可使用执行本文中所描述的功能的代码、程序、功能等等来实施所述方法。有形地体现指令的任何机器可读媒体可用于实施本文所描述的方法。举例来说,软件代码可存储在连接到处理器150并由所述处理器执行的非暂时性计算机可读媒体160或存储器130中。存储器可实施于处理器单元内或处理器单元外部。如在本文中使用,术语“存储器”是指任何类型的长期、短期、易失性、非易失性或其它存储器,且不应限于任何特定类型的存储器或任何特定数目的存储器或存储存储器的媒体的类型。在一些实施例中,存储器130可保存促进由处理器150上的CV 155执行的计算机视觉、VNS、图像处理和其它任务的程序代码。举例来说,存储器160可保存数据、本地和全局地图、所捕获的静态图像、深度信息、视频帧、程序结果,以及IMU170和传感器185提供的数据。
如果实施于固件和/或软件中,则所述功能可作为一或多个指令或程序代码存储在计算机可读媒体(例如媒体160)和/或存储器130上。实例包含编码有计算机程序和与程序相关联的数据或供所述程序使用的计算机可读媒体。举例来说,包含其上存储的程序代码的计算机可读媒体可包含支持VNS的程序代码。
计算机可读媒体160包含物理计算机存储媒体。存储媒体可以是可由计算机存取的任何可用媒体。作为实例而非限制,此类计算机可读媒体可包括RAM、ROM、EEPROM、CD-ROM、快闪存储器或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,或可用于存储呈指令或数据形式的所要程序代码且可由计算机存取的任何其它媒体;如本文中所使用的磁盘和光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘用激光以光学方式再现数据。以上各项的组合也应包含于计算机可读媒体的范围内。
除了存储在计算机可读媒体160上之外,还可将指令和/或数据提供为通信设备中包含的发射媒体上的信号。举例来说,通信设备可包含可通过接收器112接收指示指令和数据的信号的收发器110。所述指令和数据还可致使一或多个处理器实施本文中概述的VNS和/或其它功能。即,通信设备包含具有指示用以执行所揭示的功能的信息的信号的发射媒体。
存储器130可表示任何数据存储机构。存储器130可包含例如主存储器和/或辅助存储器。主存储器可包含例如随机存取存储器、只读存储器等。虽然在此实例中说明为与处理器150分离,但应理解,主存储器的全部或部分可提供于处理器150内或以其它方式与所述处理器处于相同位置/耦合。辅助存储器可包含例如与主存储器和/或一或多个数据存储装置或系统相同或类似类型的存储器,例如磁盘驱动器、光盘驱动器、磁带驱动器、固态存储器驱动器等。
在某些实施方案中,辅助存储器可操作性地收纳或以其它方式可配置以耦合到非暂时性计算机可读媒体160。因而,在某些实例实施方案中,本文中提出的方法和/或设备可整体或部分呈可包含存储于其上的计算机可实施指令1108的计算机可读媒体160的形式,所述指令如果由至少一个处理器150执行,那么可操作性地使其能够执行如本文中所描述的实例操作的全部或部分。计算机可读媒体160可为存储器130的一部分。
另外,UE 100可包含能够显现彩色图像(包含3D图像)的屏幕或显示器190。在一些实施例中,显示器190可用于显示由相机180捕获的实况图像、图形用户接口(GUI)、程序输出等。在一些实施例中,显示器190可包括和/或收容有触摸屏,以准许用户经由虚拟键盘、图标、菜单或其它图形用户接口(GUI)、用户手势和/或输入装置(例如触控笔和其它写入工具)的某一组合输入数据。在一些实施例中,可使用液晶显示器(LCD)显示器或发光二极管(LED)显示器(例如,有机LED(OLED)显示器)来实施显示器190。在其它实施例中,显示器190可单独地收容并且可操作地耦合到相机180、处理器150和/或UE 100中的其它功能单元。
在一些实施例中,处理器150也可以从传感器组185(也称为“传感器185”)中的一个或多个传感器接收输入,所述传感器组可包含例如磁力计、高度计和/或气压计。磁力计可能能够测量地球磁场的强度和/或方向,且可充当指南针和/或提供UE 100的行进方向的指示。高度计可用以提供在经校准层面上的海拔高度的指示,而气压计可提供大气压力的指示,其也可用以获得海拔高度的确定。
在一些实施例中,传感器185可包含环境光传感器、声学换能器(例如麦克风/扬声器)、超声波换能器和/或深度传感器中的一或多个,其可用于获取深度信息和/或确定到目标的距离。一般来说,以上传感器列表并非穷尽性的,且传感器组185可包含逐渐并入到例如车载装置、智能手机和其它移动装置的用户装置中的各种其它类型的传感器和换能器。在一些实施例中,UE 100可不包括传感器组185中的一或多个传感器。举例来说,可省略高度计、气压计和/或磁力计中的一或多个。
图3示出用于以与所揭示的实施例一致的方式部分地基于几何信息的重新定位的示范性方法300的流程图。在一些实施例中,方法300可由UE 100和/或处理器150和/或CV155中的一或多个执行。
在一些实施例中,在框310中,可识别可由相机180捕获的当前图像帧中的特征。特征可为关键点、拐点、关注点,或当前图像帧中的任何其它显著特征。在一些实施例中,当首次观察到特征时,可为所述特征加时间戳。
在框315中,在一些实施例中,可基于特征不确定度量度精简识别的特征。可选择具有低位置不确定性的特征添加到3D地图。举例来说,低位置不确定性特征可添加到本地3D特征地图、先前地图和/或全局地图。作为一个实例,对于扩增实境应用,“低位置不确定性”可暗示3D特征的所估计位置的协方差矩阵的迹线的平方根在毫米以下。作为另一实例,对于室外导航,低位置不确定性可暗示3D特征的所估计位置的协方差矩阵的迹线的平方根约为几厘米。一般来说,“低位置不确定性”的构成的确定可为应用相依性。
在框320中,所选特征可存储在地图数据库中。举例来说,当观测到和/或选择特征时,可确定其方位且所述特征可添加到环境的地图。举例来说,所述特征可添加到本地特征地图M、先前地图S和/或全局地图G中的一或多个。
在一些实施例中,所述特征可与3D方位相关联。举例来说,特征数据库可通过每一特征的方位索引所述每一特征,且相反地,方位数据库可索引方位或围绕所述方位的具有对应于所述方位的特征的区域。在一些实施例中,可用首次观测到特征的时间为所述特征加时间戳。
在一些实施例中,可通过将体积划分成量化单元来量化环境。在一些实施例中,量化单元可采取立方体的形式且每一特征可以一或多个立方体作索引。相反地,每一立方体可以放置在立方体内的特征作索引。举例来说,与特征的方位相关联的不确定度可用以确定特征可位于其中的一或多个立方体。所述特征可与对应于立方体识别符的关键字相关联。相反地,在一些实施例中,每一立方体可与一或多个特征识别符相关联。因此,给定一特征,可获得特征可位于其中的立方体,且相反地,给定一立方体,可确定位于所述立方体中的特征。
图4示出通过将3D体积400划分成立方体获得的3D体积400的示范性量化的示意性表示。如图4中所示出,3D体积400包括立方体410、420、430、440、450、460、470、480和490。如图4B中所示,立方体450可细分为区域P、Q、R、S、T、U、V和W,其中:区域P与立方体(410、420、440、450)相关联;区域Q与立方体(420、450)相关联;区域R与立方体(420、430、450、460)相关联;区域S与立方体(450、460)相关联;区域T与立方体(450、460、480、490)相关联;区域U与立方体(450、480)相关联;区域V与立方体(440、450、470、480)相关联;且区域W与立方体(440、450)相关联。
因此,可位于由圆圈所示的区域中的特征492可与地图数据库中的立方体420、430和460相关联。此外,如图4中所示出,特征494可与地图数据库中的立方体480相关联。举例来说,与特征492相关联的记录的数据库查找将产出立方体420、430和460。类似地,与特征494相关联的记录的数据库查找将产出立方体480。相反地,与立方体420、430和460相关联的记录的数据库查找将产出特征492,而与特征494相关联的记录的数据库查找将产出立方体480。
参考图3,在一些实施例中,在框325中,所选择的特征可与一或多个地图相关联。举例来说,所选择的特征可添加到全局地图G和/或本地地图M。在一些实施例中,特征的记录可与共同可见的特征相关联。举例来说,当数个特征fi在单个图像帧中可见时,每一特征fi,i=1...n可与所述帧的作为与特征fi共同可见的特征的每一其它可见特征fj,i≠j相关联。
在框335中,可确定本地地图340上的特征的共同可见的特征。举例来说,参考图2B,对于具有可见特征f1,f2,f3和f4的图像帧T 255,可确定共同可见的特征p1和p2。在一些实施例中,对于图像帧,其中F={fi|i=1,2...n}是所述帧中可见的特征的集合,则每一特征fi,i=1...n可与所述帧的作为与特征fi共同可见的特征的每一其它可见特征fj,i≠j相关联。因此,对于具有可见特征的任何给定帧,在框335中,可通过查找所述帧中可见的每一特征的数据库记录来确定共同可见的特征的集合。共同可见的特征的集合C=C1∪C2∪...∪Cn可确定为对应于上文概述的本地特征fi的共同可见的特征的集合Ci的并集。
在框340中,可确定本地地图。在一些实施例中,如上文所概述,本地特征地图可确定为M=F∪C。举例来说,参考图2B,图像帧T 255的本地特征地图可确定为MT={f1,f2,f3,f4,p1,p2}。
因此,特征f2、f3和f4以及特征p1和p2是共同可见的特征。另外,如图2B中所示,f1、f2、f3或f4(在当前图像帧T 255中可见)中无一个在分别处于相机位姿282、284、286、288、290和292处的图像帧T-2 265、T-3 270、T-4 275或T-5 280中可见。因此,对于相机位置282处的图像帧T 255,由MT={f1,f2,f3,f4,p1,p2}给出对应本地特征地图。
图5A示出与特征相关联的示范性特征记录500。在一些实施例中,可通过特征识别符510、特征的3D方位515和3D方位不确定性520识别每一特征。在一些实施例中,特征记录可另外包含所述特征可基于3D方位515和/或3D方位不确定性520位于其中的一或多个立方体的识别符或方位(或3D空间的另一量化)。
特征记录500还可包含共同可见的特征530(如果存在)的列表和首次看见的时间535,其指示首次观测到特征的时间。可定期,或针对每一图像帧,或以某一预定帧间隔更新对应于一特征的共同可见的特征的列表。
图5B示出与经量化3D空间的每一单元相关联的量化记录550。量化记录550可包含立方体识别符555、与立方体相关联的3D范围360、相邻立方体565,以及表示估计处于立方体内的特征的相关联的特征570。在一些实施例中,对于添加到地图的方位(Xi,Yi,Zi)处的特征fi,关键字或立方体识别符可计算为其中s是地图比例尺。在一些实施例中,散列表可用以存储特征记录500和/或量化记录550。因此,在上述实施例中,散列表中的冲突为相关空间接近度:较大比例尺s将产生表中的更多冲突。地图比例尺也可解释为3D特征存在于其中的3D空间的量化中的仓或立方体大小。位于同一仓或立方体内或在某一阈值距离(例如相距小于某一数目q立方体)内的特征可视为邻近的。
在一些实施例中,量化记录可用以促进接近度查询。举例来说,基于特征的3D方位515,可使用特征记录500确定与所述特征相关联的相关联立方体525。可使用与所述特征相关联的立方体525查找量化记录550以确定位于同一立方体(和/或相邻立方体)内的邻近特征570。
在框345中,基于UE 100和/或相机180的当前位姿,以及/或本地特征地图M中的特征的方位,可确定先前特征的集合S。举例来说,先前地图S可包含当前相机位置的某一阈值距离内并且在比看见M中的特征的最早视点更早的时间从相机位姿看见的每个特征。
在一些实施例中,在框345中,基于UE 100和/或相机180的当前位姿,以及/或本地特征地图M中的特征的方位,确定观测到的特征的某一阈值距离内的先前观测到的特征的集合。在一些实施例中,可确定与M中的特征相关联的立方体525并且可确定同一立方体和/或相邻立方体内的S中的先前观测到的特征。举例来说,如果M中的特征存储在散列表中,那么可基于M中的特征的散列关键字或立方体识别符555确定冲突特征。在一些实施例中,可基于冲突特征确定的先前地图S表示候选匹配350的集合。
在框355中,如果匹配候选匹配350的集合中的特征的本地特征的数目高于阈值数目(框355中的“是”),那么在框360中,在一些实施例中,可执行是否已发生环路闭合事件的确定。在一些实施例中,可确定使M与S之间的特征匹配的数目最大化的变换τ。举例来说,优化变换τ可使本地地图中的多个特征f与先前地图中的对应候选特征p关联。在一些实施例中,基于RANSAC(随机样本一致性)的技术可用以确定τ。在一些实施例中,当使用RANSAC时,获胜变换的表决的数目可与在声明已发生环路闭合事件之前在当前本地地图M中存在针对特征的不适当变换的虚无假设的表决的预期数目进行比较。在一些实施例中,环路闭合事件的确定可用于重新定位和/或校正VIO漂移误差和/或重新校准VIO系统。在一些实施例中,稳健性估计、霍夫变换或类似技术可用以确定变换τ。
在其中UE 100的运动主要为平移(或其中位姿漂移如在多个VIO应用中一样在性质上主要为平移)的情况下,确定M与S之间的匹配的变换可基于平移或刚性运动模型。在一些实施例中,在以上实例中,在UE 100的运动主要为平移的情况下,可执行对优化平移的穷举搜索τ。
在一些实施例中,在框355中,如果匹配候选匹配350的集合中的特征的本地特征的数目不超过阈值数目(框355中的“否”),那么调用步骤305并开始另一重复。
在框365中,如果最终数目个匹配高于阈值(“是”),那么在一些实施例中,在框375中,可细化变换τ。在一些实施例中,视觉匹配技术可用以例如基于图像描述符确定M和S中的视觉上匹配的特征。在一些实施例中,基于视觉上匹配的特征,可重新确定和/或细化变换τ。在一些实施例中,可基于变换τ重新确定UE 100/相机180的位姿。
在步骤370中,可基于UE 100/相机180的经重新确定的位姿校正UE 100的轨迹。此外,在步骤380中,可基于UE 100/相机180的经重新确定的位姿校正本地地图M和全局地图G中的特征的3D方位。在一些实施例中,可在框305中开始另一重复。
图6说明从第一地图Mt 605中的本地特征的子集到第二地图St 655中的先前特征的第二子集的变换τ600。在一些实施例中,第一地图Mt 605中的本地特征mi可包含图像帧It中的可见特征以及对应于It中的可见特征的共同可见的特征的集合。第一地图Mt605可另外包含对应于本地特征mi的3D方位。
此外,如图6中所示,第二地图St 655可包含先前特征sj和对应于所述先前特征的3D方位,其中:(a)在先于对Mt 605中的本地特征中的任一个的首次成像的时间首次对每一先前特征成像,且(b)每一先前特征sj是在至少一个本地特征mi的阈值距离内。
在一些实施例中,基于第一地图Mt 605与第二地图St 655的比较,可确定包括第一地图Mt 605中的先前成像的本地特征的第一子集和第二地图St 655中的先前特征的对应第二子集,第一子集中的每一本地特征对应于第二子集中的相异先前特征。举例来说,可通过点{m1 602,m2 604,m3 606,m4 608,m5 610,m6 612,m7 614,m8 616,m9 618}给出第一子集且对应的第二子集可确定为包含示出为{s1 652,s2 654,s3 656,s4 658,s5 660,s6 662,s7664,s8 666,s9 668}的点,其中点mi,i=1...9对应于点si,i=1...9。
如图6所示,第一地图Mt 605也可以包括可不与第二地图St 655中的特征相关联的其它特征m10 630、m11 632、m12 634、m13 636、m14 638和m15 640(不处于第一子集中)。相反,第二地图St 655也可包含特征s10 680、s11 682、s12 684、s13 686和s14 688,其保持不关联且不处于第二子集中。
在一些实施例中,可确定将第一地图Mt 605中的本地特征的第一子集映射到第二地图St 605中的先前特征的对应的第二子集的变换τ600。由于漂移相关误差,第一子集中的点的位置可不同于第二子集中的对应点的位置。然而,如上概述,位姿漂移通常不受同时或在某一短时间间隔内观测到的附近特征的估计位置的不准确性影响。换句话说,可建立某一(第一子集)本地特征的空间布置到某一(对应第二子集)先前特征的空间布置之间的对应关系(在某一误差容限内)。
在一些实施例中,可通过确定本地地图的某一预定部分对应于先前观测到的特征且因此存在于先前地图中来确定环路闭合。归因于存在特征的相机和3D坐标的位置的漂移或误差,本地地图中的本地特征的3D坐标可不与先前地图中的先前观测到的特征的对应3D坐标相同。然而,一旦确定本地地图中的特征的3D方位与先前地图中的特征的3D方位之间的阈值数目个对应关系,便可确定将来自前一集合的特征映射到后一集合上的变换。所述变换可被视为将本地地图中的特征的第一子集映射到先前映射中的特征的第二子集。当所述变换应用于校正相机位姿时,所述变换可减小相机位姿的当前估计值的漂移(相对于做出先前地图中的特征的观测的点处的相机位置)。所述变换还可用以校正UE的轨迹。在实施例中,在RANSAC或其它表决方案用以确定变换τ 600的情况下,可将用于获胜变换的表决的数目与用于虚无假设的表决的预期数目进行比较,其中所述虚无假设表示不存在此类变换的假定。在一些实施例中,在UE 100维持相机姿态(例如侧倾、俯仰、横摆)的准确估计的情况下,变换τ600可为平移。
术语“空间布置”用以指特征点的集合的空间分布的图案。“空间布置”反映特征点相对于彼此的位置。特征的集合的“空间布置”相对于观测此类特征的一或多个相机的位姿和方位为不变的,不过这些相机获取的一或多个图像中的特征的外观可取决于相机的位姿和方位。具有相同空间布置的两个特征集合可通过应用变换τ600置于与彼此的一对一的对应关系中。
举例来说,如图6中所示,可形成第一子集的本地特征{m1 602,m2 604,m3 606,m4608,m5 610,m6 612,m7 614,m8 616,m9 618}的空间布置可对应于可形成对应的第二子集的先前特征{s1 652,s2 654,s3 656,s4 658,s5 660,s6 662,s7 664,s8 666,s9 668}的空间布置。因此,在一些实施例中,可确定将第一子集中的特征映射到对应第二子集中的特征的可为刚性变换的变换τ600。在一些实施例中,可基于第一子集中的本地特征和第二子集中的先前特征之间的对应关系的程度做出是否已发生环路闭合事件的确定。在一些实施例中,可部分地基于多个本地特征的对应3D方位确定与第一地图中的多个本地特征相关联的空间布置。此外,部分地基于多个先前特征的对应3D方位,确定与第二地图中的多个先前特征相关联的空间布置。
图7示出用于以与所揭示的实施例一致的方式部分地基于几何信息的重新定位的示范性方法的流程图。在一些实施例中,可由可包含相机180的UE 100执行方法700。在一些实施例中,可由处理器150和/或CV 155执行方法700。
在一些实施例中,在框710中,可部分地基于当前图像帧的经估计相机位姿产生包括本地特征和本地特征的3D方位的第一地图。第一地图中的本地特征可包括当前图像帧中的多个可见特征和对应于所述多个可见特征的共同可见的特征的集合。在一些实施例中,可基于估计的相机位姿通过确定对应于多个可见特征中的本地特征的3D方位来确定对应于本地特征的3D方位。可基于所存储的用于共同可见的特征中的每一个的信息确定对应于共同可见的特征的集合中的本地特征的3D方位。
在框720中,可确定包括先前特征和对应于先前特征的3D方位的第二地图。选用于包含在第二地图中的每一先前特征:(i)可能已在先于本地特征中的任一个被首次成像的时间的时间被首次成像,以及(ii)可位于至少一个本地特征的阈值距离内。在一些实施例中,为确定其中每一先前特征在第一地图中的至少一个特征的阈值距离内的第二地图,正被UE成像的3D空间可经量化到多个量化单元中。此外,可确定用于每一本地特征的一或多个对应量化单元。位于所确定的量化单元内的先前特征可添加到第二地图。在一些实施例中,量化单元可采取相等立方体大小的立方体的形式。在一些实施例中,立方体大小可相对于地图比例尺反向变化,其中所述地图比例尺与第一地图和第二地图相关联。
在框730中,可基于第一地图和第二地图的比较确定包括第一地图中的先前经成像的本地特征的第一子集和第二地图中的先前特征的对应第二子集,其中第一子集中的每一本地特征可对应于第二子集中的相异先前特征。举例来说,可通过以下操作来确定第一子集中的本地特征和第二子集中的先前特征:确定与第一地图中的多个本地特征相关联的第一空间布置对应于与第二地图中的多个先前特征相关联的第二空间布置。第一地图中的多个本地特征可包括第一子集且第二地图中的对应的多个先前特征可包括第二子集。在一些实施例中,可部分地基于多个本地特征的对应的3D方位来确定与第一地图中的多个本地特征相关联的第一空间布置,且部分地基于多个先前特征的对应的3D方位来确定与第二地图中的多个先前特征相关联的第二空间布置。
在框740中,可确定变换,其中所述变换可为本地特征的第一子集到先前特征的第二子集。在一些实施例中,可通过使用以下中的至少一个确定将本地特征的第一子集映射到先前特征的第二子集的变换:随机样本一致性(RANSAC)、和/或稳健性估计、和/或穷举搜索、和/或霍夫变换。在一些实施例中,可基于平移或刚性运动模型,确定将本地特征的第一子集映射到先前特征的第二子集的变换。在更多一般设置中,可假设所述变换为类似性变换,其用任意缩放因子、为一般线性变换加平移的仿射变换或甚至可能考虑相机的内部参数漂移的投影变换来扩展刚性运动模型。
在一些实施例中,所述方法可另外包括部分地基于所述变换校正估计的相机位姿以获得经校正相机位姿。所述方法可另外包括部分地基于经校正相机位姿更新第一地图中的本地特征的3D方位。在一些实施例中,所述方法可另外包括部分地基于所述经校正相机位姿校正UE的估计的轨迹。
在一些实施例中,所述第一地图可包括第一多个本地特征描述符,其中每一本地特征描述符可与相异本地特征相关联,且第二地图可包括第二多个先前特征描述符,每一先前特征描述符可与相异的先前经成像特征相关联;且所述方法可另外包括:针对第一子集中的每一本地特征,将对应的本地特征描述符与第二子集中的对应的先前特征描述符进行比较;和部分地基于所述比较细化经校正相机位姿。
本文中在流程图和消息流中描述的方法可取决于应用由各种装置实施。举例来说,这些方法可以硬件、固件、软件或其任何组合实施。
尽管出于指导性目的,结合具体实施例来说明本发明,但本发明不限于此。在不脱离本发明的范围的情况下可作出各种改编和修改。因此,所附权利要求书的精神和范围不应限于以上描述。
Claims (30)
1.一种包括相机的用户设备UE上的处理器实施的方法,所述方法包括:部分地基于当前图像帧的所估计的相机位姿,产生包括本地特征和所述本地特征的3D方位的第一地图,其中所述本地特征包括所述当前图像帧中的多个可见特征和对应于所述多个可见特征的共同可见的特征的集合,其中对于所述多个可见特征中的每一单个特征,对应的共同可见的特征包括在先前相机位姿处的图像帧中可见的所述本地特征的子集,所述单个特征也在所述先前相机位姿处的图像帧中可见;确定包括先前特征和对应于所述先前特征的3D方位的第二地图,其中每一先前特征在先于所述本地特征中的任一个的首次成像的时间被首次成像,且其中每一先前特征在至少一个本地特征的阈值距离内;基于所述第一地图与所述第二地图的比较,确定包括所述第一地图中的先前经成像本地特征的第一子集和所述第二地图中的所述先前特征的对应的第二子集,其中所述第一子集中的每一本地特征对应于所述第二子集中的先前特征,并且所述第一子集中的不同本地特征对应于所述第二子集中的不同先前特征;和确定变换,其中所述变换将所述本地特征的所述第一子集映射到所述先前特征的所述第二子集。
2.根据权利要求1所述的方法,其中确定所述第一子集和所述对应的第二子集包括:确定与所述第一地图中的多个所述本地特征相关联的第一空间布置对应于与所述第二地图中的多个所述先前特征相关联的第二空间布置,其中所述第一地图中的所述多个所述本地特征包括所述第一子集且所述第二地图中的所述多个所述先前特征包括所述第二子集。
3.根据权利要求2所述的方法,其中:部分地基于所述多个所述本地特征的所述对应的3D方位确定与所述第一地图中的所述多个所述本地特征相关联的所述第一空间布置,且部分地基于所述多个所述先前特征的所述对应的3D方位确定与所述第二地图中的所述多个所述先前特征相关联的所述第二空间布置。
4.根据权利要求1所述的方法,其另外包括:部分地基于所述变换校正所述估计的相机位姿以获得经校正相机位姿。
5.根据权利要求4所述的方法,其另外包括:部分地基于所述经校正相机位姿更新所述第一地图中的所述本地特征的所述3D方位。
6.根据权利要求4所述的方法,其中:所述第一地图包括第一多个本地特征描述符,每一本地特征描述符与相异本地特征相关联,且所述第二地图包括第二多个先前特征描述符,每一先前特征描述符与相异的先前经成像特征相关联;且其中,所述方法另外包括:对于所述第一子集中的每一本地特征,将对应的本地特征描述符与所述第二子集中的对应的先前特征描述符进行比较;和部分地基于所述比较细化所述经校正相机位姿。
7.根据权利要求4所述的方法,其另外包括:部分地基于所述经校正相机位姿校正所述UE的估计的轨迹。
8.根据权利要求1所述的方法,其中基于使用以下中的至少一个确定将所述本地特征的所述第一子集映射到所述先前特征的所述第二子集的所述变换:随机样本一致性RANSAC,或稳健性估计,或穷举搜索,或霍夫变换。
9.根据权利要求1所述的方法,其中基于平移或刚性运动模型确定将所述本地特征的所述第一子集映射到所述先前特征的所述第二子集的所述变换。
10.根据权利要求1所述的方法,其中确定其中每一先前特征在所述第一地图中的所述至少一个本地特征的阈值距离内的所述第二地图包括:将正被所述UE成像的3D空间量化到多个量化单元中,和确定对应于所述至少一个本地特征的至少一个量化单元,和识别位于所述至少一个量化单元内的先前特征。
11.根据权利要求10所述的方法,其中:所述量化单元是相等立方体大小的立方体,其中所述立方体大小相对于地图比例尺反向变化,其中所述地图比例尺与所述第一地图和所述第二地图相关联。
12.根据权利要求1所述的方法,其中产生对应于所述本地特征的3D方位包括:基于所述估计的相机位姿确定对应于所述多个可见特征中的本地特征的3D方位;和基于所存储的用于所述共同可见的特征中的每一个的信息获得对应于所述共同可见的特征的集合中的本地特征的3D方位。
13.一种用户设备UE,其包括:能够捕获图像的至少一个图像传感器;和耦合到所述图像传感器的处理器,其中所述处理器被配置成:部分地基于当前图像帧的所估计的相机位姿,产生包括本地特征和所述本地特征的3D方位的第一地图,其中所述本地特征包括所述当前图像帧中的多个可见特征和对应于所述多个可见特征的共同可见的特征的集合,其中对于所述多个可见特征中的每一单个特征,对应的共同可见的特征包括在先前相机位姿处的图像帧中可见的所述本地特征的子集,所述单个特征也在所述先前相机位姿处的图像帧中可见;确定包括先前特征和对应于所述先前特征的3D方位的第二地图,其中每一先前特征在先于所述本地特征中的任一个的首次成像的时间被首次成像,且其中每一先前特征在至少一个本地特征的阈值距离内;基于所述第一地图与所述第二地图的比较,确定包括所述第一地图中的先前经成像本地特征的第一子集和所述第二地图中的所述先前特征的对应的第二子集,其中所述第一子集中的每一本地特征对应于所述第二子集中的先前特征,并且所述第一子集中的不同本地特征对应于所述第二子集中的不同先前特征;确定变换,其中所述变换将所述本地特征的所述第一子集映射到所述先前特征的所述第二子集。
14.根据权利要求13所述的UE,其中为确定所述第一子集和所述对应的第二子集,所述处理器被配置成:确定与所述第一地图中的多个所述本地特征相关联的第一空间布置对应于与所述第二地图中的多个所述先前特征相关联的第二空间布置,其中所述第一地图中的所述多个所述本地特征包括所述第一子集且所述第二地图中的所述多个所述先前特征包括所述第二子集。
15.根据权利要求14所述的UE,其中:部分地基于所述多个所述本地特征的所述对应的3D方位确定与所述第一地图中的所述多个所述本地特征相关联的所述第一空间布置,且部分地基于所述多个所述先前特征的所述对应的3D方位确定与所述第二地图中的所述多个所述先前特征相关联的所述第二空间布置。
16.根据权利要求13所述的UE,其中所述处理器进一步被配置成:部分地基于所述变换校正所述估计的相机位姿以获得经校正相机位姿。
17.根据权利要求16所述的UE,其中所述处理器进一步被配置成:部分地基于所述经校正相机位姿更新所述第一地图中的所述本地特征的所述3D方位。
18.根据权利要求16所述的UE,其中:所述第一地图包括第一多个本地特征描述符,每一本地特征描述符与相异本地特征相关联,且所述第二地图包括第二多个先前特征描述符,每一先前特征描述符与相异的先前经成像特征相关联;且其中,所述处理器进一步被配置成:对于所述第一子集中的每一本地特征,将对应的本地特征描述符与所述第二子集中的对应的先前特征描述符进行比较;和部分地基于所述比较细化所述经校正相机位姿。
19.根据权利要求16所述的UE,其中所述处理器进一步被配置成:部分地基于所述经校正相机位姿校正所述UE的估计的轨迹。
20.根据权利要求13所述的UE,其中基于使用以下中的至少一个确定将所述本地特征的所述第一子集映射到所述先前特征的所述第二子集的所述变换:随机样本一致性RANSAC,或稳健性估计,或穷举搜索,或霍夫变换。
21.根据权利要求13所述的UE,其中基于平移或刚性运动模型确定将所述本地特征的所述第一子集映射到所述先前特征的所述第二子集的所述变换。
22.根据权利要求13所述的UE,其中为确定其中每一先前特征在所述第一地图中的所述至少一个本地特征的阈值距离内的所述第二地图,所述处理器被配置成:将正被所述UE成像的3D空间量化到多个量化单元中,和确定对应于所述至少一个本地特征的至少一个量化单元,和识别位于所述至少一个量化单元内的先前特征。
23.根据权利要求22所述的UE,其中:所述量化单元是相等立方体大小的立方体,其中所述立方体大小相对于地图比例尺反向变化,其中所述地图比例尺与所述第一地图和所述第二地图相关联。
24.根据权利要求13所述的UE,其中为产生对应于所述本地特征的3D方位,所述处理器被配置成:基于所述估计的相机位姿确定对应于所述多个可见特征中的本地特征的3D方位;和基于所存储的用于所述共同可见的特征中的每一个的信息获得对应于所述共同可见的特征的集合中的本地特征的3D方位。
25.一种用于视觉导航的设备,其包括:能够捕获图像的图像感测装置;用于部分地基于当前图像帧的所估计的相机位姿,产生包括本地特征和所述本地特征的3D方位的第一地图的装置,其中所述本地特征包括所述当前图像帧中的多个可见特征和对应于所述多个可见特征的共同可见的特征的集合,其中对于所述多个可见特征中的每一单个特征,对应的共同可见的特征包括在先前相机位姿处的图像帧中可见的所述本地特征的子集,所述单个特征也在所述先前相机位姿处的图像帧中可见;用于确定包括先前特征和对应于所述先前特征的3D方位的第二地图的装置,其中每一先前特征在先于所述本地特征中的任一个的首次成像的时间被首次成像,且其中每一先前特征在至少一个本地特征的阈值距离内;用于基于所述第一地图与所述第二地图的比较,确定包括所述第一地图中的先前经成像本地特征的第一子集和所述第二地图中的所述先前特征的对应的第二子集的装置,其中所述第一子集中的每一本地特征对应于所述第二子集中的先前特征,并且所述第一子集中的不同本地特征对应于所述第二子集中的不同先前特征;和用于确定变换的装置,其中所述变换将所述本地特征的所述第一子集映射到所述先前特征的所述第二子集。
26.根据权利要求25所述的设备,其中用于确定所述第一子集和所述对应的第二子的装置包括:用于确定与所述第一地图中的多个所述本地特征相关联的第一空间布置对应于与所述第二地图中的多个所述先前特征相关联的第二空间布置的装置,其中所述第一地图中的所述多个所述本地特征包括所述第一子集且所述第二地图中的所述多个所述先前特征包括所述第二子集。
27.根据权利要求25所述的设备,其中基于使用以下中的至少一个确定将所述本地特征的所述第一子集映射到所述先前特征的所述第二子集的所述变换:随机样本一致性RANSAC,或稳健性估计,或穷举搜索,或霍夫变换。
28.一种包括指令的非暂时计算机可读媒体,所述指令在由处理器执行时致使所述处理器:部分地基于当前图像帧的所估计的相机位姿,产生包括本地特征和所述本地特征的3D方位的第一地图,其中所述本地特征包括所述当前图像帧中的多个可见特征和对应于所述多个可见特征的共同可见的特征的集合,其中对于所述多个可见特征中的每一单个特征,对应的共同可见的特征包括在先前相机位姿处的图像帧中可见的所述本地特征的子集,所述单个特征也在所述先前相机位姿处的图像帧中可见;确定包括先前特征和对应于所述先前特征的3D方位的第二地图,其中每一先前特征在先于所述本地特征中的任一个的首次成像的时间被首次成像,且其中每一先前特征在至少一个本地特征的阈值距离内;基于所述第一地图与所述第二地图的比较,确定包括所述第一地图中的先前经成像本地特征的第一子集和所述第二地图中的所述先前特征的对应的第二子集,其中所述第一子集中的每一本地特征对应于所述第二子集中的先前特征,并且所述第一子集中的不同本地特征对应于所述第二子集中的不同先前特征;和确定变换,其中所述变换将所述本地特征的所述第一子集映射到所述先前特征的所述第二子集。
29.根据权利要求28所述的计算机可读媒体,其中所述用以确定所述第一子集和所述对应的第二子集的指令进一步致使所述处理器:确定与所述第一地图中的多个所述本地特征相关联的第一空间布置对应于与所述第二地图中的多个所述先前特征相关联的第二空间布置,其中所述第一地图中的所述多个所述本地特征包括所述第一子集且所述第二地图中的所述多个所述先前特征包括所述第二子集。
30.根据权利要求28所述的计算机可读媒体,其中基于使用以下中的至少一个确定将所述本地特征的所述第一子集映射到所述先前特征的所述第二子集的所述变换:随机样本一致性RANSAC,或稳健性估计,或穷举搜索,或霍夫变换。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/178,505 US9965689B2 (en) | 2016-06-09 | 2016-06-09 | Geometric matching in visual navigation systems |
US15/178,505 | 2016-06-09 | ||
PCT/US2017/030842 WO2017213769A1 (en) | 2016-06-09 | 2017-05-03 | Geometric matching in visual navigation systems |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109154501A CN109154501A (zh) | 2019-01-04 |
CN109154501B true CN109154501B (zh) | 2020-01-24 |
Family
ID=58708056
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780029285.3A Active CN109154501B (zh) | 2016-06-09 | 2017-05-03 | 视觉导航系统中的几何匹配 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9965689B2 (zh) |
EP (1) | EP3469306B1 (zh) |
CN (1) | CN109154501B (zh) |
WO (1) | WO2017213769A1 (zh) |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9798322B2 (en) | 2014-06-19 | 2017-10-24 | Skydio, Inc. | Virtual camera interface and other user interaction paradigms for a flying digital assistant |
US9678506B2 (en) | 2014-06-19 | 2017-06-13 | Skydio, Inc. | Magic wand interface and other user interaction paradigms for a flying digital assistant |
JP6707378B2 (ja) * | 2016-03-25 | 2020-06-10 | 本田技研工業株式会社 | 自己位置推定装置および自己位置推定方法 |
US10435176B2 (en) | 2016-05-25 | 2019-10-08 | Skydio, Inc. | Perimeter structure for unmanned aerial vehicle |
US10520943B2 (en) | 2016-08-12 | 2019-12-31 | Skydio, Inc. | Unmanned aerial image capture platform |
US10366508B1 (en) | 2016-08-29 | 2019-07-30 | Perceptin Shenzhen Limited | Visual-inertial positional awareness for autonomous and non-autonomous device |
US10571925B1 (en) | 2016-08-29 | 2020-02-25 | Trifo, Inc. | Autonomous platform guidance systems with auxiliary sensors and task planning |
US10402663B1 (en) | 2016-08-29 | 2019-09-03 | Trifo, Inc. | Visual-inertial positional awareness for autonomous and non-autonomous mapping |
US10390003B1 (en) | 2016-08-29 | 2019-08-20 | Perceptln Shenzhen Limited | Visual-inertial positional awareness for autonomous and non-autonomous device |
US10453213B2 (en) * | 2016-08-29 | 2019-10-22 | Trifo, Inc. | Mapping optimization in autonomous and non-autonomous platforms |
US10395117B1 (en) | 2016-08-29 | 2019-08-27 | Trifo, Inc. | Visual-inertial positional awareness for autonomous and non-autonomous tracking |
US11314262B2 (en) | 2016-08-29 | 2022-04-26 | Trifo, Inc. | Autonomous platform guidance systems with task planning and obstacle avoidance |
US10162362B2 (en) | 2016-08-29 | 2018-12-25 | PerceptIn, Inc. | Fault tolerance to provide robust tracking for autonomous positional awareness |
US10043076B1 (en) | 2016-08-29 | 2018-08-07 | PerceptIn, Inc. | Visual-inertial positional awareness for autonomous and non-autonomous tracking |
US10032276B1 (en) | 2016-08-29 | 2018-07-24 | PerceptIn, Inc. | Visual-inertial positional awareness for autonomous and non-autonomous device |
US10410328B1 (en) | 2016-08-29 | 2019-09-10 | Perceptin Shenzhen Limited | Visual-inertial positional awareness for autonomous and non-autonomous device |
US10571926B1 (en) | 2016-08-29 | 2020-02-25 | Trifo, Inc. | Autonomous platform guidance systems with auxiliary sensors and obstacle avoidance |
US11295458B2 (en) | 2016-12-01 | 2022-04-05 | Skydio, Inc. | Object tracking by an unmanned aerial vehicle using visual sensors |
US10496104B1 (en) | 2017-07-05 | 2019-12-03 | Perceptin Shenzhen Limited | Positional awareness with quadocular sensor in autonomous platforms |
US10362296B2 (en) * | 2017-08-17 | 2019-07-23 | Microsoft Technology Licensing, Llc | Localized depth map generation |
US10565457B2 (en) * | 2017-08-23 | 2020-02-18 | Tusimple, Inc. | Feature matching and correspondence refinement and 3D submap position refinement system and method for centimeter precision localization using camera-based submap and LiDAR-based global map |
US11761767B2 (en) * | 2018-02-26 | 2023-09-19 | Cloudminds Robotics Co., Ltd. | Method, device, apparatus, and application for cloud-based trajectory map generation |
US10984583B2 (en) * | 2018-03-28 | 2021-04-20 | Apple Inc. | Reconstructing views of real world 3D scenes |
JP7103824B2 (ja) * | 2018-03-30 | 2022-07-20 | 株式会社小松製作所 | 作業機械の制御システム、作業機械、及び作業機械の制御方法 |
CN108534756A (zh) * | 2018-04-14 | 2018-09-14 | 杭州职业技术学院 | 风电机组塔筒倾斜度检测方法 |
US10636190B2 (en) | 2018-05-31 | 2020-04-28 | Robert Bosch Gmbh | Methods and systems for exploiting per-pixel motion conflicts to extract primary and secondary motions in augmented reality systems |
CN109146972B (zh) * | 2018-08-21 | 2022-04-12 | 南京师范大学镇江创新发展研究院 | 基于快速特征点提取及网格化三角形约束的视觉导航方法 |
US10861186B2 (en) * | 2018-08-28 | 2020-12-08 | Rpx Corporation | Voting space-based loop closure detection |
US10782136B2 (en) * | 2018-09-28 | 2020-09-22 | Zoox, Inc. | Modifying map elements associated with map data |
DE102018219602A1 (de) * | 2018-11-15 | 2020-05-20 | Robert Bosch Gmbh | Verfahren zum Erkennen von Kartenfehlern |
US11774983B1 (en) | 2019-01-02 | 2023-10-03 | Trifo, Inc. | Autonomous platform guidance systems with unknown environment mapping |
US11004224B2 (en) * | 2019-01-22 | 2021-05-11 | Velodyne Lidar Usa, Inc. | Generation of structured map data from vehicle sensors and camera arrays |
CN111829532B (zh) * | 2019-04-18 | 2022-05-17 | 丰翼科技(深圳)有限公司 | 一种飞行器重定位系统和重定位方法 |
US11417017B2 (en) * | 2019-04-22 | 2022-08-16 | Texas Instmments Incorporated | Camera-only-localization in sparse 3D mapped environments |
US11249197B2 (en) | 2019-05-03 | 2022-02-15 | Apple Inc. | Image-based techniques for stabilizing positioning estimates |
CN112414400B (zh) * | 2019-08-21 | 2022-07-22 | 浙江商汤科技开发有限公司 | 一种信息处理方法、装置、电子设备和存储介质 |
US11423062B2 (en) | 2019-09-26 | 2022-08-23 | Here Global B.V. | Apparatus and methods for generating update data for a map database |
CN111639148B (zh) * | 2020-05-13 | 2022-03-11 | 广州小鹏自动驾驶科技有限公司 | 一种建图方法、系统及存储介质 |
US20210404834A1 (en) * | 2020-06-30 | 2021-12-30 | Lyft, Inc. | Localization Based on Multi-Collect Fusion |
US11810309B2 (en) * | 2020-12-22 | 2023-11-07 | Bae Systems Information And Electronic Systems Integration Inc. | Multi-camera system for altitude estimation |
US11928756B2 (en) * | 2021-09-22 | 2024-03-12 | Google Llc | Geographic augmented reality design for low accuracy scenarios |
US20230326045A1 (en) * | 2022-04-07 | 2023-10-12 | Htc Corporation | Method for managing tracking devices, device manager, and computer readable storage medium |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2455915A1 (en) * | 2010-11-18 | 2012-05-23 | BAE SYSTEMS plc | Change detection in image sequences |
CN102915444A (zh) * | 2011-06-22 | 2013-02-06 | 波音公司 | 图像配准 |
CN104145294A (zh) * | 2012-03-02 | 2014-11-12 | 高通股份有限公司 | 基于场景结构的自我姿势估计 |
CN104220895A (zh) * | 2012-05-01 | 2014-12-17 | 英特尔公司 | 使用用于室内位置的空间和时间相干性的同时局部化和地图绘制 |
CN105556329A (zh) * | 2013-09-27 | 2016-05-04 | 高通股份有限公司 | 混合照片导航及地图绘制 |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6675386B1 (en) * | 1996-09-04 | 2004-01-06 | Discovery Communications, Inc. | Apparatus for video access and control over computer network, including image correction |
US6714665B1 (en) * | 1994-09-02 | 2004-03-30 | Sarnoff Corporation | Fully automated iris recognition system utilizing wide and narrow fields of view |
US6807290B2 (en) * | 2000-03-09 | 2004-10-19 | Microsoft Corporation | Rapid computer modeling of faces for animation |
US7505604B2 (en) * | 2002-05-20 | 2009-03-17 | Simmonds Precision Prodcuts, Inc. | Method for detection and recognition of fog presence within an aircraft compartment using video images |
US7400744B2 (en) * | 2002-09-05 | 2008-07-15 | Cognex Technology And Investment Corporation | Stereo door sensor |
US7194114B2 (en) * | 2002-10-07 | 2007-03-20 | Carnegie Mellon University | Object finder for two-dimensional images, and system for determining a set of sub-classifiers composing an object finder |
US7460148B1 (en) * | 2003-02-19 | 2008-12-02 | Rockwell Collins, Inc. | Near real-time dissemination of surveillance video |
US7587064B2 (en) * | 2004-02-03 | 2009-09-08 | Hrl Laboratories, Llc | Active learning system for object fingerprinting |
US8577538B2 (en) | 2006-07-14 | 2013-11-05 | Irobot Corporation | Method and system for controlling a remote vehicle |
US7925049B2 (en) * | 2006-08-15 | 2011-04-12 | Sri International | Stereo-based visual odometry method and system |
US8774517B1 (en) * | 2007-06-14 | 2014-07-08 | Hrl Laboratories, Llc | System for identifying regions of interest in visual imagery |
US11159909B2 (en) * | 2008-02-05 | 2021-10-26 | Victor Thomas Anderson | Wireless location establishing device |
WO2009117450A1 (en) * | 2008-03-18 | 2009-09-24 | Invism, Inc. | Enhanced immersive soundscapes production |
US8467612B2 (en) * | 2008-10-13 | 2013-06-18 | Honeywell International Inc. | System and methods for navigation using corresponding line features |
US8156136B2 (en) * | 2008-10-16 | 2012-04-10 | The Curators Of The University Of Missouri | Revising imagery search results based on user feedback |
WO2010096279A2 (en) * | 2009-02-17 | 2010-08-26 | Omek Interactive , Ltd. | Method and system for gesture recognition |
US8819172B2 (en) * | 2010-11-04 | 2014-08-26 | Digimarc Corporation | Smartphone-based methods and systems |
US8913783B2 (en) * | 2009-10-29 | 2014-12-16 | Sri International | 3-D model based method for detecting and classifying vehicles in aerial imagery |
US8917905B1 (en) | 2010-04-15 | 2014-12-23 | Don K. Dill | Vision-2-vision control system |
WO2012006578A2 (en) * | 2010-07-08 | 2012-01-12 | The Regents Of The University Of California | End-to-end visual recognition system and methods |
EP2619742B1 (en) * | 2010-09-24 | 2018-02-28 | iRobot Corporation | Systems and methods for vslam optimization |
US9432631B2 (en) * | 2011-04-04 | 2016-08-30 | Polaris Wireless, Inc. | Surveillance system |
US8655094B2 (en) * | 2011-05-11 | 2014-02-18 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Photogrammetry system and method for determining relative motion between two bodies |
US8798840B2 (en) * | 2011-09-30 | 2014-08-05 | Irobot Corporation | Adaptive mapping with spatial summaries of sensor data |
GB2506338A (en) * | 2012-07-30 | 2014-04-02 | Sony Comp Entertainment Europe | A method of localisation and mapping |
US9472022B2 (en) * | 2012-10-05 | 2016-10-18 | University Of Southern California | Three-dimensional point processing and model generation |
US8929600B2 (en) * | 2012-12-19 | 2015-01-06 | Microsoft Corporation | Action recognition based on depth maps |
US9996974B2 (en) | 2013-08-30 | 2018-06-12 | Qualcomm Incorporated | Method and apparatus for representing a physical scene |
US9354778B2 (en) * | 2013-12-06 | 2016-05-31 | Digimarc Corporation | Smartphone-based methods and systems |
US9813676B2 (en) * | 2013-12-11 | 2017-11-07 | Qualcomm Incorporated | Use of mobile device with image sensor to retrieve information associated with light fixture |
EP3161791A4 (en) * | 2014-06-24 | 2018-01-03 | Sportlogiq Inc. | System and method for visual event description and event analysis |
-
2016
- 2016-06-09 US US15/178,505 patent/US9965689B2/en active Active
-
2017
- 2017-05-03 CN CN201780029285.3A patent/CN109154501B/zh active Active
- 2017-05-03 EP EP17723605.6A patent/EP3469306B1/en active Active
- 2017-05-03 WO PCT/US2017/030842 patent/WO2017213769A1/en active Search and Examination
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2455915A1 (en) * | 2010-11-18 | 2012-05-23 | BAE SYSTEMS plc | Change detection in image sequences |
CN102915444A (zh) * | 2011-06-22 | 2013-02-06 | 波音公司 | 图像配准 |
CN104145294A (zh) * | 2012-03-02 | 2014-11-12 | 高通股份有限公司 | 基于场景结构的自我姿势估计 |
CN104220895A (zh) * | 2012-05-01 | 2014-12-17 | 英特尔公司 | 使用用于室内位置的空间和时间相干性的同时局部化和地图绘制 |
CN105556329A (zh) * | 2013-09-27 | 2016-05-04 | 高通股份有限公司 | 混合照片导航及地图绘制 |
Also Published As
Publication number | Publication date |
---|---|
EP3469306A1 (en) | 2019-04-17 |
WO2017213769A1 (en) | 2017-12-14 |
US9965689B2 (en) | 2018-05-08 |
US20170357858A1 (en) | 2017-12-14 |
EP3469306B1 (en) | 2021-06-16 |
CN109154501A (zh) | 2019-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109154501B (zh) | 视觉导航系统中的几何匹配 | |
US10488521B2 (en) | Sensor calibration and time method for ground truth static scene sparse flow generation | |
CN104885098B (zh) | 基于移动装置的文本检测及跟踪 | |
US10242454B2 (en) | System for depth data filtering based on amplitude energy values | |
US10068344B2 (en) | Method and system for 3D capture based on structure from motion with simplified pose detection | |
KR101585521B1 (ko) | 장면 구조-기반 자가-포즈 추정 | |
US10853684B1 (en) | Method and system for parallactically synced acquisition of images about common target | |
US10937214B2 (en) | System and method for merging maps | |
US20150092048A1 (en) | Off-Target Tracking Using Feature Aiding in the Context of Inertial Navigation | |
WO2011071948A2 (en) | System and method for determining geo-location(s) in images | |
US20180357773A1 (en) | Sparse image point correspondences generation and correspondences refinement system for ground truth static scene sparse flow generation | |
WO2014011346A1 (en) | Sensor-aided wide-area localization on mobile devices | |
JP2013539872A (ja) | マルチユーザ拡張現実におけるオンライン参照生成および追跡 | |
US20180356825A1 (en) | UNDISTORTED RAW LiDAR SCANS AND STATIC POINT EXTRACTIONS METHOD FOR GROUND TRUTH STATIC SCENE SPARSE FLOW GENERATION | |
WO2015183490A1 (en) | Methods and apparatus for position estimation | |
KR101874926B1 (ko) | 인식된 오브젝트들을 사용하여 센서들을 교정하기 위한 방법들 및 시스템들 | |
US20180357315A1 (en) | UNDISTORTED RAW LiDAR SCANS AND STATIC POINT EXTRACTIONS SYSTEM FOR GROUND TRUTH STATIC SCENE SPARSE FLOW GENERATION | |
KR101863647B1 (ko) | 3d 맵들에 대한 가설 라인 맵핑 및 검증 | |
WO2016071896A1 (en) | Methods and systems for accurate localization and virtual object overlay in geospatial augmented reality applications | |
KR20220062709A (ko) | 모바일 디바이스 영상에 기반한 공간 정보 클러스터링에 의한 재난 상황 인지 시스템 및 방법 | |
JP7075090B1 (ja) | 情報処理システム、及び、情報処理方法 | |
US20200005832A1 (en) | Method for calculating position coordinates and electronic device | |
CN116576866A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |