CN108022264B - 相机位姿确定方法及设备 - Google Patents
相机位姿确定方法及设备 Download PDFInfo
- Publication number
- CN108022264B CN108022264B CN201610934960.4A CN201610934960A CN108022264B CN 108022264 B CN108022264 B CN 108022264B CN 201610934960 A CN201610934960 A CN 201610934960A CN 108022264 B CN108022264 B CN 108022264B
- Authority
- CN
- China
- Prior art keywords
- dimensional
- points
- camera
- dimensional positioning
- code
- 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
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- 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/10048—Infrared image
-
- 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
- Length Measuring Devices By Optical Means (AREA)
Abstract
本发明涉及相机位姿确定方法,包括:深度图获取步骤:在相机的第一位置利用深度传感器获得空间环境中三维坐标已知的多个三维定位点中的至少三个三维定位点的深度图,三维定位点在深度图中构成码点,空间环境中的多个三维定位点构成点云;子云坐标获取步骤:分析深度图以识别至少三个三维定位点以及获得所述至少三个三维定位点相对于相机的三维坐标,所述至少三个三维定位点构成子云;匹配步骤:将子云中的至少三个三维定位点与点云进行匹配,找出点云中与子云中的三维定位点匹配的三维定位点;确定初始位姿步骤:通过子云所在坐标系与点云所在坐标系之间的刚性变换获得相机在空间环境中第一位置时的初始位姿。本发明还涉及相机位姿确定设备。
Description
技术领域
本发明涉及定位追踪领域,尤其涉及相机位姿确定方法、相机位姿确定设备。
背景技术
追踪系统广泛用于增强现实(Augmented Reality,AR)/虚拟现实(VirtualReality,VR)人机交互、机器人导航,是最核心、最底层的技术之一。在AR/VR等人机交互领域里,定位和定姿是非常关键的一部分,它是人与机器交互的基础。人机交互对定位和定姿(即确定位姿)的精度要求高(例如到达毫米级、角分级)、实时性要求高(例如10毫秒)。
运动追踪系统可以分为Outside-In Tracking(OIT)和Inside-out Tracking(IOT)两类技术。OIT的观测基站(摄像头)固定在环境中,而IOT的观测基站(摄像头)放置在待追踪物体上。
IOT分为基于标记的和不基于标记的技术。不基于标记的IOT又称为同时定位及构图(SLAM)技术,目前还没有商用正式发售的产品,代表产品有Microsoft Hololens、GoogleTango。基于标记的IOT由于需要在环境中布满标记,代表产品有华盛顿大学的ARToolKit标识系统,还有法国泰雷兹集团(THALES)旗下intersense IS1200。
对于OIT而言:其成本昂贵,部署困难;其仅仅是3自由度追踪,只能追踪平移位置,而旋转方向需要通过捕捉一个刚体上的多个位置,来计算整个刚体的旋转方向,因此标记体积大,姿态精度差,在多人多点的情况下容易跟踪错误;此外,因为不是接收端本地计算,需要计算完位置之后再通过无线传送给接收端,因此无线传输容易引入延时。
对于基于标记的IOT而言:虽然成本低,部署简单,适合于AR/VR/机器人追踪,但需要在环境中布满标记,因此其缺点是标记大导致难部署,黑白标记肉眼可,无法和环境融合十分不美观,从而限制了应用场景;
对于不基于标记的IOT而言:虽然不需要在环境中进行任何部署,可随时随地使用,但是其十分不稳定,功耗高,需要很强的计算资源。
发明内容
为解决或缓解上述技术问题的至少一个方面,提出本发明。
根据本发明的实施例的一个方面,提出了一种相机位姿确定方法,包括:
深度图获取步骤:在相机的第一位置利用深度传感器获得空间环境中三维坐标已知的多个三维定位点中的至少三个三维定位点的深度图,三维定位点在深度图中构成码点,空间环境中的所述多个三维定位点构成点云;
子云坐标获取步骤:分析所述深度图以识别所述至少三个三维定位点以及获得所述至少三个三维定位点相对于相机的三维坐标,所述至少三个三维定位点构成子云;
匹配步骤:将子云中的至少三个三维定位点与点云进行匹配,找出点云中与子云中的三维定位点匹配的三维定位点;
确定初始位姿步骤:通过子云所在坐标系与点云所在坐标系之间的刚性变换获得相机在空间环境中第一位置时的初始位姿。
可选的,所述深度图中包括至少四个三维定位点对应的码点;所述方法还包括初始位姿求精步骤,所述初始位姿求精步骤包括:
获取深度图中所述至少四个三维定位点所对应的码点的二维坐标;
以刚性变换获得的相机在第一位置时的初始位姿为初值,获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标;
基于所述至少四个三维定位点在空间环境中的三维坐标以及所述至少四个三维定位点对应的码点在深度图中的二维坐标,获得相机在第一位置时位姿并将其作为第一位置时的初始位姿。
可选的,获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的步骤包括:
由所述相机在第一位置时位置向深度图中的至少四个码点引出直线;以及
将所述点云中与对应的直线分别匹配的三维定位点在空间环境中的三维坐标分别作为深度图中直线经过的至少四个码点对应的至少四个三维定位点在空间环境中的三维坐标。
或者可选的,获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的步骤包括:
由所述点云中相关的三维定位点朝向相机在第一位置时位置引出直线;以及
找出所述深度图的码点中与引出的直线分别匹配的码点,将与码点匹配的直线所对应的三维定位点在空间环境中的三维坐标分别作为深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标。
可选的,上述方法还包括步骤:
在相机的第二位置获得至少四个三维定位点的二维图像;
以相机在第一位置时初始位姿为初值,基于在第二位置时获取的二维图像,获取相机在第二位置时位姿。
可选的,第二位置时获得的二维图像为红外图像,进一步可选的,获取红外图像的帧频为至少60Hz;获取相机在第二位置时位姿的步骤包括:
获取红外图像中所述至少四个三维定位点所对应的码点的二维坐标;
获取红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标;以及
基于码点在红外图像中的二维位置以及对应的所述至少四个三维定位点在空间环境中的三维坐标,获取相机在第二位置时的位姿。
可选的,获取红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的步骤包括:
由所述相机在第一位置时位置向红外图像中的至少四个码点引出直线;以及
将所述点云中与对应的直线分别匹配的三维定位点在空间环境中的三维坐标分别作为红外图像中直线经过的至少四个码点对应的至少四个三维定位点在空间环境中的三维坐标。
或者可选的,获取红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的步骤包括:
由所述点云中相关的三维定位点朝向相机的位置引出直线;以及
找出所述红外图像的码点中与引出的直线分别匹配的码点,将与码点匹配的直线所对应的三维定位点在空间环境中的三维坐标分别作为红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标。
可选的,第二位置时获得的二维图像为红外图像,进一步的,获取红外图像的帧频为至少60Hz;获取相机在第二位置的位姿的步骤包括:
使用相机在第二位置获取至少四个三维定位点的红外图像;
获取红外图像中码点的二维坐标;
在第二位置获取的红外图像的码点中选定与获取相机在第一位置时位姿所使用的三维定位点在深度图中的码点相对应的至少四个码点;以及
基于在第二位置获取的红外图像中选定的所述至少四个码点在红外图像中的二维位置以及选定的所述至少四个码点所对应的三维定位点在空间环境中的三维坐标,获得相机在第二位置时的位姿。
可选的,上述方法还包括步骤:
在相机的第三位置利用深度传感器获得空间环境中多个三维定位点中的至少三个三维定位点的第二深度图;
分析第二深度图以识别所述至少三个三维定位点以及获得所述至少三个三维定位点相对于相机的三维坐标,第二深度图中的所述至少三个三维定位点构成第二子云;
将第二子云中的至少三个三维定位点与点云进行匹配,找出点云中与第二子云中的三维定位点匹配的三维定位点;
通过第二子云所在坐标系与点云所在坐标系之间的刚性变换获得相机在空间环境中第二位置时的初始位姿。
可选的,上述方法中,上述的将子云与点云匹配的步骤包括:将子云中的一部分或全部三维定位点形成的几何结构与点云中的部分三维定位点形成的几何结构匹配。
根据本发明的实施例的另一方面,提出了一种相机位姿确定设备,包括:
深度传感器,深度传感器在相机的第一位置获得空间环境中三维坐标已知的多个三维定位点中的至少三个三维定位点的深度图,三维定位点在深度图中构成码点,空间环境中的所述多个三维定位点构成点云;
子云坐标获取装置,识别所述至少三个三维定位点以及获得所述至少三个三维定位点相对于相机的三维坐标,所述至少三个三维定位点构成子云;
匹配装置,将子云中的至少三个三维定位点与点云进行匹配,找出点云中与子云中的三维定位点匹配的三维定位点;
确定初始位姿装置,通过子云所在坐标系与点云所在坐标系之间的刚性变换获得相机在空间环境中第一位置时的初始位姿。
可选的,上述设备中,所述深度图中包括至少四个三维定位点对应的码点;所述设备还包括初始位姿求精装置,所述初始位姿求精装置包括:
获取深度图中所述至少四个三维定位点所对应的码点的二维坐标的装置;
以刚性变换获得的相机在第一位置时的初始位姿为初值、获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置;
基于所述至少四个三维定位点在空间环境中的三维坐标以及所述至少四个三维定位点对应的码点在深度图中的二维坐标,获得相机在第一位置时位姿并将其作为第一位置时的初始位姿的装置。
可选的,获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置包括:
由所述相机在第一位置时位置向深度图中的至少四个码点引出直线的装置;以及
将所述点云中与对应的直线分别匹配的三维定位点在空间环境中的三维坐标分别作为深度图中直线经过的至少四个码点对应的至少四个三维定位点在空间环境中的三维坐标的装置。
或者可选的,获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置包括:
由所述点云中相关的三维定位点朝向相机在第一位置时位置引出直线的装置;以及
找出所述深度图的码点中与引出的直线分别匹配的码点、将与码点匹配的直线所对应的三维定位点在空间环境中的三维坐标分别作为深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置。
可选的,上述设备还包括:
在相机的第二位置获得至少四个三维定位点的二维图像的装置;
以相机在第一位置时初始位姿为初值、基于在第二位置时获取的二维图像,获取相机在第二位置时位姿的装置。
可选的,第二位置时获得的二维图像为红外图像,进一步的,获取红外图像的帧频为至少60Hz;获取相机在第二位置时位姿的装置包括:
获取红外图像中所述至少四个三维定位点所对应的码点的二维坐标的装置;
获取红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置;以及
基于码点在红外图像中的二维位置以及对应的所述至少四个三维定位点在空间环境中的三维坐标,获取相机在第二位置时的位姿的装置。
可选的,获取红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置包括:
由所述相机在第一位置时位置向红外图像中的至少四个码点引出直线的装置;以及
将所述点云中与对应的直线分别匹配的三维定位点在空间环境中的三维坐标分别作为红外图像中直线经过的至少四个码点对应的至少四个三维定位点在空间环境中的三维坐标的装置。
或者可选的,获取红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置包括:
由所述点云中相关的三维定位点朝向相机的位置引出直线的装置;以及
找出所述红外图像的码点中与引出的直线分别匹配的码点,将与码点匹配的直线所对应的三维定位点在空间环境中的三维坐标分别作为红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置。
可选的,第二位置时获得的二维图像为红外图像,进一步的,获取红外图像的帧频为至少60Hz;获取相机在第二位置时位姿的装置包括:
使用相机在第二位置获取至少四个三维定位点的红外图像的装置;
获取红外图像中码点的二维坐标的装置;
在第二位置获取的红外图像的码点中选定与获取相机在第一位置时位姿所使用的三维定位点在深度图中的码点相对应的至少四个码点的装置;以及
基于在第二位置获取的红外图像中选定的所述至少四个码点在红外图像中的二维位置以及选定的所述至少四个码点所对应的三维定位点在空间环境中的三维坐标,获得相机在第二位置时的位姿的装置。
可选的,上述设备还包括:
在相机的第三位置利用深度传感器获得空间环境中多个三维定位点中的至少三个三维定位点的第二深度图的装置;
分析第二深度图以识别所述至少三个三维定位点以及获得所述至少三个三维定位点相对于相机的三维坐标的装置,第二深度图中的所述至少三个三维定位点构成第二子云;
将第二子云中的至少三个三维定位点与点云进行匹配,找出点云中与第二子云中的三维定位点匹配的三维定位点的装置;
通过第二子云所在坐标系与点云所在坐标系之间的刚性变换获得相机在空间环境中第二位置时的初始位姿的装置。
可选的,上述设备中,上述的将子云与点云匹配的装置包括:将子云中的一部分或全部三维定位点形成的几何结构与点云中的部分三维定位点形成的几何结构匹配的装置。
附图说明
以下描述与附图可以更好地帮助理解本发明所公布的各种实施例中的这些和其他特点、优点,图中相同的附图标记始终表示相同的部件,其中:
图1为根据本发明的一个示例性实施例的相机位姿确定方法的流程图;
图2为根据本发明的另一个示例性实施例的相机位姿确定方法的流程图;
图3为根据本发明的再一个示例性实施例的相机位姿确定方法的流程图;
图4为深度图中码点的示意图;
图5为根据本发明的一个实施例的获取深度图中的三维定位点的三维坐标的方式的示意图;
图6为根据本发明的另一个实施例的获取深度图中三维定位点的三维坐标的方式的示意图;
图7为根据本发明的一个示例性实施例的相机位姿确定设备的示意图。
具体实施方式
下面通过实施例,并结合附图,对本发明的技术方案作进一步具体的说明。在说明书中,相同或相似的附图标号指示相同或相似的部件。下述参照附图对本发明实施方式的说明旨在对本发明的总体发明构思进行解释,而不应当理解为对本发明的一种限制。
在本发明中,可以将标记预先随机贴在环境中,部署密度要确保深度摄像头视野内能出现至少4个标记(优选是贴在环境中的固定物体上,如墙上,更优选是贴在天花板上)。需要测量每个标记的三维位置或三维坐标,然后将坐标数据保存为全局地图(或者点云)。
图1为根据本发明的一个示例性实施例的相机位姿确定方法的流程图,包括步骤:
步骤1:深度传感器得到深度图,即深度传感器捕获深度数据。
步骤2:通过对深度图或者二维图像进行处理,识别出每个标记。
步骤:3:通过深度图得到每个标记相对于相机的三维坐标,这些坐标组成子云。
步骤4:将子云与点云进行配准,直至找到子云与点云中的点匹配误差最优并且最优误差小于一定阈值,此时可以得出相机相对于点云的位置矩阵T和旋转矩阵R,即相机的初始姿态,和标记在图像中的二维坐标与点云中的三维坐标的映射关系。如果无法找到子云与点云中的点匹配误差的最优解或者最优误差大于一定阈值,则重复此步骤,直到成功。
步骤5:进行相机所在坐标系与点云所在坐标系的刚性变换以得到相机在空间环境中第一位置时的位姿。
步骤6:利用sovlePnP算法对步骤5中的初始位姿求精以作为第一位置时的初始位姿(对应于着图2中的标定成功,也对应着图1中SolvePnP获得相机的姿态信息)。步骤6即相机的初始位姿求精步骤。
需要指出的是,坐标的刚性变换可以利用现有技术中已知的各种技术,例如SVD技术;而子云与点云之间的匹配,如后面提及的,可以采用ICP(iterative closest point)方法。
需要说明的是,在本发明中,获取或求相机在第二位置/第一位置时的位姿可以利用现有技术中已知的方法,例如使用solvePnP算法或者POSIT算法,只要是能够用二维到三维的映射关系,求出相机在当前位置的位姿的方法都在本发明的保护范围之内。为了便于说明,在本发明的实施例中,以使用solvePnP算法作为示例来获取相机的位姿。
还需要指出的是,在利用坐标系的刚性变换获得的相机的位姿的精度足够的情况下,刚性变换获得的位姿可以作为相机的初始位姿(获得初始位姿也意味着相机标定成功)。不过,在利用坐标系的刚性变换获得相机的位姿的精度不够的情况下,可以利用solvePnP算法求精,以获得相对精确的相机位姿,该利用solvePnP算法获得的相机位姿就作为相机的初始位姿(获得初始位姿也意味着相机标定成功)。
下面具体描述步骤6。
在步骤6中,所述深度图中包括至少四个三维定位点对应的码点。初始位姿求精步骤包括:
获取如图4所示深度图中所述至少四个三维定位点所对应的码点的二维坐标;
以刚性变换获得的相机在第一位置时的初始位姿为初值,获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标;
基于所述至少四个三维定位点在空间环境中的三维坐标以及所述至少四个三维定位点对应的码点在深度图中的二维坐标,利用solvePnP算法获得相机在第一位置时位姿并将其作为第一位置时的初始位姿。
在更具体的实施例中,参见图5,可以将深度图中所有码点投影到点云中或点云所在平面中以与点云中的三维定位点分别匹配,从而得到深度图中所有码点对应的三维定位点的三维坐标。又,此时因为所有码点在深度图中的二维位置已知,从而可以利用solvePnP算法获得相机的位姿。获取深度图中码点对应的至少四个三维定位点在空间环境中的三维坐标的步骤包括:参照图5,获得由所述相机在第一位置时位置O以及深度图中的所述至少四个三维定位点对应的码点A1、A2、A3、A4所确定的直线分别与点云确定的平面的交点O1、O2、O3、O4;以及将所述点云中与对应的交点距离分别最近或重合(或者两者之间的距离在阈值之内)的三维定位点D1、D2、D3、D4的三维坐标分别作为深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标。
相应的,获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的步骤包括:
由所述相机在第一位置时位置向深度图中的至少四个码点引出直线;以及
将所述点云中与对应的直线分别匹配的三维定位点在空间环境中的三维坐标分别作为深度图中直线经过的至少四个码点对应的至少四个三维定位点在空间环境中的三维坐标。
还可以进行校正。具体的,利用PnP计算相机的位姿以后,利用相机位姿重新计算深度图中的码点投影到点云所在的平面得到新的三维坐标,计算其与码点对应的三维定位点之间的距离,利用阈值过滤掉错误的匹配,不断迭代,直到投影误差最小或者在阈值以内。需要注意的是,“将所述点云中与对应的直线分别匹配的三维定位点在空间环境中的三维坐标分别作为深度图中直线经过的至少四个码点对应的至少四个三维定位点在空间环境中的三维坐标”可以包括上述的迭代步骤。
在图5的示例中,利用引出的直线与点云所在平面的交点,通过交点与三维定位点之间的距离来确定最接近的三维定位点。不过,在有些情况下,点云可能由多个平面中的三维定位点构成,此时,也可以通过确定与引出的直线距离最近来确定三维定位点。此外,在有的情况下,不仅要考虑某个直线(或交点)与某个三维定位点的最佳匹配(如距离最近),还需要考虑全局的最佳匹配,例如匹配的直线与三维定位点之间的距离之和最小。在不能获得匹配的情况下,可以重新标定相机的位姿。
或者可选的,在更具体的实施例中,参见图6,可以将点云投影到深度图或二维图像中,点云投影得到的码点与深度图中原本的码点进行匹配,匹配到的码点所对应的三维定位点即为与点云投影得到的码点匹配的码点所对应的三维定位点。又,此时因为所有码点在深度图中的二维位置已知,从而可以利用solvePnP算法获得相机的位姿。获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的步骤包括:参照图6,将所述点云朝向相机投影到所述深度图中;以及将所述点云投影到深度图而形成的码点C1、C2、C3、C4、C5等中与所述至少四个三维定位点(包括D1、D2、D3、D4、D5等)对应的码点A1、A2、A3、A4、A5分别距离最近或重合(或者两者之间的距离在阈值之内)的码点C1、C2、C3、C4、C5所对应的三维定位点的三维坐标分别作为深度图或二维图像中码点A1、A2、A3、A4对应的所述至少四个三维定位点D1、D2、D3、D4的三维坐标。
相应的,获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的步骤包括:
由所述点云中相关的三维定位点朝向相机在第一位置时位置引出直线;以及
找出所述深度图的码点中与引出的直线分别匹配的码点,将与码点匹配的直线所对应的三维定位点在空间环境中的三维坐标分别作为深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标。
还可以进行校正。具体的,利用PnP计算相机的位姿以后,利用相机姿态重新计算三维定位点投影到深度图或二维图像平面得到新的二维点位置,计算其与码点之间的距离,利用阈值过滤掉错误的匹配,不断迭代,直到重投影误差最小。“找出所述深度图的码点中与引出的直线分别匹配的码点,将与码点匹配的直线所对应的三维定位点在空间环境中的三维坐标分别作为深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标”也可以包括上述的迭代步骤。
在图6的示例中,利用引出的直线与深度图或二维图像的交点,通过交点与码点之间的距离来确定最接近的码点。不过,在有些情况下,不仅要考虑某个直线(或交点)与某个码点的最佳匹配(如距离最近),还需要考虑全局的最佳匹配,例如匹配的直线与码点之间的距离之和最小。在不能获得匹配的情况下,可以重新标定相机的位姿。
在实际应用中,图5和图6的方案可以结合使用。
图2为根据本发明的另一个示例性实施例的相机位姿确定方法的流程图,除了上述的步骤1-6之外,还包括步骤:
步骤7:在第二位置重新通过深度传感器或者红外相机获得二维图像。
步骤8:通过图像处理得到标记在图像中的二维坐标,对应于图2中的反光点位置的提取与追踪。
步骤9:利用之前的初始姿态或者初始映射关系,得到当前标记的二位坐标与三维坐标的映射关系,通过求解PnP问题,可以得到当前相机的位置矩阵T和旋转矩阵R,其中,需要至少得到4对映射关系,才能求解。
步骤10:重复步骤7-9,直到捕捉不到足够的标记或者其他原因,导致求解当前姿态失效,再回到步骤1。
在图2给出的示例中,先利用深度传感器获得相机的初始位姿,然后以该初始位姿为初值,利用获得红外二维图像,逐帧获取相机的位姿。
相应的,上述的步骤7-9可以总结为如下两个步骤:在相机的第二位置获得至少四个三维定位点的二维图像;以相机在第一位置时初始位姿为初值,基于在第二位置时获取的二维图像,利用solvePnP算法获取相机在第二位置时位姿。
下面具体描述利用solvePnP算法获取相机在第二位置时位姿。
第二位置时获得的二维图像为红外图像,可选的,获取红外图像的帧频为至少60Hz,利用solvePnP算法获取相机在第二位置时位姿的步骤包括:
获取红外图像中所述至少四个三维定位点所对应的码点的二维坐标;
获取红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标;以及
基于码点在红外图像中的二维位置以及对应的所述至少四个三维定位点在空间环境中的三维坐标,利用solvePnP算法获取相机在第二位置时的位姿。
类似于图5中所示,在一个具体实施例中,获取红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的步骤包括:
由所述相机在第一位置时位置向红外图像中的至少四个码点引出直线;以及
将所述点云中与对应的直线分别匹配的三维定位点在空间环境中的三维坐标分别作为红外图像中直线经过的至少四个码点对应的至少四个三维定位点在空间环境中的三维坐标。
在该具体实施例中,上述参照图5对“获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的步骤”的具体描述同样适用于“获取红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的步骤”,不过是将深度图换为红外图像。
类似于图6中所示,在一个具体实施例中,获取红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的步骤包括:
由所述点云中相关的三维定位点朝向相机的位置引出直线;以及
找出所述红外图像的码点中与引出的直线分别匹配的码点,将与码点匹配的直线所对应的三维定位点在空间环境中的三维坐标分别作为红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标。
在该具体实施例中,上述参照图6对“获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的步骤”的具体描述同样适用于“获取红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的步骤”,不过是将深度图换为红外图像。
实际情况中,也存在在第一位置和第二位置,相机获取的二维图像中旧的码点足够获得相机在第二位置时的位姿的情形,下面具体描述在此情况下获取相机在第二位置的位姿的另一种方式,在该情况下,相机在第二位置的位姿的获取不需要基于相机在第一位置时的三维位置,具体的,第二位置时获得的二维图像为红外图像,可选的,获取红外图像的帧频为至少60Hz;获取相机在第二位置的位姿的步骤包括:
使用相机在第二位置获取至少四个三维定位点的红外图像;
获取红外图像中码点的二维坐标;
在第二位置获取的红外图像的码点中选定与获取相机在第一位置时位姿所使用的三维定位点在深度图中的码点相对应的至少四个码点;以及
基于在第二位置获取的红外图像中选定的所述至少四个码点在红外图像中的二维位置以及选定的所述至少四个码点所对应的三维定位点在空间环境中的三维坐标,利用solvePnP算法获得相机在第二位置时的位姿。
在本发明中,为了实现帧与帧之间的快速传播,所述红外相机的红外线帧频至少为60Hz,更进一步的,至少为100Hz。不过需要指出的是,在动作较慢的情况下,红外帧频即使是10Hz也是够用的。
在上述的选定步骤中,因为红外帧频较高,至少四个码点在第一帧二维图像(第一位置获得)中的位置与在第二帧二维图像(第二位置获得)中的位置变化较小,可以认为第二帧二维图像中的码点距离第一帧二维图像中的码点在一个阈值范围内的情况下(可以认为是利用第一位置时二维图像或者以第一位置时每个码点的图像坐标作为初值),认定这两个码点对应着同一个三维定位点。
需要注意的是,在上述步骤中,即使与计算相机在第二位置时的位姿不相关,但是为了后续使用,可以利用例如图5和图6中所示的方法获取第二帧二维图像中的新码点所对应的三维定位点的三维坐标。
如图2所示,倘若追踪相机的位姿失败,或者换言之,不能以相机在第一位置时的位姿为初值获取相机在第二位置时的位置(例如,第一位置和第二位置距离相差太大,第一位置无法作为第二位置的初值,或者第一位置的码点在第二位置中出现的数目小于3),则需要重新标定相机的初始位姿。此时,具体的,上述的相机位姿确定方法还包括步骤:
在相机的第三位置利用深度传感器获得空间环境中多个三维定位点中的至少三个三维定位点的第二深度图;
分析第二深度图以识别所述至少三个三维定位点以及获得所述至少三个三维定位点相对于相机的三维坐标,第二深度图中的所述至少三个三维定位点构成第二子云;
将第二子云中的至少三个三维定位点与点云进行匹配,找出点云中与第二子云中的三维定位点匹配的三维定位点;
通过第二子云所在坐标系与点云所在坐标系之间的刚性变换获得相机在空间环境中第二位置时的初始位姿。
需要专门指出的是,这里的第三位置可以是对应不能从第一位置时的位姿初值获得位姿的第二位置,也可以是不同于第二位置的其他位置。基于上述重新标定相机位姿初值的步骤,可以重新获取相机的位姿。
上述的基于深度传感器的光学定位方法,与传统基于颜色信息的定位方法相比,避免了光照差异、相机抖动等因素造成的解码不稳定性质,能够在各种应用场景下获得更稳定的定位效果。
关于码点位置的识别,可以利用深度传感器+红外相机的组合,深度传感器捕获深度数据,红外捕获码点位置。也可以对三维定位点进行相应的设计,例如采用吸波材料,使得深度相机无法捕获其深度信息,三维定位点采用特定的几何形状设计,例如圆形,矩形等,利用点位点周边的深度信息,估算出三维定位点位置处的深度值。
考虑到深度传感器的分辨率比较低,为了降低光学定位的延时,本发明利用深度传感器和红外相机的组合进行光学定位。深度传感器捕获深度数据,获得三维定位点的三维位置,与数据库中三维点云进行匹配,获得红外相机的初始姿态,在利用红外相机帧间连续性进行码点的追踪和匹配,逐帧计算相机的姿态。一旦红外那边追踪失效,则切回到深度传感器,计算红外相机姿态的初值,然后再切回到红外工作模式。图2中给出了这样的方法的流程图。
还可以直接使用深度传感器同时获取深度图和红外图,此时,只用深度传感器就够了。
下面示例性简单描述如何获得定位标记的反光点。首先,红外相机得到的是灰度图像,反光点位置处比较亮,灰度值高,利用阈值法可以把不是反光点的像素给过滤掉。然后,对反光点的像素进行聚类,得到反光点在图像中的连通区域。最后,根据连通区域,拟合圆形或椭圆,利用圆心近似求解反光点的质心。
需要说明的是,本发明并不仅限于实施例中提到的各种具体结构、形状或方法,本领域普通技术人员可对其进行简单地更改或替换,例如:
(1)深度传感器的选择不唯一,可以是基于结构光的也可以是TOF相机。
(2)定位设备的设计不唯一,可以是深度传感器+红外相机组合,也可以是深度相机本身,取决于定位的帧频,如果要求高帧频,则需要配备高帧频的红外相机。
(3)三维定位点的识别方法不唯一。可以直接利用深度传感器进行识别,也可以利用红外相机进行识别,取决于三维定位点的设计和三维定位点材料的选取。
(4)三维定位点周边描述符的表达方式不唯一。可以是提取包含该三维定位点的特殊几何形状的几何描述,也可以是其周边点位点的距离及方向的统计信息。
本发明可以获得如下技术效果之一:
(1)适应性更广。本发明采用深度传感器捕获码的三维位置,避免了在RGB相机在光线比较暗,不同环境光条件下的三维定位点识别率低的情况,使得三维定位点能够在各种光照条件下均可被准确识别,通用性更强。
(2)三维定位点的设计更加灵活。本发明只需要考虑深度传感器和红外相机对三维定位点的捕获,只需要能够捕获三维定位点在图像中的位置,而不需要对其加以区分。因此三维定位点可以设计成一样的形状和大小。
(3)三维定位点的部署更加简单。本发明中三维定位点可自由部署,三维定位点的位置,则是利用深度相机捕获的子云位置同数据库中点云匹配成功后获得。三维定位点越杂乱无序,越有益于子云与点云之间的匹配。
(4)三维定位点三维建模自动化。本发明中部署三维定位点以后,可以利用深度传感器在不同位置拍摄深度数据,得到不同的三维点云,然后利用ICP方法将这些点云拼接起来,而不需要去手动测量不同三维定位点间的距离关系。
需要说明的是,本说明书中“以相机在某位置时位姿为初值”表示利用获取到的相机在某位置时的位姿的数据,这里的数据包括了相机的三维位置(即相机的光学机构的光心所在的位置)、旋转姿态(即相机的成像平面的旋转姿态)、获得该三维位置以及旋转姿态时所用到的至少四个三维定位点的三维位置以及对应的某位置时获得的二维图像或者说某位置时每个码点的图像坐标,在实际使用中,可以是上述数据中的一部分,也可以是全部。例如,在第二位置获取的二维图像中的码点如果在第一位置获取的二维图像中也出现,则该码点对应的三维定位点的三维位置可以在计算第二位置时相机的位姿时直接利用;再如,因为红外线帧频较高,现实中第一位置与第二位置之间的距离很小,因此,即使红外相机在第二位置也可以使用其在第一位置时的三维位置来反算或推演第二位置时获得的二维图像中的码点所对应的三维定位点的三维位置。
基于以上,如图3所示,本发明提出了一种相机位姿确定方法,包括步骤:
深度图获取步骤:在相机的第一位置利用深度传感器获得空间环境中三维坐标已知的多个三维定位点中的至少三个三维定位点的深度图,三维定位点在深度图中构成码点,空间环境中的所述多个三维定位点构成点云;
子云坐标获取步骤:分析所述深度图以识别所述至少三个三维定位点以及获得所述至少三个三维定位点相对于相机的三维坐标,所述至少三个三维定位点构成子云;
匹配步骤:将子云中的至少三个三维定位点与点云进行匹配,找出点云中与子云中的三维定位点匹配的三维定位点;
确定初始位姿步骤:通过子云所在坐标系与点云所在坐标系之间的刚性变换获得相机在空间环境中第一位置时的初始位姿。
需要说明的是,在本发明中,确定相机的位姿实际上是确定其镜头光心的三维坐标以及成像平面的姿态。
在上述方法中,将子云与点云进行匹配的步骤包括:将子云中的一部分或全部三维定位点形成的几何结构与点云中的部分三维定位点形成的几何结构匹配。
下面示例性具体描述点云与子云之间的匹配。
关于三维点云的数据匹配,可以利用点云数据的一些几何结构信息,例如多个三维点组合成特定的几何形状,例如三角形、四边形等。在子云和点云内找到匹配的几何结构,计算出初始的旋转和平移,然后利用ICP方法进行精确求解。实际在部署三维定位点的过程中,是随机部署三维定位点的,因此三维定位点之间并不存在十分规律的布局关系,这样三维定位点之间构成的几何形状千差万别。以三角形为例说明,三角形的边长,角度等用来度量两个几何形状的相似性。实际用深度传感器测量时,会存在一定的误差,在实际匹配时,会提高相似性度量的阈值,保证能够找到正确的匹配,但同时又会引入多个错误的匹配。为了降低这些错误的匹配,会利用多个三角形去同时匹配,用来过滤一些错误的匹配。对于数据库中的三维点云,我们用相同的法则去构建几何形状特征。实际检索时,利用这些几何特征进行匹配,来得到三维定位点的匹配关系,进而求解两个点云坐标系的正交变换。
相应的,如图7所示,本发明也涉及一种相机位姿确定设备100,包括:
深度传感器10,深度传感器在相机的第一位置获得空间环境中三维坐标已知的多个三维定位点中的至少三个三维定位点的深度图,三维定位点在深度图中构成码点,空间环境中的所述多个三维定位点构成点云;
子云坐标获取装置20,识别所述至少三个三维定位点以及获得所述至少三个三维定位点相对于相机的三维坐标,所述至少三个三维定位点构成子云;
匹配装置30,将子云中的至少三个三维定位点与点云进行匹配,找出点云中与子云中的三维定位点匹配的三维定位点;
确定初始位姿装置40,通过子云所在坐标系与点云所在坐标系之间的刚性变换获得相机在空间环境中第一位置时的初始位姿。
可选的,上述设备中,所述深度图中包括至少四个三维定位点对应的码点;所述设备还包括初始位姿求精装置,所述初始位姿求精装置包括:
获取深度图中所述至少四个三维定位点所对应的码点的二维坐标的装置;
以刚性变换获得的相机在第一位置时的初始位姿为初值、获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置;
基于所述至少四个三维定位点在空间环境中的三维坐标以及所述至少四个三维定位点对应的码点在深度图中的二维坐标,获得相机在第一位置时位姿并将其作为第一位置时的初始位姿的装置。
可选的,获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置包括:
由所述相机在第一位置时位置向深度图中的至少四个码点引出直线的装置;以及
将所述点云中与对应的直线分别匹配的三维定位点在空间环境中的三维坐标分别作为深度图中直线经过的至少四个码点对应的至少四个三维定位点在空间环境中的三维坐标的装置。
或者可选的,获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置包括:
由所述点云中相关的三维定位点朝向相机在第一位置时位置引出直线的装置;以及
找出所述深度图的码点中与引出的直线分别匹配的码点、将与码点匹配的直线所对应的三维定位点在空间环境中的三维坐标分别作为深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置。
可选的,上述设备还包括:
在相机的第二位置获得至少四个三维定位点的二维图像的装置;
以相机在第一位置时初始位姿为初值、基于在第二位置时获取的二维图像,获取相机在第二位置时位姿的装置。
可选的,第二位置时获得的二维图像为红外图像,进一步可选的,获取红外图像的帧频为至少60Hz;获取相机在第二位置时位姿的装置包括:
获取红外图像中所述至少四个三维定位点所对应的码点的二维坐标的装置;
获取红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置;以及
基于码点在红外图像中的二维位置以及对应的所述至少四个三维定位点在空间环境中的三维坐标,获取相机在第二位置时的位姿的装置。
可选的,获取红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置包括:
由所述相机在第一位置时位置向红外图像中的至少四个码点引出直线的装置;以及
将所述点云中与对应的直线分别匹配的三维定位点在空间环境中的三维坐标分别作为红外图像中直线经过的至少四个码点对应的至少四个三维定位点在空间环境中的三维坐标的装置。
或者可选的,获取红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置包括:
由所述点云中相关的三维定位点朝向相机的位置引出直线的装置;以及
找出所述红外图像的码点中与引出的直线分别匹配的码点,将与码点匹配的直线所对应的三维定位点在空间环境中的三维坐标分别作为红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置。
可选的,第二位置时获得的二维图像为红外图像,获取红外图像的帧频为至少100Hz;获取相机在第二位置时位姿的装置包括:
使用相机在第二位置获取至少四个三维定位点的红外图像的装置;
获取红外图像中码点的二维坐标的装置;
在第二位置获取的红外图像的码点中选定与获取相机在第一位置时位姿所使用的三维定位点在深度图中的码点相对应的至少四个码点的装置;以及
基于在第二位置获取的红外图像中选定的所述至少四个码点在红外图像中的二维位置以及选定的所述至少四个码点所对应的三维定位点在空间环境中的三维坐标,获得相机在第二位置时的位姿的装置。
可选的,上述设备还包括:
在相机的第三位置利用深度传感器获得空间环境中多个三维定位点中的至少三个三维定位点的第二深度图的装置;
分析第二深度图以识别所述至少三个三维定位点以及获得所述至少三个三维定位点相对于相机的三维坐标的装置,第二深度图中的所述至少三个三维定位点构成第二子云;
将第二子云中的至少三个三维定位点与点云进行匹配,找出点云中与第二子云中的三维定位点匹配的三维定位点的装置;
通过第二子云所在坐标系与点云所在坐标系之间的刚性变换获得相机在空间环境中第二位置时的初始位姿的装置。
可选的,上述设备中,上述的将子云与点云匹配的装置包括:将子云中的一部分或全部三维定位点形成的几何结构与点云中的部分三维定位点形成的几何结构匹配的装置。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行变化,本发明的范围由所附权利要求及其等同物限定。
Claims (22)
1.一种相机位姿确定方法,包括:
深度图获取步骤:在相机的第一位置利用深度传感器获得空间环境中三维坐标已知的多个三维定位点中的至少三个三维定位点的深度图,三维定位点在深度图中构成码点,空间环境中的所述多个三维定位点构成点云;
子云坐标获取步骤:分析所述深度图以识别所述至少三个三维定位点以及获得所述至少三个三维定位点相对于相机的三维坐标,所述至少三个三维定位点构成子云;
匹配步骤:将子云中的至少三个三维定位点与点云进行匹配,找出点云中与子云中的三维定位点匹配的三维定位点;
确定初始位姿步骤:通过子云所在坐标系与点云所在坐标系之间的刚性变换获得相机在空间环境中第一位置时的初始位姿;
所述深度图中包括至少四个三维定位点对应的码点;
所述方法还包括初始位姿求精步骤,所述初始位姿求精步骤包括:
获取深度图中所述至少四个三维定位点所对应的码点的二维坐标;
以刚性变换获得的相机在第一位置时的初始位姿为初值,获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标;
基于所述至少四个三维定位点在空间环境中的三维坐标以及所述至少四个三维定位点对应的码点在深度图中的二维坐标,获得相机在第一位置时位姿并将其作为第一位置时的初始位姿。
2.根据权利要求1所述的方法,其中:
获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的步骤包括:
由所述相机在第一位置时位置向深度图中的至少四个码点引出直线;以及
将所述点云中与对应的直线分别匹配的三维定位点在空间环境中的三维坐标分别作为深度图中直线经过的至少四个码点对应的至少四个三维定位点在空间环境中的三维坐标。
3.根据权利要求1所述的方法,其中:
获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的步骤包括:
由所述点云中相关的三维定位点朝向相机在第一位置时位置引出直线;以及
找出所述深度图的码点中与引出的直线分别匹配的码点,将与码点匹配的直线所对应的三维定位点在空间环境中的三维坐标分别作为深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标。
4.根据权利要求1-3中任一项所述的方法,还包括步骤:
在相机的第二位置获得至少四个三维定位点的二维图像;
以相机在第一位置时初始位姿为初值,基于在第二位置时获取的二维图像,获取相机在第二位置时位姿。
5.根据权利要求4所述的方法,其中:
第二位置时获得的二维图像为红外图像;
获取相机在第二位置时位姿的步骤包括:
获取红外图像中所述至少四个三维定位点所对应的码点的二维坐标;
获取红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标;以及
基于码点在红外图像中的二维位置以及对应的所述至少四个三维定位点在空间环境中的三维坐标,获取相机在第二位置时的位姿。
6.根据权利要求5所述的方法,其中:
获取红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的步骤包括:
由所述相机在第一位置时位置向红外图像中的至少四个码点引出直线;以及
将所述点云中与对应的直线分别匹配的三维定位点在空间环境中的三维坐标分别作为红外图像中直线经过的至少四个码点对应的至少四个三维定位点在空间环境中的三维坐标。
7.根据权利要求5所述的方法,其中:
获取红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的步骤包括:
由所述点云中相关的三维定位点朝向相机的位置引出直线;以及
找出所述红外图像的码点中与引出的直线分别匹配的码点,将与码点匹配的直线所对应的三维定位点在空间环境中的三维坐标分别作为红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标。
8.根据权利要求4所述的方法,其中:
第二位置时获得的二维图像为红外图像;
获取相机在第二位置的位姿的步骤包括:
使用相机在第二位置获取至少四个三维定位点的红外图像;
获取红外图像中码点的二维坐标;
在第二位置获取的红外图像的码点中选定与获取相机在第一位置时位姿所使用的三维定位点在深度图中的码点相对应的至少四个码点;以及基于在第二位置获取的红外图像中选定的所述至少四个码点在红外图像中的二维位置以及选定的所述至少四个码点所对应的三维定位点在空间环境中的三维坐标,获得相机在第二位置时的位姿。
9.根据权利要求5-8中任一项所述的方法,其中:
获取红外图像的帧频为至少60Hz。
10.根据权利要求1-3、5-8中任一项所述的方法,还包括步骤:
在相机的第三位置利用深度传感器获得空间环境中多个三维定位点中的至少三个三维定位点的第二深度图;
分析第二深度图以识别所述至少三个三维定位点以及获得所述至少三个三维定位点相对于相机的三维坐标,第二深度图中的所述至少三个三维定位点构成第二子云;
将第二子云中的至少三个三维定位点与点云进行匹配,找出点云中与第二子云中的三维定位点匹配的三维定位点;
通过第二子云所在坐标系与点云所在坐标系之间的刚性变换获得相机在空间环境中第二位置时的初始位姿。
11.根据权利要求1-3、5-8中任一项所述的方法,其中:
上述的将子云与点云匹配的步骤包括:
将子云中的一部分或全部三维定位点形成的几何结构与点云中的部分三维定位点形成的几何结构匹配。
12.一种相机位姿确定设备,包括:
深度传感器,深度传感器在相机的第一位置获得空间环境中三维坐标已知的多个三维定位点中的至少三个三维定位点的深度图,三维定位点在深度图中构成码点,空间环境中的所述多个三维定位点构成点云;
子云坐标获取装置,识别所述至少三个三维定位点以及获得所述至少三个三维定位点相对于相机的三维坐标,所述至少三个三维定位点构成子云;
匹配装置,将子云中的至少三个三维定位点与点云进行匹配,找出点云中与子云中的三维定位点匹配的三维定位点;
确定初始位姿装置,通过子云所在坐标系与点云所在坐标系之间的刚性变换获得相机在空间环境中第一位置时的初始位姿;
所述深度图中包括至少四个三维定位点对应的码点;
所述设备还包括初始位姿求精装置,所述初始位姿求精装置包括:
获取深度图中所述至少四个三维定位点所对应的码点的二维坐标的装置;
以刚性变换获得的相机在第一位置时的初始位姿为初值、获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置;
基于所述至少四个三维定位点在空间环境中的三维坐标以及所述至少四个三维定位点对应的码点在深度图中的二维坐标,获得相机在第一位置时位姿并将其作为第一位置时的初始位姿的装置。
13.根据权利要求12所述的设备,其中:
获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置包括:
由所述相机在第一位置时位置向深度图中的至少四个码点引出直线的装置;以及
将所述点云中与对应的直线分别匹配的三维定位点在空间环境中的三维坐标分别作为深度图中直线经过的至少四个码点对应的至少四个三维定位点在空间环境中的三维坐标的装置。
14.根据权利要求12所述的设备,其中:
获取深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置包括:
由所述点云中相关的三维定位点朝向相机在第一位置时位置引出直线的装置;以及
找出所述深度图的码点中与引出的直线分别匹配的码点、将与码点匹配的直线所对应的三维定位点在空间环境中的三维坐标分别作为深度图中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置。
15.根据权利要求12-14中任一项所述的设备,还包括:
在相机的第二位置获得至少四个三维定位点的二维图像的装置;
以相机在第一位置时初始位姿为初值、基于在第二位置时获取的二维图像,获取相机在第二位置时位姿的装置。
16.根据权利要求15所述的设备,其中:
第二位置时获得的二维图像为红外图像;
获取相机在第二位置时位姿的装置包括:
获取红外图像中所述至少四个三维定位点所对应的码点的二维坐标的装置;
获取红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置;以及
基于码点在红外图像中的二维位置以及对应的所述至少四个三维定位点在空间环境中的三维坐标,获取相机在第二位置时的位姿的装置。
17.根据权利要求16所述的设备,其中:
获取红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置包括:
由所述相机在第一位置时位置向红外图像中的至少四个码点引出直线的装置;以及
将所述点云中与对应的直线分别匹配的三维定位点在空间环境中的三维坐标分别作为红外图像中直线经过的至少四个码点对应的至少四个三维定位点在空间环境中的三维坐标的装置。
18.根据权利要求16所述的设备,其中:
获取红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置包括:
由所述点云中相关的三维定位点朝向相机的位置引出直线的装置;以及
找出所述红外图像的码点中与引出的直线分别匹配的码点,将与码点匹配的直线所对应的三维定位点在空间环境中的三维坐标分别作为红外图像中码点对应的所述至少四个三维定位点在空间环境中的三维坐标的装置。
19.根据权利要求15所述的设备,其中:
第二位置时获得的二维图像为红外图像;
获取相机在第二位置时位姿的装置包括:
使用相机在第二位置获取至少四个三维定位点的红外图像的装置;
获取红外图像中码点的二维坐标的装置;
在第二位置获取的红外图像的码点中选定与获取相机在第一位置时位姿所使用的三维定位点在深度图中的码点相对应的至少四个码点的装置;以及
基于在第二位置获取的红外图像中选定的所述至少四个码点在红外图像中的二维位置以及选定的所述至少四个码点所对应的三维定位点在空间环境中的三维坐标,获得相机在第二位置时的位姿的装置。
20.根据权利要求16-19中任一项所述的设备,其中:
红外图像的帧频为至少60Hz。
21.根据权利要求12-14、16-19中任一项所述的设备,还包括:
在相机的第三位置利用深度传感器获得空间环境中多个三维定位点中的至少三个三维定位点的第二深度图的装置;
分析第二深度图以识别所述至少三个三维定位点以及获得所述至少三个三维定位点相对于相机的三维坐标的装置,第二深度图中的所述至少三个三维定位点构成第二子云;
将第二子云中的至少三个三维定位点与点云进行匹配,找出点云中与第二子云中的三维定位点匹配的三维定位点的装置;
通过第二子云所在坐标系与点云所在坐标系之间的刚性变换获得相机在空间环境中第二位置时的初始位姿的装置。
22.根据权利要求12-14、16-19中任一项所述的设备,其中:
上述的将子云与点云匹配的装置包括:
将子云中的一部分或全部三维定位点形成的几何结构与点云中的部分三维定位点形成的几何结构匹配的装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610934960.4A CN108022264B (zh) | 2016-11-01 | 2016-11-01 | 相机位姿确定方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610934960.4A CN108022264B (zh) | 2016-11-01 | 2016-11-01 | 相机位姿确定方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108022264A CN108022264A (zh) | 2018-05-11 |
CN108022264B true CN108022264B (zh) | 2023-06-13 |
Family
ID=62070510
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610934960.4A Active CN108022264B (zh) | 2016-11-01 | 2016-11-01 | 相机位姿确定方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108022264B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108734736B (zh) * | 2018-05-22 | 2021-10-26 | 腾讯科技(深圳)有限公司 | 相机姿态追踪方法、装置、设备及存储介质 |
CN110794955B (zh) * | 2018-08-02 | 2021-06-08 | 广东虚拟现实科技有限公司 | 定位跟踪方法、装置、终端设备及计算机可读取存储介质 |
CN111207747B (zh) * | 2018-11-21 | 2021-09-28 | 中国科学院沈阳自动化研究所 | 基于HoloLens眼镜的空间定位方法 |
CN110176020A (zh) * | 2019-04-09 | 2019-08-27 | 广东工业大学 | 一种融合2d和3d图像的燕窝杂质分拣方法 |
CN110111388B (zh) * | 2019-05-10 | 2021-03-23 | 北京航空航天大学 | 三维物体位姿参数估计方法及视觉设备 |
US11019249B2 (en) * | 2019-05-12 | 2021-05-25 | Magik Eye Inc. | Mapping three-dimensional depth map data onto two-dimensional images |
CN109903346B (zh) * | 2019-05-13 | 2019-09-06 | 长沙智能驾驶研究院有限公司 | 相机姿态检测方法、装置、设备及存储介质 |
CN110363821B (zh) * | 2019-07-12 | 2021-09-28 | 顺丰科技有限公司 | 单目相机安装偏差角的获取方法、装置、相机及存储介质 |
CN112884819A (zh) * | 2019-11-29 | 2021-06-01 | 杭州三坛医疗科技有限公司 | 一种影像配准及神经网络的训练方法、装置和设备 |
CN110928418A (zh) * | 2019-12-11 | 2020-03-27 | 北京航空航天大学 | 一种基于mr的航空线缆辅助装配方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6571024B1 (en) * | 1999-06-18 | 2003-05-27 | Sarnoff Corporation | Method and apparatus for multi-view three dimensional estimation |
CN102169579A (zh) * | 2011-03-31 | 2011-08-31 | 西北工业大学 | 密集点云模型快速精确配准方法 |
CN102609941A (zh) * | 2012-01-31 | 2012-07-25 | 北京航空航天大学 | 基于ToF深度相机的三维注册方法 |
CN104331896A (zh) * | 2014-11-21 | 2015-02-04 | 天津工业大学 | 一种基于深度信息的系统标定方法 |
CN104361575A (zh) * | 2014-10-20 | 2015-02-18 | 湖南戍融智能科技有限公司 | 深度图像中的自动地面检测及摄像机相对位姿估计方法 |
CN105354875A (zh) * | 2015-09-25 | 2016-02-24 | 厦门大学 | 一种室内环境二维与三维联合模型的构建方法和系统 |
CN105856230A (zh) * | 2016-05-06 | 2016-08-17 | 简燕梅 | 一种可提高机器人位姿一致性的orb关键帧闭环检测slam方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3040941B1 (en) * | 2014-12-29 | 2017-08-02 | Dassault Systèmes | Method for calibrating a depth camera |
-
2016
- 2016-11-01 CN CN201610934960.4A patent/CN108022264B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6571024B1 (en) * | 1999-06-18 | 2003-05-27 | Sarnoff Corporation | Method and apparatus for multi-view three dimensional estimation |
CN102169579A (zh) * | 2011-03-31 | 2011-08-31 | 西北工业大学 | 密集点云模型快速精确配准方法 |
CN102609941A (zh) * | 2012-01-31 | 2012-07-25 | 北京航空航天大学 | 基于ToF深度相机的三维注册方法 |
CN104361575A (zh) * | 2014-10-20 | 2015-02-18 | 湖南戍融智能科技有限公司 | 深度图像中的自动地面检测及摄像机相对位姿估计方法 |
CN104331896A (zh) * | 2014-11-21 | 2015-02-04 | 天津工业大学 | 一种基于深度信息的系统标定方法 |
CN105354875A (zh) * | 2015-09-25 | 2016-02-24 | 厦门大学 | 一种室内环境二维与三维联合模型的构建方法和系统 |
CN105856230A (zh) * | 2016-05-06 | 2016-08-17 | 简燕梅 | 一种可提高机器人位姿一致性的orb关键帧闭环检测slam方法 |
Non-Patent Citations (3)
Title |
---|
RGB-D camera-based quadrotor navigation in GPS-denied and low light environments using known 3D markers;Amedeo Rodi Vetrella et al.;《2015 International Conference on Unmanned Aircraft Systems (ICUAS)》;20150709;185-192 * |
Self calibration of multiple LIDARs and cameras on autonomous vehicles;MarceloPereira et al.;《Robotics and Autonomous Systems》;20160930;326-337 * |
基于单数码相机的三维结构测量;丁志安;《中国优秀硕士学位论文全文数据库 (工程科技Ⅱ辑)》;20080115(第1期);C028-42 * |
Also Published As
Publication number | Publication date |
---|---|
CN108022264A (zh) | 2018-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108022264B (zh) | 相机位姿确定方法及设备 | |
CN108406731B (zh) | 一种基于深度视觉的定位装置、方法及机器人 | |
Yang et al. | Cubeslam: Monocular 3-d object slam | |
US20200293058A1 (en) | Data processing method, apparatus and terminal | |
CN110411441B (zh) | 用于多模态映射和定位的系统和方法 | |
US9953461B2 (en) | Navigation system applying augmented reality | |
US9990726B2 (en) | Method of determining a position and orientation of a device associated with a capturing device for capturing at least one image | |
EP3262439B1 (en) | Using intensity variations in a light pattern for depth mapping of objects in a volume | |
CN108022265B (zh) | 红外相机位姿确定方法、设备及系统 | |
CN111094895B (zh) | 用于在预构建的视觉地图中进行鲁棒自重新定位的系统和方法 | |
CN110458161B (zh) | 一种结合深度学习的移动机器人门牌定位方法 | |
WO2022078513A1 (zh) | 定位方法、装置、自移动设备和存储介质 | |
KR100698534B1 (ko) | 이동로봇의 위치 인식용 랜드마크와 이를 이용한 위치 인식장치 및 방법 | |
CN113984081B (zh) | 定位方法、装置、自移动设备和存储介质 | |
KR102436730B1 (ko) | 가상 스크린의 파라미터 추정 방법 및 장치 | |
CN110782492B (zh) | 位姿跟踪方法及装置 | |
US11729367B2 (en) | Wide viewing angle stereo camera apparatus and depth image processing method using the same | |
CN103759724B (zh) | 一种基于灯饰特征的室内导航方法及系统 | |
Yamamoto et al. | Optical sensing for robot perception and localization | |
US11758100B2 (en) | Portable projection mapping device and projection mapping system | |
KR100698535B1 (ko) | 경사 보정기능을 갖는 이동로봇의 위치 인식 장치 및 방법 | |
US20210258476A1 (en) | System for generating a three-dimensional scene of a physical environment | |
CN110069131A (zh) | 一种基于近红外光圆斑检测的多指尖定位方法 | |
Li | A new efficient pose estimation and tracking method for personal devices: application to interaction in smart spaces | |
Ercan | A 3D Topological tracking system for augmented reality |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20190710 Address after: Room 106-1378, No. 2 Building, No. 8 Yuan, Xingsheng South Road, Miyun District, Beijing Applicant after: Beijing Motu Technology Co.,Ltd. Address before: 100089 Block D 0502, No. 1 Wangzhuang Road, Haidian District, Beijing Applicant before: FEITE TECHNOLOGY (BEIJING) CO.,LTD. |
|
TA01 | Transfer of patent application right | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |