CN111210476B - 一种同时定位与建图的方法及装置 - Google Patents
一种同时定位与建图的方法及装置 Download PDFInfo
- Publication number
- CN111210476B CN111210476B CN201811401646.5A CN201811401646A CN111210476B CN 111210476 B CN111210476 B CN 111210476B CN 201811401646 A CN201811401646 A CN 201811401646A CN 111210476 B CN111210476 B CN 111210476B
- Authority
- CN
- China
- Prior art keywords
- camera
- image
- binocular
- map
- virtual pinhole
- 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
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
- G06T7/74—Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
-
- 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/20—Instruments for performing navigational calculations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
一种同时定位与建图的方法,通过双目大视场相机获取左视场图像和右视场图像;基于第一多虚拟针孔相机模型,得到左视场图像对应的左去畸变图像;基于第二多虚拟针孔相机模型,得到右视场图像对应的右去畸变图像;基于左去畸变图像和所述右去畸变图像,确定所述双目大视场相机的位姿并构建地图;其中,所述第一多虚拟针孔相机模型包括至少两个不同朝向的虚拟针孔相机,且所述至少两个不同朝向的虚拟针孔相机的相机中心与所述双目大视场相机的左侧相机的相机中心重合;所述第二多虚拟针孔相机模型包括至少两个不同朝向的虚拟针孔相机,且所述至少两个不同朝向的虚拟针孔相机的相机中心与所述双目大视场相机的右侧相机的相机中心重合。
Description
技术领域
本发明涉及同时定位与建图领域,尤其涉及一种基于双目鱼眼相机的同时定位与建图方法以及装置。
背景技术
同时定位与建图(Simultaneous Localization And Mapping,简称SLAM)是一种通过实时跟踪机器人运动并在此过程中同时建立周围环境地图以达到定位导航等目标的技术。
传统的单目SLAM使用的相机为透视相机(perspective camera)或者称为针孔相机(pinhole camera)。由于相机的视角(Field-of-View)有限,所获取的图像间存在的共有特征不足,可能导致SLAM算法跟踪丢失。相对于传统SLAM使用的针孔相机,大视场相机具有更大的视角,因而得到了广泛的研究和关注。
现有的基于大视场图像的SLAM技术方案主要有两种。
一种是先对大视场相机获得的大视场图像使用传统的去畸变方法进行去畸变处理,再把去畸变后的图像作为普通图像使用传统单目SLAM技术实现同时定位与建图。这种技术方案简单易行,但是传统的去畸变方法将导致损失很多的视角,不能充分利用大视场相机的广视角。
另一种是基于大视场相机成像模型直接针对未做畸变校正的大视场图像进行SLAM处理。即直接在未做畸变校正的大视场图像上提取特征进行处理。这种技术方案提取的特征可能会受到图像畸变的影响,同时复杂的大视场相机成像模型将导致优化变得异常复杂,从而影响系统的性能。
因此,迫切需要一种新的SLAM技术,能够保留大视场相机的所有视野同时避免图像畸变的影响,同时又能兼顾对景深的探测、定位、建图。
发明内容
本申请的目的在于提供一种同时定位与建图的方法。该方法可以,基于多虚拟针孔相机模型,将双目鱼眼相机获取的左鱼眼图像和右鱼眼图像去畸变;根据去畸变后的图像进行同时定位和建图。
本申请一方面提供一种同时定位与建图的方法。所述方法包括:
在一些实施例中介绍了一种同时定位与建图的方法。通过双目大视场相机获取左视场图像和右视场图像;基于第一多虚拟针孔相机模型,得到所述左视场图像对应的左去畸变图像;基于第二多虚拟针孔相机模型,得到所述右视场图像对应的右去畸变图像;基于所述左去畸变图像和所述右去畸变图像,确定所述双目大视场相机的位姿并构建地图;其中,所述第一多虚拟针孔相机模型包括至少两个不同朝向的虚拟针孔相机,且所述至少两个不同朝向的虚拟针孔相机的相机中心与所述双目大视场相机的左侧相机的相机中心重合;所述第二多虚拟针孔相机模型包括至少两个不同朝向的虚拟针孔相机,且所述至少两个不同朝向的虚拟针孔相机的相机中心与所述双目大视场相机的右侧相机的相机中心重合。
在一些实施例中,所述方法进一步包括:使所述双目大视场相机的左侧相机和右侧相机的光轴平行。
在一些实施例中,所述的同时定位与建图的方法,还包括基于所述左去畸变图像和所述右去畸变图像,确定所述双目大视场相机的位姿并构建地图,包括:确定所述左去畸变图像和所述右去畸变图像互相匹配的特征点;基于所述互相匹配的特征点构建地图。
在一些实施例中,所述的同时定位与建图的方法,其特征在于,所述确定所述左去畸变图像和所述右去畸变图像互相匹配的特征点,包括:确定所述左去畸变图像中的特征点在所述右去畸变图像中对应的极线;在所述极线上搜索与所述左去畸变图像中的特征点匹配的特征点;其中,所述极线为多线段折线。
在一些实施例中,所述的同时定位与建图的方法,其特征在于,所述基于所述互相匹配的特征点构建地图,包括:基于所述左去畸变图像中的特征点和所述双目大视场相机的左侧相机的相机中心,确定第一特征点对应的方向向量;基于所述右去畸变图像中匹配的特征点和所述双目大视场相机的右侧相机的相机中心,确定第二特征点对应的方向向量;基于所述双目大视场相机的基线,对所述第一特征点对应的方向向量和所述第二特征点对应的方向向量进行三角测量,确定所述特征点对应的地图点;基于所述地图点构建地图。
在一些实施例中,所述的同时定位与建图的方法,其特征在于,基于所述左去畸变图像和所述右去畸变图像,确定所述双目大视场相机的位姿并构建地图,包括:基于所述第一多虚拟针孔相机模型,将所述左去畸变图像关联的地图点投影到所述至少两个不同朝向的虚拟针孔相机的成像平面上,得到所述地图点在所述第一多虚拟针孔相机模型中的重投影点;根据所述地图点在所述第一多虚拟针孔相机模型中的重投影点与所述地图点对应的特征点,确定所述地图点的重投影误差;根据所有所述左去畸变图像关联的地图点的重投影误差确定左重投影误差;或基于所述第二多虚拟针孔相机模型,将所述右去畸变图像关联的地图点投影到所述至少两个不同朝向的虚拟针孔相机的成像平面上,得到所述地图点在所述第二多虚拟针孔相机模型中的重投影点;根据所述地图点在所述第二多虚拟针孔相机模型中的重投影点与所述地图点对应的特征点,确定所述地图点的重投影误差;根据所有所述右去畸变图像关联的地图点的重投影误差确定右重投影误差;基于所述左重投影误差或所述右重投影误差,确定所述双目大视场相机的当前位姿。
在一些实施例中,所述的同时定位与建图的方法,其特征在于,基于所述左去畸变图像和所述右去畸变图像,确定所述双目大视场相机的位姿并构建地图,包括:基于所述左重投影误差和所述右重投影误差,确定所述双目大视场相机的当前位姿。
在一些实施例中,所述的同时定位与建图的方法,其特征在于,所述参考帧为其前一双目图像帧,或与当前双目图像帧或其前一双目图像帧共视程度最高的关键双目图像帧。
在一些实施例中,所述的同时定位与建图的方法,其特征在于,所述至少两个不同朝向包括:立方体的前朝向、上朝向、下朝向、左朝向或右朝向。
在一些实施例中介绍了一种同时定位与建图的装置,所述装置执行如前所述的同时定位与建图的方法。
本申请中另外的特征将部分地在下面的描述中阐述。通过该阐述,使以下附图和实施例叙述的内容对本领域普通技术人员来说变得显而易见。本申请中的发明点可以通过实践或使用下面讨论的详细示例中阐述的方法、手段及其组合来得到充分阐释。
附图说明
以下附图详细描述了本申请中披露的示例性实施例。其中相同的附图标记在附图的若干视图中表示类似的结构。本领域的一般技术人员将理解这些实施例是非限制性的、示例性的实施例,附图仅用于说明和描述的目的,并不旨在限制本公开的范围,其他方式的实施例也可能同样的完成本申请中的发明意图。应当理解,附图未按比例绘制。其中:
图1示出了根据本申请的一些实施例所示的同时定位与建图的系统;
图2示出了根据本申请的一些实施例所示的同时定位与建图的方法的流程图;
图3示出了根据本申请的一些实施例所示的基于多虚拟针孔相机模型去畸变的示意图;
图4示出了根据本申请的一些实施例所示的去畸变后的鱼眼图;
图5示出了根据本申请的一些实施例所示的构建地图点的示意图;
图6示出了根据本申请的一些实施例所示的原始鱼眼帧和去畸变后的鱼眼帧。
具体实施方式
以下描述提供了本申请的特定应用场景和要求,目的是使本领域技术人员能够制造和使用本申请中的内容。对于本领域技术人员来说,对所公开的实施例的各种局部修改是显而易见的,并且在不脱离本公开的精神和范围的情况下,可以将这里定义的一般原理应用于其他实施例和应用。因此,本公开不限于所示的实施例,而是与权利要求一致的最宽范围。
这里使用的术语仅用于描述特定示例实施例的目的,而不是限制性的。比如,除非上下文另有明确说明,这里所使用的,单数形式“一”,“一个”和“该”也可以包括复数形式。当在本说明书中使用时,术语“包括”、“包含”和/或“含有”意思是指所关联的整数,步骤、操作、元素和/或组件存在,但不排除一个或多个其他特征、整数、步骤、操作、元素、组件和/或在该系统/方法中可以添加其他特征、整数、步骤、操作、元素、组件。
考虑到以下描述,本公开的这些特征和其他特征、以及结构的相关元件的操作和功能、以及部件的组合和制造的经济性可以得到明显提高。参考附图,所有这些形成本公开的一部分。然而,应该清楚地理解,附图仅用于说明和描述的目的,并不旨在限制本公开的范围。
本公开中使用的流程图示出了根据本公开中的一些实施例的系统实现的操作。应该清楚地理解,流程图的操作可以不按顺序实现。相反,操作可以以反转顺序或同时实现。此外,可以向流程图添加一个或多个其他操作。可以从流程图中移除一个或多个操作。
本公开的一个方面涉及一种同时定位与建图的方法。具体地,该方法包括通过双目鱼眼相机获取左鱼眼图像和右鱼眼图像;基于多虚拟针孔相机模型,获取所述左鱼眼图像和所述右鱼眼图像的去畸变图像;然后,基于所述去畸变图像,确定双目鱼眼相机的位姿并构建地图。
图1示出了根据本申请的一些实施例所示的同时定位与建图的系统。
同时定位与建图的系统100可以获取鱼眼图像并执行同时定位与建图的方法。所述同时定位与建图的方法可以参考图2至图5的描述。
如图所示,同时定位和建图的系统100可以包括双目大视场相机101和同时定位和建图的装置102。所述大视场相机101和同时定位和建图的装置102可以作为整体安装,也可以分别安装。处于陈述本公开的发明点方便,本公开中的大视场相机以鱼眼相机为例。
双目鱼眼相机101用于获取景物的鱼眼图像。为了方便说明,本申请中,双目鱼眼相机101的左侧相机称为左目;双目鱼眼相机101的右侧相机称为右目。左目获取的图像称为左鱼眼图像(左视场图像),右目获取的图像称为右鱼眼图像(右视场图像)。
同时定位和建图的装置102为可以执行同时定位和建图的方法的示例性计算设备。
在一些实施例中,同时定位和建图的装置102可以包括COM端口150,以便于数据通信。同时定位和建图的装置102还可以包括处理器120,处理器120以一个或多个处理器的形式,用于执行计算机指令。计算机指令可以包括例如执行本文描述的特定功能的例程,程序,对象,组件,数据结构,过程,模块和功能。例如,处理器120可以基于多虚拟针孔相机模型确定鱼眼图像的去畸变图像。又例如,处理器120可以基于去畸变图像确定双目鱼眼相机101的位姿并构建地图。
在一些实施例中,处理器120可以包括一个或多个硬件处理器,例如微控制器,微处理器,精简指令集计算机(RISC),专用集成电路(ASIC),特定于应用的指令-集处理器(ASIP),中央处理单元(CPU),图形处理单元(GPU),物理处理单元(PPU),微控制器单元,数字信号处理器(DSP),现场可编程门阵列(FPGA),高级RISC机器(ARM),可编程逻辑器件(PLD),能够执行一个或多个功能的任何电路或处理器等,或其任何组合。
在一些实施例中,同时定位和建图的装置102可以包括内部通信总线110,程序存储和不同形式的数据存储(例如,磁盘170,只读存储器(ROM)130,或随机存取存储器(RAM)140)。同时定位和建图的装置102还可以包括存储在ROM 130,RAM 140和/或将由处理器120执行的其他类型的非暂时性存储介质中的程序指令。本申请的方法和/或过程可以作为程序指令实现。同时定位和建图的装置102还包括I/O组件160,支持计算机和其他组件(例如,用户界面元件)之间的输入/输出。同时定位和建图的装置102还可以通过网络通信接收编程和数据。
仅仅为了说明问题,在本申请中同时定位和建图的装置102中仅描述了一个处理器。然而,应当注意,本申请中同时定位和建图的装置102还可以包括多个处理器,因此,本申请中披露的操作和/或方法步骤可以如本公开所述的由一个处理器执行,也可以由多个处理器联合执行。例如,如果在本申请中同时定位和建图的装置102的处理器120执行步骤A和步骤B,则应该理解,步骤A和步骤B也可以由信息处理中的两个不同处理器联合或分开执行(例如,第一处理器执行步骤A,第二处理器执行步骤B,或者第一和第二处理器共同执行步骤A和B)。
图2示出了根据本申请的一些实施例所示的同时定位与建图的方法的流程图。流程200可以实施为同时定位和建图的装置102中的非临时性存储介质中的一组指令。同时定位和建图的装置102可以执行该一组指令并且可以相应地执行流程200中的步骤。
以下呈现的所示流程200的操作,旨在是说明性的而非限制性的。在一些实施例中,流程200在实现时可以添加一个或多个未描述的额外操作,和/或删减一个或多个此处所描述的操作。此外,图2中所示的和下文描述的操作的顺序并不对此加以限制。
在210中,同时定位和建图的装置102可以通过双目鱼眼相机101获取左鱼眼图像和右鱼眼图像。
应当理解的是,双目鱼眼相机101也可以替换为其他大视场双目相机,例如,反射折射双目相机、全景成像双目相机。
在220中,同时定位和建图的装置102可以基于第一多虚拟针孔相机模型,得到所述左鱼眼图像对应的左去畸变图像。
上述第一多虚拟针孔相机模型可以包括至少两个不同朝向的虚拟针孔相机。在一些实施例中,所述至少两个不同朝向的虚拟针孔相机的相机中心与双目鱼眼相机101的左目的相机中心重合。
作为示例,上述第一多虚拟针孔相机模型可以包括五个不同朝向的虚拟针孔相机,所述五个不同朝向分别为立方体的前朝向、上朝向、下朝向、左朝向或右朝向。此时,所述第一多虚拟针孔相机模型为基于立方体映射的去畸变方法(cubemap-basedundistortion method)(以下简称Cube或者立方体模型)。
具体地,同时定位和建图的装置102可以将左鱼眼图像投影到上述至少两个不同朝向的虚拟针孔相机的成像平面上,得到所述至少两个不同朝向的虚拟针孔相机的投影图,展开所述至少两个不同朝向的虚拟针孔相机的投影图,即可得到所述左鱼眼图像对应的去畸变图像。为了方便说明,本申请中,左鱼眼图像去畸变后的图像称为左去畸变图像。
在230中,同时定位和建图的装置102可以基于第二多虚拟针孔相机模型,得到所述右鱼眼图像对应的右去畸变图像。
上述第二多虚拟针孔相机模型可以包括至少两个不同朝向的虚拟针孔相机。在一些实施例中,所述至少两个不同朝向的虚拟针孔相机的相机中心与双目鱼眼相机101的右目的相机中心重合。
作为示例,上述第二多虚拟针孔相机模型可以包括五个不同朝向的虚拟针孔相机,所述五个不同朝向分别为立方体的前朝向、上朝向、下朝向、左朝向或右朝向。此时,所述第二多虚拟针孔相机模型为立方体模型。
具体地,同时定位和建图的装置102可以将右鱼眼图像投影到上述至少两个不同朝向的虚拟针孔相机的成像平面上,得到所述至少两个不同朝向的虚拟针孔相机的投影图,展开所述至少两个不同朝向的虚拟针孔相机的投影图,即可得到所述右鱼眼图像对应的去畸变图像。为了方便说明,本申请中,右鱼眼图像去畸变后的图像称为右去畸变图像。
参考图3,其示出了根据本申请的一些实施例所示的基于多虚拟针孔相机模型去畸变的示意图。以下,以第一多虚拟针孔相机模型和左鱼眼图像为示例。
点A为双目鱼眼相机的左目的相机中心,点B、点C和点D为左鱼眼图像中示例性的像素。第一多虚拟针孔相机310为立方体模型,包括五个朝向的虚拟针孔相机,分别为立方体的前朝向、上朝向、下朝向、左朝向及右朝向。所述五个朝向的虚拟针孔相机的相机中心重合于点A。
如图所示,将左鱼眼图像投影到第一多虚拟针孔相机模型310的五个不同朝向的虚拟针孔相机的成像平面上。相应地,可以得到五个不同朝向的投影图。将所述五个不同朝向的投影图展开,即可得到左去畸变图像。
图4示出了根据本申请的一些实施例所示的去畸变后的鱼眼图,包括左去畸变图像410和右去畸变图像420。如图所示,左去畸变图像410和右去畸变图像420分别保留了左鱼眼图像和右鱼眼图像的所有视角。基于左去畸变图像410和右去畸变图像420进行同时定位和建图能够构建包括原有所有视角内容的地图。
在240中,同时定位和建图的装置102可以基于所述左去畸变图像和所述右去畸变图像,确定所述双目鱼眼相机的位姿并构建地图。
在一些实施例中,同时定位和建图的装置102可以基于左畸变图像或右畸变图像确定双目鱼眼相机101的位姿。即,同时定位和建图的装置102可以执行跟踪步骤,具体描述如下:
同时定位和建图的装置102可以基于所述第一多虚拟针孔相机模型,将左去畸变图像关联的地图点投影到所述至少两个不同朝向的虚拟针孔相机的成像平面上,得到所述地图点在所述第一多虚拟针孔相机模型中的重投影点;根据所述地图点在所述第一多虚拟针孔相机模型中的重投影点与所述地图点对应的特征点,确定所述地图点的重投影误差;根据所有所述左去畸变图像关联的地图点的重投影误差确定左重投影误差。
相应地,同时定位和建图的装置102可以基于所述第二多虚拟针孔相机模型,将所述右去畸变图像关联的地图点投影到所述至少两个不同朝向的虚拟针孔相机的成像平面上,得到所述地图点在所述第二多虚拟针孔相机模型中的重投影点;根据所述地图点在所述第二多虚拟针孔相机模型中的重投影点与所述地图点对应的特征点,确定所述地图点的重投影误差;根据所有所述右去畸变图像关联的地图点的重投影误差确定右重投影误差。
上述左去畸变图像关联的地图点是指,左去畸变图像中特征点对应的地图点;上述右去畸变图像关联的地图点是指,右去畸变图像中特征点对应的地图点。在一些实施例中,同时定位和建图的装置102可以提取左去畸变图像和有去畸变图像的特征点构建双目图像帧(本申请中,以双目鱼眼帧为例),然后基于双目鱼眼帧中的特征点确定地图点。
在一些实施例中,同时定位和建图的装置102可以基于左重投影误差或右重投影误差确定双目鱼眼相机101的位姿。例如,对于单目地图点,同时定位和建图的装置102可以基于左重投影误差或右重投影误差确定双目鱼眼相机101的位姿。
在一些实施例中,同时定位和建图的装置102可以基于左重投影误差和右重投影误差确定双目鱼眼相机101的位姿。例如,对于双目地图点,同时定位和建图的装置102可以基于左投影和右投影误差之和确定双目鱼眼相机101的位姿。
具体地,同时定位和建图的装置102可以求解左重投影误差、右重投影误差,或左重投影误差与右重投影误差之和确定双目鱼眼相机101的位姿增量;然后,结合先验信息,确定双目鱼眼相机101的当前位姿。
在一些实施例中,上述先验信息可以为前一帧双目鱼眼相机101的位姿,或前一帧双目鱼眼相机101的位姿与前一帧位姿增量之和。所述前一帧位姿增量为前一帧双目鱼眼相机101的位姿与前两帧双目鱼眼相机101的位姿之间的位姿增量。
在一些实施例中,同时定位和建图的装置102可以通过下述多个公式计算左投影误差和/或右投影误差,并求解位姿增量。公式(1)表示如下:
其中,P表示世界坐标系中的地图点,可以表示为(x,y,z)T;TBW表示坐标转换矩阵,可以将地图点P从世界坐标系转化到多虚拟针孔相机模型的坐标系上;RCiB表示旋转向量,可以将地图点P从多虚拟针孔相机模型的坐标系转化到所述多虚拟针孔相机模型一个面的坐标系上;K表示虚拟多针孔相机的每个面对应的针孔相机的摄像机矩阵,该矩阵中包含了相机的参数,例如图像的中心以及焦距的信息;u表示地图点P在所述多虚拟针孔相机模型一个面上的重投影点。
由以上描述可知,公式(1)可以进一步表述为公式(2)。
其中,P2表示地图点P在多虚拟针孔相机模型的坐标系上的投影点;P1表示点P2在所述多虚拟针孔相机模型一个面的坐标系上的投影点。
因此,可以根据链规则导出u到相机位姿的雅克比矩阵。如公式(3)所示:
根据公式(3),可以确定地图点P的雅克比矩阵,表示如下:
其中,JP地图点P的雅克比矩阵;RWB表示坐标变换矩阵TWB的旋转分量。
对于双目鱼眼相机101,同时定位和建图的装置102可以基于公式(1)、(2)、(3)和(4)确定双目鱼眼相机101的左重投影误差并确定双目鱼眼相机101的位姿。
应当理解的是,基于同样的原理,同时定位和建图的装置102可以确定双目鱼眼相机101的右重投影误差;然后,基于所述右重投影误差或左重投影误差与右重投影误差之和确定双目鱼眼相机101的位姿。
具体地,可通过公式(5)确定右重投影误差。其中,ur表示地图点P在第二多虚拟针孔相机模型一个面上的重投影点;(b,0,0)表示双目鱼眼相机101左目相对于右目的偏移量;b表示双目鱼眼相机101的基线长度。
在一些实施例中,同时定位和建图的装置102可以基于左畸变图像或右畸变图像构建地图。即,同时定位和建图的装置102可以执行建图步骤,具体描述如下:
同时定位和建图的装置102可以确定左去畸变图像和右畸变图像互相匹配的特征点;然后,基于所述互相匹配的特征点构建地图。左去畸变图像和右去畸变图像互相匹配的特征点是指同一地图点在左去畸变图像和右去畸变图像中对应的特征点。
上述确定左去畸变图像和右畸变图像互相匹配的特征点包括:首先,确定左去畸变图像中的特征点在右畸变图像中对应的极线;然后,在所述极线上搜索与所述左去畸变图像中的特征点匹配的特征点。
参考图4,左去畸变图像410上有极线401,右去畸变图像420上有极线402。与左去畸变图像410的特征点相匹配的特征点一定位于极线402中。相反,与右去畸变图像420的特征点相匹配的特征点一定位于极线401中。因此,通过极线搜索即可快速地找到左去畸变图像和右去畸变图像互相匹配的特征点。
在一些实施例中,极线为多线段折线。如图4所示,极线401和极线402为三线段折线,包括两条倾斜的线段和一条水平的线段。
上述基于所述互相匹配的特征点构建地图,包括:首先,基于左去畸变图像中的特征点和双目鱼眼相机101左目的相机中心,确定第一特征点对应的方向向量;其次,基于右去畸变图像中匹配的特征点和双目鱼眼相机101右目的相机中心,确定第二特征点对应的方向向量;再次,基于所述双目鱼眼相机的基线,对所述第一特征点对应的方向向量和所述第二特征点对应的方向向量进行三角测量,确定所述特征点对应的地图点;最后,基于所述地图点构建地图。
参考图5,其示出了根据本申请的一些实施例所示的构建地图点的示意图。以下,以双目鱼眼相机101前面的地图点为例。
点O1为双目鱼眼相机101左目的相机中心,连接当前左鱼眼帧中的特征点和点O1得到第一特征点对应的方向向量。点O2为双目鱼眼相机101右目的相机中心,连接当前右鱼眼帧中匹配的特征点和点O2得到第二特征点对应的方向向量。在一些实施例中,第一特征点对应的方向向量和第二特征点对应的方向向量可以为单位化后的向量。
所述第一特征点对应的方向向量和所述第二特征点对应的方向向量相交于点E,分别得到线段O1E和线段O2E。连接点O1和点O2得到线段O1O2,线段O1O2的长度为b(即双目鱼眼相机101的基线)。线段O1O2与线段O1E和线段O2E形成三角形。对所述三角形求解,得出线段O1E的长度为d1,线段O2E的长度为d2,O1O2与线段O1E的夹角为α1,O1O2与线段O2E的夹角为α2,进而得出特征点对应的地图点E的坐标。再结合双目鱼眼相机101的当前位姿,将地图点E从双目鱼眼相机101的坐标系转化到世界坐标系。然后,根据世界坐标系中的点E的位置构建地图。
具体地,同时定位和建图的装置102可以基于以下公式进行三角测量。首先基于正余弦定理得到公式(6)、(7)和(8)。
合并公式(7)和(8),可以得到公式(9),表述如下:
d1cosα1+d2cosα2=b, 公式(9)
合并公式(6)和公式(9),得到公式(10),表示如下:
同时,结合公式(11),对公式(6)、(7)、(8)、(9)、(10)求解,可以得到d1和d2。
当然,同时定位和建图的装置102可以基于左去畸变图像和右畸变图像确定双目鱼眼帧及其参考帧;然后,确定双目鱼眼帧及其参考帧互相匹配的特征点;然后基于所述相互匹配的特征点构建地图。所述双目鱼眼帧及其参考帧互相匹配的特征点是指同一地图点在双目鱼眼帧及其参考帧中对应的特征点。所述参考帧为其前一双目鱼眼帧,或与当前双目鱼眼帧或其前一双目鱼眼帧共视程度最高的关键双目鱼眼帧。此时,同时定位和建图的装置102构建地图的方法同单目鱼眼相机中构建地图的方法可以是相同的。
需要注意的是,双目鱼眼相机101的左目和右目的光轴可能不平行。因此,流程200可以进一步包括,使双目鱼眼相机101的左目和右目的光轴平行。例如,同时定位和建图的装置102可以通过双目相机标定程序调整双目鱼眼相机左目和右目的虚拟光轴,使得两者的虚拟光轴平行。
图6示出了根据本申请的一些实施例所示的原始鱼眼帧和去畸变后的鱼眼帧。
如图所示,图像601和图像602分别为双目鱼眼相机101在真实世界获取的原始左鱼眼图像和右鱼眼图像。图像603和图像604分别为经过本申请提供的去畸变方法处理后的左去畸变图像和右去畸变图像。
作为与图像603和图像604的对比,图像601和图像602经过普通去畸变方法获得的单张图像,图像的纵向和横向的视角均为100度。可见,对于双目鱼眼相机101获取的大视角图像,本申请提供的去畸变方法可以在保留大视角的同时,有效地防止图像畸变。
最后,需要说明的是,本申请中提到的“左”和“右”,例如,“左目”、“右目”、“左鱼眼图像”、“右鱼眼图像”、“左去畸变图像”、“右去畸变图像”、“左重投影误差”、“右重投影误差”仅为了说明的目的,并不限定本申请保护的范围。例如,同时定位和建图的装置102可以根据公式(1)至(4)先计算右重投影误差,然后再计算左重投影误差。
综上所述,在阅读本详细公开内容之后,本领域技术人员可以明白,前述详细公开内容可以仅以示例的方式呈现,并且可以不是限制性的。尽管这里没有明确说明,本领域技术人员可以理解本申请意图囊括对实施例的各种合理改变,改进和修改。这些改变,改进和修改旨在由本公开提出,并且在本公开的示例性实施例的精神和范围内。
此外,本申请中的某些术语已被用于描述本公开的实施例。例如,“一个实施例”,“实施例”和/或“一些实施例”意味着结合该实施例描述的特定特征,结构或特性可以包括在本公开的至少一个实施例中。因此,可以强调并且应当理解,在本说明书的各个部分中对“实施例”或“一个实施例”或“替代实施例”的两个或更多个引用不一定都指代相同的实施例。此外,特定特征,结构或特性可以在本公开的一个或多个实施例中适当地组合。
应当理解,在本公开的实施例的前述描述中,为了帮助理解一个特征,出于简化本公开的目的,本申请有时将各种特征组合在单个实施例、附图或其描述中。或者,本申请又是将各种特征分散在多个本发明的实施例中。然而,这并不是说这些特征的组合是必须的,本领域技术人员在阅读本申请的时候完全有可能将其中一部分特征提取出来作为单独的实施例来理解。也就是说,本申请中的实施例也可以理解为多个次级实施例的整合。而每个次级实施例的内容在于少于单个前述公开实施例的所有特征的时候也是成立的。
在一些实施方案中,表达用于描述和要求保护本申请的某些实施方案的数量或性质的数字应理解为在某些情况下通过术语“约”,“近似”或“基本上”修饰。例如,除非另有说明,否则“约”,“近似”或“基本上”可表示其描述的值的±20%变化。因此,在一些实施方案中,书面描述和所附权利要求书中列出的数值参数是近似值,其可以根据特定实施方案试图获得的所需性质而变化。在一些实施方案中,数值参数应根据报告的有效数字的数量并通过应用普通的舍入技术来解释。尽管阐述本申请的一些实施方案列出了广泛范围的数值范围和参数是近似值,但具体实施例中都列出了尽可能精确的数值。
本文引用的每个专利,专利申请,专利申请的出版物和其他材料,例如文章,书籍,说明书,出版物,文件,物品等,可以通过引用结合于此。用于所有目的的全部内容,除了与其相关的任何起诉文件历史,可能与本文件不一致或相冲突的任何相同的,或者任何可能对权利要求的最宽范围具有限制性影响的任何相同的起诉文件历史。现在或以后与本文件相关联。举例来说,如果在与任何所包含的材料相关联的术语的描述、定义和/或使用与本文档相关的术语、描述、定义和/或之间存在任何不一致或冲突时,使用本文件中的术语为准。
最后,应理解,本文公开的申请的实施方案是对本申请的实施方案的原理的说明。其他修改后的实施例也在本申请的范围内。因此,本申请披露的实施例仅仅作为示例而非限制。本领域技术人员可以根据本申请中的实施例采取替代配置来实现本申请中的发明。因此,本申请的实施例不限于申请中被精确地描述过的哪些实施例。
Claims (9)
1.一种同时定位与建图的方法,其特征在于,所述方法包括:
通过双目大视场相机获取左视场图像和右视场图像;
基于第一多虚拟针孔相机模型,得到所述左视场图像对应的左去畸变图像;
基于第二多虚拟针孔相机模型,得到所述右视场图像对应的右去畸变图像;
基于所述左去畸变图像和所述右去畸变图像,确定所述双目大视场相机的位姿并构建地图;
其中,所述第一多虚拟针孔相机模型包括至少两个不同朝向的虚拟针孔相机,且所述至少两个不同朝向的虚拟针孔相机的相机中心与所述双目大视场相机的左侧相机的相机中心重合;
所述第二多虚拟针孔相机模型包括至少两个不同朝向的虚拟针孔相机,且所述至少两个不同朝向的虚拟针孔相机的相机中心与所述双目大视场相机的右侧相机的相机中心重合。
2.如权利要求1所述的同时定位与建图的方法,其特征在于,所述方法进一步包括:使所述双目大视场相机的左侧相机和右侧相机的光轴平行。
3.如权利要求1所述的同时定位与建图的方法,其特征在于,基于所述左去畸变图像和所述右去畸变图像,确定所述双目大视场相机的位姿并构建地图,包括:
确定所述左去畸变图像和所述右去畸变图像互相匹配的特征点;
基于所述互相匹配的特征点构建地图。
4.如权利要求3所述的同时定位与建图的方法,其特征在于,所述确定所述左去畸变图像和所述右去畸变图像互相匹配的特征点,包括:
确定所述左去畸变图像中的特征点在所述右去畸变图像中对应的极线;
在所述极线上搜索与所述左去畸变图像中的特征点匹配的特征点;
其中,所述极线为多线段折线。
5.如权利要求3所述的同时定位与建图的方法,其特征在于,所述基于所述互相匹配的特征点构建地图,包括:
基于所述左去畸变图像中的特征点和所述双目大视场相机的左侧相机的相机中心,确定第一特征点对应的方向向量;
基于所述右去畸变图像中匹配的特征点和所述双目大视场相机的右侧相机的相机中心,确定第二特征点对应的方向向量;
基于所述双目大视场相机的基线,对所述第一特征点对应的方向向量和所述第二特征点对应的方向向量进行三角测量,确定所述特征点对应的地图点;
基于所述地图点构建地图。
6.如权利要求1所述的同时定位与建图的方法,其特征在于,基于所述左去畸变图像和所述右去畸变图像,确定所述双目大视场相机的位姿并构建地图,包括:
基于所述第一多虚拟针孔相机模型,将所述左去畸变图像关联的地图点投影到所述至少两个不同朝向的虚拟针孔相机的成像平面上,得到所述地图点在所述第一多虚拟针孔相机模型中的重投影点;根据所述地图点在所述第一多虚拟针孔相机模型中的重投影点与所述地图点对应的特征点,确定所述地图点的重投影误差;根据所有所述左去畸变图像关联的地图点的重投影误差确定左重投影误差;或
基于所述第二多虚拟针孔相机模型,将所述右去畸变图像关联的地图点投影到所述至少两个不同朝向的虚拟针孔相机的成像平面上,得到所述地图点在所述第二多虚拟针孔相机模型中的重投影点;根据所述地图点在所述第二多虚拟针孔相机模型中的重投影点与所述地图点对应的特征点,确定所述地图点的重投影误差;根据所有所述右去畸变图像关联的地图点的重投影误差确定右重投影误差;
基于所述左重投影误差,和/或所述右重投影误差,确定所述双目大视场相机的当前位姿。
7.如权利要求6所述的同时定位与建图的方法,其特征在于,参考帧为其前一双目图像帧,或与当前双目图像帧或其前一双目图像帧共视程度最高的关键双目图像帧。
8.如权利要求1所述的同时定位与建图的方法,其特征在于,所述至少两个不同朝向包括:立方体的前朝向、上朝向、下朝向、左朝向或右朝向。
9.一种同时定位与建图的装置,其特征在于,所述同时定位与建图的装置执行如权利要求1至8任一项所述的同时定位与建图的方法。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811401646.5A CN111210476B (zh) | 2018-11-22 | 2018-11-22 | 一种同时定位与建图的方法及装置 |
EP18921621.1A EP3806036A4 (en) | 2018-06-07 | 2018-12-28 | METHOD AND DEVICE FOR SIMULTANEOUS LOCALIZATION AND MAPPING |
US16/627,768 US11017545B2 (en) | 2018-06-07 | 2018-12-28 | Method and device of simultaneous localization and mapping |
PCT/CN2018/124786 WO2019233090A1 (zh) | 2018-06-07 | 2018-12-28 | 一种同时定位与建图的方法及装置 |
KR1020197039024A KR102367361B1 (ko) | 2018-06-07 | 2018-12-28 | 위치 측정 및 동시 지도화 방법 및 장치 |
JP2019572827A JP7096274B2 (ja) | 2018-06-07 | 2018-12-28 | 自己位置推定と環境マップ作成を同時に行う方法及び装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811401646.5A CN111210476B (zh) | 2018-11-22 | 2018-11-22 | 一种同时定位与建图的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111210476A CN111210476A (zh) | 2020-05-29 |
CN111210476B true CN111210476B (zh) | 2023-06-23 |
Family
ID=70789515
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811401646.5A Active CN111210476B (zh) | 2018-06-07 | 2018-11-22 | 一种同时定位与建图的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111210476B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111292420B (zh) * | 2020-02-28 | 2023-04-28 | 北京百度网讯科技有限公司 | 用于构建地图的方法和装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103702103A (zh) * | 2014-01-10 | 2014-04-02 | 武汉大学 | 基于双目相机的光栅立体印刷图像合成方法 |
CN108776976A (zh) * | 2018-06-07 | 2018-11-09 | 驭势科技(北京)有限公司 | 一种同时定位与建图的方法、系统及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101926563B1 (ko) * | 2012-01-18 | 2018-12-07 | 삼성전자주식회사 | 카메라 추적을 위한 방법 및 장치 |
-
2018
- 2018-11-22 CN CN201811401646.5A patent/CN111210476B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103702103A (zh) * | 2014-01-10 | 2014-04-02 | 武汉大学 | 基于双目相机的光栅立体印刷图像合成方法 |
CN108776976A (zh) * | 2018-06-07 | 2018-11-09 | 驭势科技(北京)有限公司 | 一种同时定位与建图的方法、系统及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111210476A (zh) | 2020-05-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7328366B2 (ja) | 情報処理方法、測位方法及び装置、電子機器並びに記憶媒体 | |
KR102367361B1 (ko) | 위치 측정 및 동시 지도화 방법 및 장치 | |
CN110135455B (zh) | 影像匹配方法、装置及计算机可读存储介质 | |
CN107705252B (zh) | 适用于双目鱼眼图像拼接展开校正的方法及系统 | |
CN103700099B (zh) | 一种旋转和尺度不变的宽基线立体匹配方法 | |
CN101763632B (zh) | 摄像机标定的方法和装置 | |
CN103942754B (zh) | 全景图像补全方法及装置 | |
CN111127524A (zh) | 一种轨迹跟踪与三维重建方法、系统及装置 | |
CN110223222B (zh) | 图像拼接方法、图像拼接装置和计算机可读存储介质 | |
CN112288826B (zh) | 双目相机的标定方法、装置及终端 | |
CN111754579B (zh) | 多目相机外参确定方法及装置 | |
CN108122191A (zh) | 鱼眼图像拼接成全景图像和全景视频的方法及装置 | |
CN104200454B (zh) | 鱼眼图像畸变校正方法及装置 | |
CN112802124A (zh) | 多台立体相机的标定方法及装置、电子设备及存储介质 | |
CN112150518B (zh) | 一种基于注意力机制的图像立体匹配方法及双目设备 | |
JP2023519466A (ja) | 点群モデルの構築方法、装置、電子機器、記憶媒体及びプログラム | |
US8509522B2 (en) | Camera translation using rotation from device | |
CN101354796A (zh) | 基于泰勒级数模型的全向立体视觉三维重建方法 | |
CN114757834B (zh) | 一种全景图像处理方法和全景图像处理装置 | |
CN113436269B (zh) | 图像稠密立体匹配方法、装置和计算机设备 | |
CN111210476B (zh) | 一种同时定位与建图的方法及装置 | |
Gao et al. | Marker tracking for video-based augmented reality | |
Gårding et al. | Direct estimation of local surface shape in a fixating binocular vision system | |
CN107240149A (zh) | 基于图像处理的物体三维模型构建方法 | |
CN107958468B (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 |