CN109583290B - 使用运动相关数据改进视觉特征检测的系统和方法 - Google Patents
使用运动相关数据改进视觉特征检测的系统和方法 Download PDFInfo
- Publication number
- CN109583290B CN109583290B CN201811138861.0A CN201811138861A CN109583290B CN 109583290 B CN109583290 B CN 109583290B CN 201811138861 A CN201811138861 A CN 201811138861A CN 109583290 B CN109583290 B CN 109583290B
- Authority
- CN
- China
- Prior art keywords
- feature
- previous
- features
- image frame
- current image
- 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 title claims abstract description 83
- 230000033001 locomotion Effects 0.000 title claims abstract description 57
- 238000001514 detection method Methods 0.000 title claims abstract description 21
- 230000000007 visual effect Effects 0.000 title claims abstract description 18
- 230000003287 optical effect Effects 0.000 claims description 25
- 230000001360 synchronised effect Effects 0.000 claims description 6
- 238000013507 mapping Methods 0.000 claims description 3
- 230000001502 supplementing effect Effects 0.000 claims 1
- 230000008569 process Effects 0.000 abstract description 25
- 230000009466 transformation Effects 0.000 abstract description 2
- 239000003623 enhancer Substances 0.000 description 13
- 238000012545 processing Methods 0.000 description 10
- 238000005259 measurement Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 239000011159 matrix material Substances 0.000 description 6
- 230000002093 peripheral effect Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- NCGICGYLBXGBGN-UHFFFAOYSA-N 3-morpholin-4-yl-1-oxa-3-azonia-2-azanidacyclopent-3-en-5-imine;hydrochloride Chemical compound Cl.[N-]1OC(=N)C=[N+]1N1CCOCC1 NCGICGYLBXGBGN-UHFFFAOYSA-N 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000000513 principal component analysis Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000010409 thin film Substances 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
-
- 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
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0268—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
- G05D1/0274—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
-
- 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
- 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/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Radar, Positioning & Navigation (AREA)
- Aviation & Aerospace Engineering (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Electromagnetism (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Human Computer Interaction (AREA)
- Image Analysis (AREA)
Abstract
本文中描述的是使用与图像数据相结合的运动相关数据,通过使用运动相关数据预测特征的位置来改进检测视觉特征的速度和精度的系统和方法。在实施方式中,给定前一图像帧中的一组特征并给定下一图像帧,尝试定位下一图像帧中的相同的一组特征。在实施方式中,使用运动相关数据来计算两个图像帧之间的相对位姿变换,以及然后可变换特征的图像位置以获得它们在下一帧中的位置预测。这样的过程大大减少了下一图像帧中特征的搜索空间,从而加速和改进了特征检测。
Description
相关申请的交叉引用
本申请根据35USC§119(e)要求于2017年9月28日提交的、题为“使用运动相关数据改进视觉特征检测的系统和方法”的第62/564,864号(案卷号:28888-2158P)美国临时专利申请的优先权权益,其将Yingze Bao和Mingyu Chen列为发明人。上述专利文献通过引用以其整体并入本文。
技术领域
本公开总体涉及用于改进图像处理的系统和方法,该系统和方法对机器人或自主装置非常有用,有助于此类装置的定位和地图创建。
背景技术
机器人系统和自主系统的兴起已导致需要这种系统能够在现实世界中找到它们的位置。当系统不知道它的位置,对它操作的区域没有进行地图创建,或者两者都没有时,该问题相当复杂。为了解决这个问题,开发了被称作为同步定位和地图创建(SLAM)的过程集。SLAM努力将移动系统放置在未知环境中的未知位置中,逐渐地创建其环境的地图,并同时确定其在地图内的位置。
对这种系统的地图创建和定位功能非常重要的一个方面是检测通过该系统捕获的图像中的特征。例如,在视觉SLAM中使用了视觉图像特征来关联连续的图像帧。给定前一帧中的一组特征,好的视觉特征检测方法试图识别下一帧中相同的视觉特征。由于其性质,视觉特征检测必须使用图像来进行。为了加速该过程,先前的尝试主要集中在基于图像的改进上。例如,他们可集中在光流或增强的特征检测,诸如尺度不变特征变换(SIFT)、加速鲁棒特征(SURF)、来自加速段测试的特征(FAST)或高斯差分(DoG)。然而,虽然这些方法有助于识别特征点,但是仍然存在速度、效率和精度的问题。
因此,需要的是有助于改进图像特征跟踪的系统和方法。
发明内容
根据本申请的一方面,提供了非暂时性计算机可读介质或媒介,包括一个或多个指令序列,所述一个或多个指令序列在由一个或多个处理器执行时,致使使用移动系统的运动相关数据进行视觉特征检测的步骤,所述步骤包括:
从在捕获前一图像帧之时或之后到捕获当前图像帧之前或之时的时间周期中,接收所述移动系统的运动相关数据;
使用所述运动相关数据中的至少一些来确定用于在所述时间周期的至少一部分期间所述移动系统的运动的旋转;
对于来自所述前一图像帧中的一组先前特征的每个先前特征:
给定来自所述前一图像帧中的一组先前特征的所述前一图像帧中的先前特征、以及所述旋转,确定在所述当前图像帧中所述先前特征的预测位置和角度;
至少使用所述先前特征的预测位置,检测所述当前图像帧中一个或多个类似特征;
对所述当前图像帧中的所检测到的类似特征中的至少一些执行子像素细化;
在子像素细化之后,丢弃其角分数低于角分数阈值的每个检测到的类似特征,以获得所述当前图像帧中的一组剩余特征;以及
使用所述先前特征中的至少一些和所述剩余特征中的至少一些来更新所述移动系统的位置和方位。
根据本申请的另一方面,提供了用于使用移动系统的运动相关数据进行视觉特征检测的处理器实施的方法,所述方法包括:
从在捕获前一图像帧之时或之后到捕获当前图像帧之前或之时的时间周期中,接收所述移动系统的运动相关数据;
使用所述运动相关数据中的至少一些来确定在所述时间周期的至少一部分期间所述移动系统的运动的旋转;
对于来自所述前一图像帧中的一组先前特征的每个先前特征:
给定来自所述前一图像帧中的一组先前特征的所述前一图像帧中的先前特征、以及所述旋转,确定在所述当前图像帧中所述先前特征的预测位置和角度;
至少使用所述先前特征的预测位置,检测所述当前图像帧中一个或多个类似特征;
对所述当前图像帧中的所检测到的类似特征中的至少一些执行子像素细化;
在子像素细化之后,丢弃其角分数低于角分数阈值的每个检测到的类似特征,以获得所述当前图像帧中的一组剩余特征;以及
使用所述先前特征中的至少一些和所述剩余特征中的至少一些来更新所述移动系统的位置和方位。
根据本申请的又一方面,提供了移动系统,用于使用所述移动系统的运动相关数据进行视觉特征检测,所述移动系统包括:
视觉系统,用于捕捉一个或多个图像帧;
一个或多个传感器,用于捕捉运动相关数据;
一个或多个处理器;以及
非暂时性计算机可读介质或媒介,包括一个或多个指令序列,所述一个或多个指令序列在由所述一个或多个处理器中的至少一个处理器执行时,致使执行步骤,所述步骤包括:
从在捕获前一图像帧之时或之后到捕获当前图像帧之前或之时的时间周期中,接收所述移动系统的运动相关数据;
使用所述运动相关数据中的至少一些来确定在所述时间周期的至少一部分期间所述移动系统的运动的旋转;
对于来自所述前一图像帧中的一组先前特征的每个先前特征:
给定来自所述前一图像帧中的一组先前特征的所述前一图像帧中的先前特征、以及所述旋转,确定在所述当前图像帧中所述先前特征的预测位置和角度;
至少使用所述先前特征的预测位置,检测所述当前图像帧中一个或多个类似特征;
对所述当前图像帧中的所检测到的类似特征中的至少一些执行子像素细化;
在子像素细化之后,丢弃其角分数低于角分数阈值的每个检测到的类似特征,以获得所述当前图像帧中的一组剩余特征;以及
使用所述先前特征中的至少一些和所述剩余特征中的至少一些来更新所述移动系统的位置和方位。
附图说明
将为本发明的实施方式给出参考,本发明的实施方式的示例可在附图中示出。这些附图旨在进行说明而非限制。尽管在这些实施方式的上下文中大体描述了本发明,但应理解的是,它不旨在将本发明的范围限于这些特定的实施方式。附图中的项未按比例绘制。
图1描绘了根据本文件的实施方式的计算装置/信息处理系统的简化框图。
图2包括根据本文件的实施方式的图像处理器系统的描绘,该图像处理器系统可以是机器人或自主系统的一部分或为机器人或自主系统工作。
图3描绘了根据本文件的实施方式的可至少部分地由运动相关数据积分器执行的方法。
图4描绘了根据本文件的实施方式的可至少部分地由特征变换器执行的方法。
图5描绘了根据本文件的实施方式的可至少部分地由特征检测器执行的方法。
图6描绘了根据当前公开的实施方式的可至少部分地由特征检测器执行的另一方法。
图7描绘了根据本公开的实施方式的可至少部分地由特征增强器执行的方法。
图8描绘了根据本文件的实施方式的可至少部分地由系统处理器执行的方法,其中,该系统处理器可以是或可包括同步定位和地图创建(SLAM)引擎。
具体实施方式
在以下描述中,出于解释目的,阐明具体细节以便提供对本发明的理解。然而,将对本领域的技术人员显而易见的是,可在没有这些细节的情况下实践本发明。此外,本领域的技术人员将认识到,下文描述的本发明的实施方式可以以各种方式(例如过程、设备、系统、装置或方法)在有形的计算机可读介质上实施。
附图中示出的部件或是模块是本发明实施方式的示例性说明,并且意图避免使本发明不清楚。还应理解的是,在本论述的全文中,部件可描述为单独的功能单元(可包括子单元),但是本领域的技术人员将认识到,各种部件或其部分可划分成单独组件,或者可整合在一起(包括整合在单个的系统或组件内)。应当注意的是,本文论述的功能或操作可实施为部件。部件可以以软件、硬件、或它们的组合实施。
此外,附图内的部件或系统之间的连接并不旨在限于直接连接。相反地,在这些部件之间的数据可由中间部件修改、重格式化、或以其它方式改变。另外,可以使用另外或更少的连接。还应注意的是,术语“联接”、“连接”或“通信地联接”应理解为包括直接连接、通过一个或多个中间装置来进行的间接连接、和无线连接。
在本说明书中对“一个实施方式”、“优选实施方式”、“实施方式”或“多个实施方式”的提及表示结合实施方式所描述的具体特征、结构、特性或功能包括在本发明的至少一个实施方式中,以及可包括在多于一个的实施方式中。另外,在本说明书的各个地方出现以上所提到的短语并不一定全都是指相同的实施方式或多个相同实施方式。
在本说明书的各个地方使用某些术语目的在于说明,并且不应被理解为限制。服务、功能或资源并不限于单个服务、单个功能或单个资源;这些术语的使用可指代相关服务、功能或资源的可分布或聚合的分组。
术语“包括”、“包括有”、“包含”和“包含有”应理解为开放性的术语,并且其后任何列出内容都是示例,而不旨在限于所列项目。本文所使用的任何标题仅是为了组织目的,并且不应被用于限制说明书或权利要求的范围。本专利文献中提到的每个参考文献以其全文通过引用并入本文。
此外,本领域的技术人员应认识到,(1)某些步骤可以可选地执行;(2)步骤可不限于本文所阐述的特定次序;(3)某些步骤可以以不同次序执行;以及(4)某些步骤可同时地进行。
A.系统实施方式
在实施方式中,本专利文件的方面可使用、可包括一个或多个信息处理系统/计算系统或者可在一个或多个信息处理系统/计算系统上实施。为了本公开的目的,计算系统可包括可操作来计算、运算、确定、分类、处理、传输、接收、检索、发起、路由、交换、存储、显示、通信、显现、检测、记录、再现、处理或使用用于商业、科学、控制或其它目的的任何形式信息、智能或数据的任何手段或手段的组合。例如,计算系统可为或可包括个人计算机(例如,膝上型计算机)、平板电脑、平板手机、个人数字助理(PDA)、智能手机、智能手表、智能包装、服务器(例如,刀片式服务器或机架式服务器)、网络存储装置或任何其它合适装置,并且可在尺寸、形状、性能、功能和价格方面改变。计算系统可以包括随机存取存储器(RAM)、一个或多个处理资源(例如中央处理单元(CPU)或硬件或软件控制逻辑)、ROM和/或其它类型的存储器。计算系统的附加部件可包括一个或多个盘驱动器、用于与外部设备通信的一个或多个网络端口、以及各种输入和输出(I/O)装置(例如键盘、鼠标、触摸屏和/或视频显示器)。计算系统还可包括可操作为在各种硬件部件之间传输通信的一个或多个总线。
图1描绘了根据本公开的实施方式的计算装置/信息处理系统(或是计算系统)的简化框图。尽管应理解,信息处理系统可不同地配置并且包括不同部件,包括具有少于或多于图1中描述的部件,但应理解,针对系统100所示出的功能可操作为支持计算系统的各种实施方式。
如图1所示,系统100包括一个或多个中央处理单元(CPU)101,CPU 101提供计算资源并控制计算机。CPU 101可实施有微处理器等,并且还可包括一个或多个图形处理单元(GPU)117和/或用于数学计算的浮点协处理器。系统100还可包括系统存储器102,系统存储器102可呈随机存取存储器(RAM)、只读存储器(ROM)、或两者的形式。
如图1所示,还可提供多个控制器和外围装置。输入控制器103表示至各种输入装置104的接口,例如键盘、鼠标或触笔。还可存在扫描仪控制器105,该扫描仪控制器与扫描仪106通信。系统100还可包括存储器控制器107,该存储器控制器107用于与一个或多个存储装置108对接,存储装置中的每个均包括存储介质(诸如磁带或盘)或光学介质(其可用于记录用于操作系统、实用工具和应用程序的指令的程序,它们可包括实施本发明的各方面的程序的实施方式)。存储装置108还可用于存储经处理的数据或是将要根据本发明处理的数据。系统100还可包括显示器控制器109,该显示器控制器109用于为显示装置111提供接口,显示装置111可为阴极射线管(CRT)、薄膜晶体管(TFT)显示器或其它类型的显示器。计算系统100还可包括用于一个或多个外围装置113的一个或多个外围装置控制器或接口112。外围装置可包括一个或多个打印机、移动性系统(可包括一个或多个电机、伺服单元等)、惯性测量单元、视觉系统(可包括一个或多个摄像机)、传感器等。通信控制器114可与一个或多个通信装置115对接,这使系统100能够通过各种网络(包括互联网、云资源(例如以太云、经以太网的光纤通道(FCoE)/数据中心桥接(DCB)云等)、局域网(LAN)、广域网(WAN)、存储区域网络(SAN))中的任一网络,或通过任何合适电磁载波信号(包括红外信号)来连接至远程装置。
在示出的系统中,所有主要系统部件可连接至总线116,总线116可以表示多于一个的物理总线。然而,各种系统部件可在物理上彼此接近或可不在物理上彼此接近。例如,输入数据和/或输出数据可远程地从一个物理位置传输到另一物理位置。另外,实现本文中呈现的各方面的程序可经由网络从远程位置(例如,服务器)访问。此类数据和/或程序可通过各种机器可读介质中的任一机器可读介质来传送,机器可读介质包括但不限于:诸如硬盘、软盘和磁带的磁性介质;诸如CD-ROM和全息装置的光学介质;磁光介质;以及硬件装置,该硬件装置专门被配置成存储或存储并执行程序代码,该硬件装置例如专用集成电路(ASIC)、可编程逻辑器件(PLD)、闪存装置、以及ROM和RAM装置。
本发明的方面可以利用用于一个或多个处理器或处理单元以使步骤执行的指令在一个或多个非暂时性计算机可读介质上编码。应注意,一个或多个非暂时性计算机可读介质应当包括易失性存储器和非易失性存储器。应注意,替代实现方式是可能的,其包括硬件实现方式或软件/硬件实现方式。硬件实施的功能可使用ASIC、可编程的阵列、数字信号处理电路等来实现。因此,任何权利要求中的术语“手段”旨在涵盖软件实现方式和硬件实现方式两者。类似地,如本文使用的术语“计算机可读媒介或介质”包括具有实施在其上的指令程序的软件和/或硬件或它们的组合。利用所构想的这些替代实现方式,应当理解,附图以及随附描述提供本领域的技术人员编写程序代码(即,软件)和/或制造电路(即,硬件)以执行所需处理所要求的功能信息。
应当注意,本发明的实施方式还可涉及具有其上具有用于执行各种计算机实施的操作的计算机代码的非暂时性有形计算机可读介质的计算机产品。介质和计算机代码可为出于本发明的目的而专门设计和构造的介质和计算机代码,或者它们可为相关领域中的技术人员已知或可用的。有形计算机可读介质的示例包括但不限于:诸如硬盘、软盘和磁带的磁性介质;诸如CD-ROM和全息装置的光学介质;磁光介质;以及专门配置成存储或存储并执行程序代码的硬件装置,例如,专用集成电路(ASIC)、可编程逻辑器件(PLD)、闪存装置、以及ROM和RAM装置。计算机代码的示例包括机器代码(例如,编译器产生的代码)以及包含可由计算机使用解释器来执行的更高级代码的文件。本发明的实施方式可整体地或部分地实施为可在由处理装置执行的程序模块中的机器可执行指令。程序模块的示例包括库、程序、例程、对象、组件和数据结构。在分布的计算环境中,程序模块可物理上定位在本地、远程或两者的设定中。
本领域的技术人员将认识到,计算系统或编程语言对本发明的实践来说均不重要。本领域的技术人员将还将认识到,多个上述元件可物理地和/或在功能上划分成子模块或组合在一起。
1.一般性概述
本文中描绘的是使用运动相关数据(诸如,惯性测量单元(IMU)数据),结合图像,通过使用运动相关数据预测特征的位置来改进检测视觉特征的速度和精度的系统和方法。这样的实施方式比纯基于图像的方法执行得更好。在实施方式中,给定前一图像帧中的一组特征并给定下一图像帧,目标是定位下一图像帧中相同的一组特征(或尽可能得多的)。在实施方式中,使用运动相关数据(诸如陀螺仪数据和/或加速度计数据)来计算两个图像帧之间的相对位姿变换。在实施方式中,然后可对特征的图像位置进行变换,以获得它们在下一帧中的位置预测。这样的过程大大减少了下一图像帧中特征的搜索空间,从而加速了特征检测,以及防止了潜在的假匹配。在实施方式中,可执行位置细化以获得子像素级别精度的特征检测。在实施方式中,改进的视觉特征检测可用作为同步定位和地图创建(SLAM)过程的一部分,以帮助机器人或自主系统定向和导航更快、更准确。
图2包括根据本文件的实施方式的处理器系统的描绘。如图2中所示,处理器系统205可以是大型系统200(诸如机器人系统、自动驾驶车辆或其它类似系统)的一部分。在实施方式中,如上面图1所描述的,该系统可包括一个或多个计算系统或其部分。如图2中所描绘的,系统200还可包括移动系统210、惯性测量单元(IMU)或其它运动相关数据测量单元215和视觉系统220。应注意,系统200可包括额外的部件,此处未对额外的部件进行描绘以避免使本发明的方面不明确。
在实施方式中,移动系统210可包括一个或多个电机、伺服单元和/或促进系统200的运动的其它系统。在实施方式中,移动系统可包括处理器系统或可通信地联接至处理器系统,该处理器系统经由移动系统210控制系统200的运动。这种系统对本领域普通技术人员是公知的,并且可使用各种的这种系统中的任一个。应注意,在实施方式中,系统200未必包括移动系统。例如,不具有移动系统的系统200可并入到移动装置中,诸如平板计算机、智能手机或膝上型计算机,而是依赖于用户或一些其它的运输机制或力量。
在实施方式中,惯性测量单元(IMU)215可包括收集关于系统200的方位、速度、速率和/或加速度的一个或多个陀螺仪、加速度计或其它运动检测装置或运动相关测量装置。这种系统对本领域普通技术人员是公知的,并且可使用各种的这种系统中的任一个。应注意,运动相关测量数据可在若干轴上或沿着若干轴进行收集。如本领域普通技术人员公知的,与系统的运动相关的测量数据可有利地用于帮助确定系统200的位置和/或方位。
在实施方式中,视觉系统220可包括一个或多个摄像机,该一个或多个摄像机可拍摄视频图像、静止图像或两者。图像可从不同的角度进行捕捉,并且可同时地、连续地或两者兼具地进行捕捉。应理解,如本文中使用的术语“图像”应意指静止图像、视频图像或两者。这种系统对本领域普通技术人员是公知的,并且可使用各种的这种系统中的任一个。还如本领域普通技术人员公知的,图像可有利地用于帮助确定系统200的位置和/或方位。
如图2中所示,处理器系统205包括:运动相关数据积分器230、特征变换器245、特征检测器255和特征增强器260。在实施方式中,处理器系统205或系统200可包括SLAM引擎(未示出)或SLAM处理器,其中,SLAM引擎或SLAM处理器在2017年9月28日提交的、题为“SYSTEMS AND METHODS TO ACCOMMODATE STATE TRANSITIONS IN MAPPING(适应地图创建中状态转换的系统和方法)”的共同未决和共同转让的第62/564,831号美国专利申请中进行了描述,该专利将Yingze Bao和Mingyu Chen列为发明人。上述专利文献通过引用以其整体并入本文。虽然图2提供了对处理器系统205的部件的一般性概述,但是下面针对图3至图8更详细地描述这些部件的功能以及它们的整体交互作用。
2.运动相关数据积分器的实施方式
图3描绘了根据本文件的实施方式的可至少部分地由运动相关数据积分器230执行的方法。在实施方式中,所描绘的方法开始于:在捕获前一图像帧或接近捕获(就在捕获之前或刚在捕获之后)前一图像帧时,以及在捕获下一图像帧或接近捕获(就在捕获之前或刚在捕获之后)下一图像帧时,获取或收集运动相关数据225(305),其中,下一图像帧在本文中可称作为“当前”或“新”图像帧。在实施方式中,如图2中所示,运动相关数据积分器230可从IMU 215接收该信息(例如,陀螺仪数据和/或加速度计数据)。该信息可能由于请求、由于触发事件、由于推动操作或它们的组合而不断地被运动相关数据积分器接收到,或可以以各种时间间隔接收到。应注意,来自IMU 215的运动相关数据可提供给处理器系统205、直接地提供给运动相关数据积分器230,或提供给两者。
在实施方式中,运动相关数据包括从一个或多个陀螺仪的组收集的陀螺仪数据,其中,一个数据样本{gi}表示三个值的向量[gx,gy,gz]i(例如,沿着x方向、y方向和z方向的角速率)。
在实施方式中,运动相关数据积分器230使用收集的运动相关数据来计算旋转矩阵R(310),该旋转矩阵R表示在那个时间周期期间发生的运动。通过对陀螺仪数据{gi}进行积分,可计算该旋转矩阵。例如,在实施方式中,使用诸如RK4积分的龙格-库塔(Runge–Kutta)方法来估算旋转矩阵,尽管还可采用其它的方法。
应注意,整个方法可进行到接合特征变换器245。图4中描绘了可由特征变换器245采用的示例性方法的实施方式。
3.特征变换器的实施方式
图4描绘了根据本文件的实施方式的可至少部分地由特征变换器245执行的方法。在实施方式中,特征变换器245从前一图像帧中接收一组特征。在实施方式中,该组特征可从存储器/数据库240中获得,或可在从前一图像帧中提取了它们之后,由特征检测器255提供。在这样的实施方式中,即前一图像帧是本文中所讨论的方法实施方式的现有迭代中的当前图像时,可替代地,该组特征可从特征增强器260、新特征存储器/数据库265和/或先前特征存储器240中获得(在更新之后,见例如图8的步骤810)。
在实施方式中,特征可表示为Fi=[x,y,a,d]i,其中,x,y表示特征在图像中的位置,a是特征的角度(或对于不需要角度来提取描述子的特征,a=0),以及d是描述子向量,或可替代地,d是用于较少描述子特征的局部图像块。
在实施方式中,特征变换器245还接收由积分器230计算的旋转矩阵R 235。在实施方式中,对于来自前一图像帧的那组特征中的每个特征Fi,特征变换器245使用旋转矩阵R来试图预测当前图像帧中特征的位置和角度(405)。例如,在实施方式中,在前一图像帧中具有位置[x,y]的特征在当前图像帧中的预测位置[xnew,ynew],可确定为如下:
[xnew,ynew,1]T=KRK-1[x,y,1]T,
其中,K表示固有摄像机参数,以及R是来自积分器230的旋转矩阵。
在实施方式中,假定Δ为很小的值(例如,0.01像素),则“tip”计算为:
[xtip,ytip,1]T=KRK-1[x+Δcosa,y+Δsina,1]T;
以及预测的角度anew可数值计算为如下:
anew=(cos-1(xtip-xnew)/Δ+sin-1(ytip-ynew)/Δ)/2
在实施方式中,用于特征的描述子d保持相同。因此,获得的特征预测为:
在获得用于该组特征中的每个特征的预测的特征后,在实施方式中,特征变换器245将预测的特征250提供给特征检测器255(410),并且然后这些预测可用于帮助定位当前图像帧中的特征。本领域技术人员应理解,可采用各种方法搜索或以其它方式检测给定其预测位置的图像中的特征。图5和图6提供了可由特征检测器255执行的两个示例方法。
4.特征检测器的实施方式
如上所述,特征检测器可采用一个或多个特征检测方法来识别当前图像中的、与先前图像中的特征相对应的特征。在实施方式中,来自视觉系统220的图像数据可直接地提供给特征检测器255,或可经由一个或多个其它系统部件提供给特征检测器255,包括经由处理器系统205或其组合。
a)特征描述子为局部图像块的实施方式
在实施方式中,特征检测器255所采用的方法可取决于特征描述子的类型。图5描绘了当特征描述子d为局部图像块时,根据本文件的实施方式的可至少部分地由特征检测器执行的方法。
如图5中描绘的实施方式所示,该过程开始于:从该组先前特征中选择先前特征及其对应的预测特征位置(505)。在实施方式中,通过在当前图像帧中从预测的特征位置[xnew,ynew]开始执行光流搜索,以识别可与所选择的先前特征相匹配的候选特征(510)。
如果用于当前图像帧中的候选特征的光流分数高于差值分数(例如,平均像素值差大于20),则由于它与所选择的先前特征不匹配,该候选特征会被丢弃(520)。在实施方式中,特征检测器255可继续保持对局部图像块中的特征匹配的检查(或可在局部图像块之外扩大搜索)(525);否则,特征检测器255可认为在当前图像中未发现匹配(530)。
在实施方式中,如果存在来自该组先前特征中的另一特征尚未尝试与当前图像中的特征匹配(540),则过程可返回步骤505。
在实施方式中,如果没有其它先前特征要处理,则整个方法可进行到接合特征增强器260。图7中描绘了可由特征增强器260采用的示例性方法的实施方式。
如果用于当前图像中的候选特征的光流分数为不低于匹配阈值(515),则该候选特征可识别为与所选择的先前特征相匹配(535)。
如上所述,在实施方式中,如果存在来自该组先前特征中的另一特征尚未尝试与当前图像中的特征匹配(540),则过程可返回步骤505。如果没有其它先前特征要处理,则整个方法可进行到接合特征增强器260(545)。图7中描绘了可由特征增强器260采用的示例性方法的实施方式。
应注意,虽然图5中所示的方法将特征检测过程描绘为通过先前特征顺序地进行,但本领域技术人员应理解,该过程可批量地或同时地进行。
b)特征描述子为一个或多个描述子值的实施方式
图6描绘了当特征描述子d为一个或多个描述子值时,根据本文件的实施方式的可至少部分地由特征检测器255执行的方法。本领域技术人员应理解,可采用许多不同的方法来提取图像特征描述子。示例包括但不限于,定向的FAST和旋转的BRIEF(Oriented FASTand Rotated BRIEF(ORB)),加速鲁棒特征(Speeded-Up Robust Features(SURF)),尺度不变特征转换(Scale Invariant Feature Transform(SIFT)),主成分分析SIFT(PrincipalComponent Analysis SIFT(PCA-SIFT)),高斯差分(Difference of Gaussians(DoG))和来自加速段测试的特征(Features from Accelerated Segment Test(FAST))。
如图6中描绘的实施方式所示,该过程可开始于:从该组先前特征中选择先前特征及其对应的预测的特征位置(605)。在当前图像中,可在预测的特征位置[xnew,ynew]的局部邻域(例如,30像素的半径)内选择这样的一组候选特征点用于进一步的检查(610),该组特征点具有超过阈值(例如,对于FAST,阈值为20)的兴趣点分数或角点(cornerness)分数(例如,FAST,DoG等)。角点表示像素及其周围的像素类似于图像中的角落的可能性。
在实施方式中,可对预测的特征位置[xnew,ynew]的局部邻域中的每个候选特征提取一组特征描述子(615),其中,j表示当前图像中与来自该组先前特征中的先前特征相对应的第j个候选特征。虽然可通过特征检测器255提取的特征描述子有许多不同的类型,但是在实施方式中,特征描述子应与先前特征是相同的类型,以允许在先前特征描述子di与其对应的候选特征描述子中的每一个之间进行直接比较。在实施方式中,基于特征描述子与先前特征的比较,从候选特征当中识别最佳匹配特征(620)。在实施方式中,预测的特征位置[xnew,ynew]使用最佳匹配特征点的实际位置进行更新(630)。在实施方式中,虽然位置进行了更新,但是描述子di保持为与先前特征相同。在实施方式中,如果没有最佳匹配的候选,则可丢弃这个先前特征。
在实施方式中,如果存在来自该组先前特征中的另一特征尚未尝试与当前图像中的特征匹配(635),则过程可返回步骤605。在实施方式中,如果没有其它先前特征要处理,则整个方法可进行到接合特征增强器260。图7中描绘了可由特征增强器260采用的示例性方法的实施方式。
应注意,虽然图6中所示的方法将特征检测过程描绘为通过先前特征顺序地进行,但本领域技术人员应理解,该过程可批量地或同时地进行。
5.特征增强器的实施方式
图7描绘了根据本公开的实施方式的可至少部分地由特征增强器260执行的方法。在实施方式中,可对当前图像中检测到的特征执行子像素细化(705)。可使用的子像素细化的示例由Stefan Leutenegger,Margarita Chli和Roland Siegwart在2011年的IEEE国际计算机视觉会议(ICCV)的论文集中的“BRISK:Binary Robust Invariant ScalableKeypoints(BRISK:二元鲁棒不变可伸缩的关键点)”中进行讨论,该文章内容通过引用以其整体并入本文中,尽管可使用其它的子像素细化方法。在实施方式中,基于子像素细化,可丢弃角分数低于阈值的每个特征(710)。
由于特征检测器255、特征增强器260或两者可能丢弃了一些特征,因此在实施方式中,补充剩余的特征,使得输出的整个特征的总数等于来自前一帧中的输入特征。因此,在实施方式中,可对当前图像的一个或多个部分执行特征识别的一个或多个方法(例如,FAST、DoG、SIFT等)(715)。在实施方式中,选择用于特征识别的图像的一个或多个部分可以是该图像的、未在剩余特征中的一个的阈值距离内的那些区域。例如,可对当前图像应用掩码,该掩码掩盖剩余特征的区域以及剩余特征的40像素内的区域,并且新图像从非掩盖图像部分进行识别。对于每个新识别的特征,获得其图像位置、角度以及特征描述子值(即,[x,y,a,d])(720)。最后,形成用于当前图像的一组特征(725),包括剩余匹配的特征加上足够多的新识别的特征,使得用于当前图像的该组特征的尺寸与用于前一图像的那组先前特征的尺寸相同。
虽然图中未描绘,但是应注意,在实施方式中,由于获得了新的图像帧和图像之间的特征点的相互关系,因此系统200和/或处理器系统205可使用该信息来更新系统200的位置和方位信息。应注意,SLAM引擎(不示出)可使用该信息来执行一个或多个同步定位和地图创建(SLAM)方法。SLAM方法的示例包括但不限于:多状态约束卡尔曼滤波器(MSCKF)、基于开放关键帧的视觉惯性SLAM(OKVIS)、并行跟踪和地图创建(PTAM)、ORB-SLAM等。
应注意,整个过程可重复。图8描绘了根据本文件的实施方式的可至少部分地由特征增强器和/或系统处理器执行的方法。在实施方式中,一旦在当前图像帧中识别出特征,处理器系统205可确定是否结束该过程(805)。如果需要额外的处理,则整个过程可重复,将来自当前图像的一组特征设置为一组先前特征,以及将当前图像帧变为前一图像帧(810)。过程然后可返回图3的步骤305(815)。
如果决定结束该过程(805),在实施方式中,结束该过程可包括使用前一图像帧与当前图像帧之间的相关特征来更新用于系统200的地图创建数据,类似于前段中所讨论的,然后结束;或可替代地,处理器系统205可简单地结束(820)。
本领域技术人员将理解,前文的示例和实施方式是示例性的,并且不限制本公开的范围。旨在说明的是,在本领域的技术人员阅读本说明书并研究附图后将对本领域的技术人员显而易见的本发明的所有、置换、增强、等同、组合或改进包括在本公开的真实精神和范围内。还应注意的是,任何权利要求书的元素可不同地布置,包括具有多个从属、配置和组合。
Claims (20)
1.非暂时性计算机可读介质或媒介,包括一个或多个指令序列,所述一个或多个指令序列在由一个或多个处理器执行时,致使使用移动系统的运动相关数据进行视觉特征检测的步骤,所述步骤包括:
从在捕获前一图像帧之时或之后到捕获当前图像帧之前或之时的时间周期中,接收所述移动系统的运动相关数据;
使用所述运动相关数据中的至少一些来确定用于在所述时间周期的至少一部分期间所述移动系统的运动的旋转;
对于来自所述前一图像帧中的一组先前特征的每个先前特征:
给定来自所述前一图像帧中的一组先前特征的所述前一图像帧中的先前特征、以及所述旋转,确定在所述当前图像帧中所述先前特征的预测位置和角度;
至少使用所述先前特征的预测位置,检测所述当前图像帧中一个或多个类似特征;
对所述当前图像帧中的所检测到的类似特征中的至少一些执行子像素细化;
在子像素细化之后,丢弃其角分数低于角分数阈值的每个检测到的类似特征,以获得所述当前图像帧中的一组剩余特征;以及
使用所述先前特征中的至少一些和所述剩余特征中的至少一些来更新所述移动系统的位置和方位。
2.根据权利要求1所述的非暂时性计算机可读介质或媒介,其中,使用所述先前特征中的至少一些和所述剩余特征中的至少一些来更新所述移动系统的位置和方位的步骤包括:
使用所述先前特征中的至少一些和所述剩余特征中的至少一些来执行一个或多个同步定位和地图创建方法,以更新所述移动系统的位置和方位。
3.根据权利要求1所述的非暂时性计算机可读介质或媒介,其中,至少使用所述先前特征的预测位置,检测所述当前图像帧中一个或多个类似特征的步骤包括:
给定来自所述一组先前特征的先前特征和该先前特征的预测位置:
通过从所述当前图像帧中的所述预测位置开始执行光流搜索,以识别潜在地与所述先前特征相匹配的候选特征;
响应于用于所述当前图像帧中的所述候选特征的光流分数高于差异阈值分数,由于所述候选特征与所述先前特征不匹配,将所述候选特征丢弃;以及
响应于用于所述当前图像帧中的所述候选特征的光流分数未高于差异阈值分数,将所述候选特征归类为与所述先前特征相匹配。
4.根据权利要求3所述的非暂时性计算机可读介质或媒介,其中,响应于用于所述当前图像帧中的所述候选特征的光流分数高于差异阈值分数的步骤还包括:
响应于确定继续搜索候选特征:
在所述当前图像帧中的所述先前特征的预测位置的局部图像块内的所述当前图像帧中,搜索候选特征;
响应于用于所述当前图像帧中的所述候选特征的光流分数高于差异阈值分数,由于所述候选特征与所述先前特征不匹配,将所述候选特征丢弃;以及
响应于用于所述当前图像帧中的所述候选特征的光流分数未高于差异阈值分数,将所述候选特征归类为与所述先前特征相匹配;以及
响应于确定停止搜索候选特征,认为在所述当前图像帧中未发现与所述先前特征相匹配的特征。
5.根据权利要求1所述的非暂时性计算机可读介质或媒介,其中,特征包括在图像帧中的位置以及描述子,以及,其中,检测所述当前图像帧中一个或多个类似特征的步骤包括:
给定来自所述一组先前特征的先前特征和该先前特征的预测位置:
识别所预测的特征的位置的局部邻域内的、具有超过阈值的兴趣点分数或角点分数的一组候选特征点;
对来自所述一组候选特征点的每个候选特征提取特征描述子;
至少基于特征描述子与所述先前特征的比较,从所述一组候选特征点中选取最佳匹配的特征;以及
利用所述最佳匹配的特征的实际位置来更新所预测的特征的位置。
6.根据权利要求5所述的非暂时性计算机可读介质或媒介,所述步骤还包括以下步骤:
响应于没有最佳匹配的特征,丢弃所述先前特征。
7.根据权利要求1所述的非暂时性计算机可读介质或媒介,所述步骤还包括以下步骤:
对所述当前图像帧的一个或多个部分执行一个或多个特征识别方法,以识别一组附加特征。
8.根据权利要求7所述的非暂时性计算机可读介质或媒介,其中,选择用于特征识别的所述当前图像帧的所述一个或多个部分是所述当前图像帧的、未在所述剩余特征中的一个的阈值距离内的那些部分。
9.根据权利要求1所述的非暂时性计算机可读介质或媒介,所述步骤还包括以下步骤:
补充所述当前图像帧的所述一组剩余特征,使得来自所述当前图像帧中的特征的总数量处于所述一组先前特征的数值范围内。
10.用于使用移动系统的运动相关数据进行视觉特征检测的处理器实施的方法,所述方法包括:
从在捕获前一图像帧之时或之后到捕获当前图像帧之前或之时的时间周期中,接收所述移动系统的运动相关数据;
使用所述运动相关数据中的至少一些来确定在所述时间周期的至少一部分期间所述移动系统的运动的旋转;
对于来自所述前一图像帧中的一组先前特征的每个先前特征:
给定来自所述前一图像帧中的一组先前特征的所述前一图像帧中的先前特征、以及所述旋转,确定在所述当前图像帧中所述先前特征的预测位置和角度;
至少使用所述先前特征的预测位置,检测所述当前图像帧中一个或多个类似特征;
对所述当前图像帧中的所检测到的类似特征中的至少一些执行子像素细化;
在子像素细化之后,丢弃其角分数低于角分数阈值的每个检测到的类似特征,以获得所述当前图像帧中的一组剩余特征;以及
使用所述先前特征中的至少一些和所述剩余特征中的至少一些来更新所述移动系统的位置和方位。
11.根据权利要求10所述的处理器实施的方法,其中,使用所述先前特征中的至少一些和所述剩余特征中的至少一些来更新所述移动系统的位置和方位的步骤包括:使用所述先前特征中的至少一些和所述剩余特征中的至少一些来执行一个或多个同步定位和地图创建方法,以更新所述移动系统的位置和方位。
12.根据权利要求10所述的处理器实施的方法,其中,至少使用所述先前特征的预测位置,检测所述当前图像帧中一个或多个类似特征的步骤包括:
给定来自所述一组先前特征的先前特征和该先前特征的预测位置:
通过从所述当前图像帧中的所述预测位置开始执行光流搜索,以识别潜在地与所述先前特征相匹配的候选特征;
响应于用于所述当前图像帧中的所述候选特征的光流分数高于差异阈值分数,由于所述候选特征与所述先前特征不匹配,将所述候选特征丢弃;以及
响应于用于所述当前图像帧中的所述候选特征的光流分数未高于差异阈值分数,将所述候选特征归类为与所述先前特征相匹配。
13.根据权利要求12所述的处理器实施的方法,其中,响应于用于所述当前图像帧中的所述候选特征的光流分数高于差异阈值分数的步骤还包括:
响应于确定继续搜索候选特征:
在所述当前图像帧中的所述先前特征的预测位置的局部图像块内的所述当前图像帧中,搜索候选特征;
响应于用于所述当前图像帧中的所述候选特征的光流分数高于差异阈值分数,由于所述候选特征与所述先前特征不匹配,将所述候选特征丢弃;以及
响应于用于所述当前图像帧中的所述候选特征的光流分数未高于差异阈值分数,将所述候选特征归类为与所述先前特征相匹配;以及
响应于确定停止搜索候选特征,认为在所述当前图像帧中未发现与所述先前特征相匹配的特征。
14.根据权利要求10所述的处理器实施的方法,其中,特征包括在图像帧中的位置以及描述子,以及,
其中,检测所述当前图像帧中一个或多个类似特征的步骤包括:
给定来自所述一组先前特征的先前特征和该先前特征的预测位置:
识别所预测的特征的位置的局部邻域内的、具有超过阈值的兴趣点分数或角点分数的一组候选特征点;对来自所述一组候选特征点的每个候选特征提取特征描述子;
至少基于特征描述子与所述先前特征的比较,从所述一组候选特征点中选取最佳匹配的特征;以及
利用所述最佳匹配的特征的实际位置来更新所预测的特征的位置。
15.根据权利要求14所述的处理器实施的方法,还包括以下步骤:
响应于没有最佳匹配的特征,丢弃所述先前特征。
16.移动系统,用于使用所述移动系统的运动相关数据进行视觉特征检测,所述移动系统包括:
视觉系统,用于捕捉一个或多个图像帧;
一个或多个传感器,用于捕捉运动相关数据;
一个或多个处理器;以及
非暂时性计算机可读介质或媒介,包括一个或多个指令序列,所述一个或多个指令序列在由所述一个或多个处理器中的至少一个处理器执行时,致使执行步骤,所述步骤包括:
从在捕获前一图像帧之时或之后到捕获当前图像帧之前或之时的时间周期中,接收所述移动系统的运动相关数据;
使用所述运动相关数据中的至少一些来确定在所述时间周期的至少一部分期间所述移动系统的运动的旋转;
对于来自所述前一图像帧中的一组先前特征的每个先前特征:
给定来自所述前一图像帧中的一组先前特征的所述前一图像帧中的先前特征、以及所述旋转,确定在所述当前图像帧中所述先前特征的预测位置和角度;
至少使用所述先前特征的预测位置,检测所述当前图像帧中一个或多个类似特征;
对所述当前图像帧中的所检测到的类似特征中的至少一些执行子像素细化;
在子像素细化之后,丢弃其角分数低于角分数阈值的每个检测到的类似特征,以获得所述当前图像帧中的一组剩余特征;以及
使用所述先前特征中的至少一些和所述剩余特征中的至少一些来更新所述移动系统的位置和方位。
17.根据权利要求16所述的移动系统,其中,使用所述先前特征中的至少一些和所述剩余特征中的至少一些来更新所述移动系统的位置和方位的步骤包括:
使用所述先前特征中的至少一些和所述剩余特征中的至少一些来执行一个或多个同步定位和地图创建方法,以更新所述移动系统的位置和方位。
18.根据权利要求16所述的移动系统,其中,至少使用所述先前特征的预测位置,检测所述当前图像帧中一个或多个类似特征的步骤包括:
给定来自所述一组先前特征的先前特征和该先前特征的预测位置:
通过从所述当前图像帧中的所述预测位置开始执行光流搜索,以识别潜在地与所述先前特征相匹配的候选特征;
响应于用于所述当前图像帧中的所述候选特征的光流分数高于差异阈值分数,由于所述候选特征与所述先前特征不匹配,将所述候选特征丢弃;以及
响应于用于所述当前图像帧中的所述候选特征的光流分数未高于差异阈值分数,将所述候选特征归类为与所述先前特征相匹配。
19.根据权利要求18所述的移动系统,其中,响应于用于所述当前图像帧中的所述候选特征的光流分数高于差异阈值分数的步骤还包括:
响应于确定继续搜索候选特征:
在所述当前图像帧中的所述先前特征的预测位置的局部图像块内的所述当前图像帧中,搜索候选特征;
响应于用于所述当前图像帧中的所述候选特征的光流分数高于差异阈值分数,由于所述候选特征与所述先前特征不匹配,将所述候选特征丢弃;以及
响应于用于所述当前图像帧中的所述候选特征的光流分数未高于差异阈值分数,将所述候选特征归类为与所述先前特征相匹配;以及
响应于确定停止搜索候选特征,认为在所述当前图像帧中未发现与所述先前特征相匹配的特征。
20.根据权利要求16所述的移动系统,其中,特征包括在图像帧中的位置以及描述子,以及,
其中,检测所述当前图像帧中一个或多个类似特征的步骤包括:
给定来自所述一组先前特征的先前特征和该先前特征的预测位置:
识别所预测的特征的位置的局部邻域内的、具有超过阈值的兴趣点分数或角点分数的一组候选特征点;对来自所述一组候选特征点的每个候选特征提取特征描述子;
至少基于特征描述子与所述先前特征的比较,从所述一组候选特征点中选取最佳匹配的特征;以及
利用所述最佳匹配的特征的实际位置来更新所预测的特征的位置。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762564864P | 2017-09-28 | 2017-09-28 | |
US62/564,864 | 2017-09-28 | ||
US16/102,642 US10776652B2 (en) | 2017-09-28 | 2018-08-13 | Systems and methods to improve visual feature detection using motion-related data |
US16/102,642 | 2018-08-13 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109583290A CN109583290A (zh) | 2019-04-05 |
CN109583290B true CN109583290B (zh) | 2022-12-16 |
Family
ID=65809137
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811138861.0A Active CN109583290B (zh) | 2017-09-28 | 2018-09-28 | 使用运动相关数据改进视觉特征检测的系统和方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10776652B2 (zh) |
CN (1) | CN109583290B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017172778A1 (en) * | 2016-03-28 | 2017-10-05 | Sri International | Collaborative navigation and mapping |
CN108875525A (zh) * | 2018-01-04 | 2018-11-23 | 北京旷视科技有限公司 | 行为预测方法、装置、系统和存储介质 |
WO2019194561A1 (ko) * | 2018-04-03 | 2019-10-10 | 한국과학기술원 | 이동형 단말기에서의 증강 현실을 제공하기 위한 위치 인식 방법 및 시스템 |
US11087577B2 (en) * | 2018-12-14 | 2021-08-10 | Johnson Controls Tyco IP Holdings LLP | Systems and methods of secure pin code entry |
WO2021027440A1 (zh) * | 2019-08-15 | 2021-02-18 | 华为技术有限公司 | 一种人脸检索方法及装置 |
WO2021035669A1 (zh) * | 2019-08-30 | 2021-03-04 | 深圳市大疆创新科技有限公司 | 位姿预测方法、地图构建方法、可移动平台及存储介质 |
WO2021147095A1 (en) * | 2020-01-23 | 2021-07-29 | Baidu.Com Times Technology (Beijing) Co., Ltd. | Deep residual network for color filter array image denoising |
CN111914670B (zh) * | 2020-07-08 | 2024-10-15 | 浙江大华技术股份有限公司 | 一种遗留物品检测方法、装置、系统及存储介质 |
US11640668B2 (en) * | 2021-06-10 | 2023-05-02 | Qualcomm Incorporated | Volumetric sampling with correlative characterization for dense estimation |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106446815A (zh) * | 2016-09-14 | 2017-02-22 | 浙江大学 | 一种同时定位与地图构建方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100926760B1 (ko) * | 2007-12-17 | 2009-11-16 | 삼성전자주식회사 | 이동 로봇의 위치 인식 및 지도 작성 방법 |
US9400930B2 (en) * | 2013-09-27 | 2016-07-26 | Qualcomm Incorporated | Hybrid photo navigation and mapping |
CN103984037B (zh) * | 2014-04-30 | 2017-07-28 | 深圳市墨克瑞光电子研究院 | 基于视觉的移动机器人障碍物检测方法和装置 |
EP3159126A4 (en) * | 2014-06-17 | 2018-05-30 | Yujin Robot Co., Ltd. | Device and method for recognizing location of mobile robot by means of edge-based readjustment |
EP3182373B1 (en) * | 2015-12-17 | 2019-06-19 | STMicroelectronics S.A. | Improvements in determination of an ego-motion of a video apparatus in a slam type algorithm |
-
2018
- 2018-08-13 US US16/102,642 patent/US10776652B2/en active Active
- 2018-09-28 CN CN201811138861.0A patent/CN109583290B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106446815A (zh) * | 2016-09-14 | 2017-02-22 | 浙江大学 | 一种同时定位与地图构建方法 |
Non-Patent Citations (2)
Title |
---|
《Monocular visual odometry based on optical flow and feature matching》;Cheng chuanqi,et al;《2017 29th CCDC》;20170717;全文 * |
《室内环境下基于图优化的视觉惯性SLAM方法》;徐晓苏,等;《中国惯性技术学报》;20170630;第25卷(第3期);第313-319页 * |
Also Published As
Publication number | Publication date |
---|---|
US10776652B2 (en) | 2020-09-15 |
CN109583290A (zh) | 2019-04-05 |
US20190095745A1 (en) | 2019-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109583290B (zh) | 使用运动相关数据改进视觉特征检测的系统和方法 | |
CN110322500B (zh) | 即时定位与地图构建的优化方法及装置、介质和电子设备 | |
JP7221089B2 (ja) | 動的な交通参加者の除去による位置推定と地図生成の安定した同時実行 | |
US10817714B2 (en) | Method and apparatus for predicting walking behaviors, data processing apparatus, and electronic device | |
CN109584276B (zh) | 关键点检测方法、装置、设备及可读介质 | |
US9986208B2 (en) | System and method for determining location of a device using opposing cameras | |
CN110246182B (zh) | 基于视觉的全局地图定位方法、装置、存储介质和设备 | |
US11210570B2 (en) | Methods, systems and media for joint manifold learning based heterogenous sensor data fusion | |
CN112240768A (zh) | 基于Runge-Kutta4改进预积分的视觉惯导融合SLAM方法 | |
EP3577597A1 (en) | Efficient image analysis using environment sensor data | |
WO2018063608A1 (en) | Place recognition algorithm | |
US20220156973A1 (en) | Information processing apparatus, information processing method, and program | |
WO2020186943A1 (zh) | 移动设备的姿态确定装置、方法和视觉里程计 | |
CN110986969A (zh) | 地图融合方法及装置、设备、存储介质 | |
CN111832579B (zh) | 地图兴趣点数据处理方法、装置、电子设备以及可读介质 | |
US11195024B1 (en) | Context-aware action recognition by dual attention networks | |
Liu et al. | A cloud infrastructure for target detection and tracking using audio and video fusion | |
JP2022034034A (ja) | 障害物検出方法、電子機器、路側機器、及びクラウド制御プラットフォーム | |
KR102618069B1 (ko) | 지상조사 로봇의 점군 자료와 시각정보를 이용한 실내건물 재난정보 분석 방법 및 장치 | |
US11175148B2 (en) | Systems and methods to accommodate state transitions in mapping | |
CN111310595A (zh) | 用于生成信息的方法和装置 | |
CN115393755A (zh) | 视觉目标跟踪方法、装置、设备以及存储介质 | |
CN111339226B (zh) | 一种基于分类检测网络构建地图方法及装置 | |
Ghalehshahi et al. | Slam performance on embedded robots | |
CN116012624B (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 |