掌桥专利:专业的专利平台
掌桥专利
首页

相机位姿的估计方法、装置、电子设备及计算机存储介质

文献发布时间:2023-06-19 11:32:36


相机位姿的估计方法、装置、电子设备及计算机存储介质

技术领域

本申请涉及计算机视觉技术领域,特别是涉及一种相机位姿的估计方法、相机位姿的估计装置、电子设备及计算机存储介质。

背景技术

计算机视觉是人工智能正在快速发展的一个分支,即时定位与重建技术是计算机视觉中重要的研究热点。即时定位与重建技术有着广泛的应用,如机器人、无人驾驶、无人机和增强/虚拟现实等。该技术通过单目/多目相机的输入,获得实时的自定位信息以及数字化周围环境的重建结果,赋予机器感知周围环境的能力。

即时定位与重建技术的主要问题是求解相机的位姿,相关技术中,计算相机位姿需要使用大量特征点对进行计算,计算耗时长且误差较大。

发明内容

本申请提供一种相机位姿的估计方法、相机位姿的估计装置、电子设备及计算机存储介质,以解决现有技术中计算相机位姿耗时长误差大的问题。

为解决上述技术问题,本申请提供一种相机位姿的估计方法。该方法包括:获取相机拍摄的输入图像中投影图像的位置信息,位置信息包括投影角点坐标,投影角点坐标为注册图像的顶点投影到输入图像上的坐标;根据投影角点坐标确定注册图像的两个消失点的坐标;基于消失点之间的几何约束,确定相机相对注册图像的相机位姿。

其中,相机位姿包括旋转矩阵,消失点包括第一消失点和第二消失点,基于消失点之间的几何约束,确定相机相对注册图像的相机位姿,包括:基于相机的内部参数和消失点的坐标,计算得到第一消失点对应的平行线的第一三维向量,和第二消失点对应的平行线的第二三维向量;基于第一三维向量和第二三维向量确定旋转矩阵。

其中,基于第一三维向量和第二三维向量确定相机相对旋转矩阵,包括:分别对第一三维向量、第二三维向量进行向量归一化,得到第一单位向量、第二单位向量;对第一单位向量和第二单位向量进行两次叉积校正,获得三条相互垂直的第一单位向量、第三单位向量和第四单位向量;以第一单位向量、第三单位向量和第四单位向量作为旋转矩阵。

其中,对第一单位向量和第二单位向量进行两次叉积校正,包括:对第一单位向量和第二单位向量进行叉积运算,得到垂直于第一单位向量和第二单位向量的第三单位向量;对第一单位向量和第三单位向量进行叉积运算,得到垂直于第一单位向量和第三单位向量的第四单位向量。

其中,相机位姿还包括平移矩阵,基于消失点之间的几何约束,确定相机相对注册图像的相机位姿还包括:根据投影角点坐标、投影角点坐标在注册图像上对应的注册角点的三维点坐标和旋转矩阵确定相机相对注册图像的平移矩阵。

其中,根据投影角点坐标、投影角点坐标在注册图像上对应的注册角点的三维点坐标和旋转矩阵确定相机相对注册图像的平移矩阵,包括:将投影角点坐标、三维点坐标和旋转矩阵输入平移矩阵的目标函数中,求平移矩阵的目标函数得到平移矩阵;其中,平移矩阵的目标函数是基于投影点与三维点之间的重投影约束构建的。

其中,相机位姿的估计方法还包括:使用至少两组投影角点坐标和三维点坐标求解平移矩阵的目标函数,得到最优的平移矩阵。

为解决上述技术问题,本申请提供一种相机位姿的估计装置。该装置包括获取模块、消失点计算模块和相机位姿估计模块。其中,获取模块用于获取相机拍摄的输入图像中投影图像的位置信息,位置信息包括投影角点坐标,投影角点坐标为注册图像的顶点投影到输入图像上的坐标;消失点计算模块用于根据投影角点坐标确定注册图像的两个消失点的坐标,消失点为四边形中对应矩形两平行线的两条线的交点;相机位姿估计模块用于基于消失点之间的几何约束,计算相机相对注册图像的相机位姿。

为解决上述技术问题,本申请提供一种电子设备。该电子设备包括处理器、存储器和摄像头模组;处理器耦接存储器和摄像头模组,在工作时执行指令,以配合存储器、摄像头模组实现上述的相机位姿的估计方法。

为解决上述技术问题,本申请提供一种计算机存储介质。计算机存储介质存储有计算机程序,计算机程序被处理器执行以实现上述的相机位姿的估计方法的步骤。

本申请通过根据投影角点坐标确定投影图像中消失点的坐标,进而根据消失点的几何约束计算注册图像的旋转矩阵,能够提高相机位姿估计的精确度。使用注册图像和投影图像的角点计算相机的位姿,能够减少计算相机位姿的数据量,提高相机位姿的计算效率,降低耗时。

附图说明

图1是本申请提供的相机位姿的估计方法第一实施例的流程示意图;

图2是本申请提供的世界坐标系下的注册图像经过相机位姿变换投影到输入图像平面的示意图;

图3是本申请提供的三维空间中的平行线在输入图像中相交于消失点的示意图;

图4是本申请提供的相机位姿的估计方法第二实施例的流程示意图;

图5是本申请提供的相机位姿的估计装置一实施例的结构示意图;

图6是本申请提供的一种电子设备一实施例的结构示意图;

图7是本申请提供的计算机存储介质一实施例的结构示意图。

具体实施方式

为使本领域的技术人员更好地理解本发明的技术方案,下面结合附图和具体实施方式对本申请所提供的相机位姿的估计方法、相机位姿的估计装置、电子设备及计算机存储介质做进一步详细描述。

请参阅图1,图1是本申请提供的相机位姿的估计方法第一实施例的流程示意图。本实施例包括如下步骤:

S101:获取相机拍摄的输入图像中投影图像的位置信息。

相机拍摄的输入图像包含注册图像中的内容。注册图像经过相机的位姿变换,投影到输入图像上形成投影图像。

其中,位置信息包括投影角点坐标,投影角点坐标为注册图像的顶点投影到所述输入图像上的坐标。

请参阅图2,图2是本申请提供的世界坐标系下的注册图像经过相机位姿变换投影到输入图像平面的示意图。图中点O为相机中(光)心。

具体而言,世界坐标系下的注册图像经过旋转和平移变换为相机坐标系下的注册图像,相机坐标系下的注册图像经过相机透视投影到输入图像所在的平面,注册图像在输入图像上形成投影图像。

本实施例中,注册图像可以是矩形,根据矩形的几何性质,注册图像具有两组平行边,并且两组平行边互相垂直。投影角点坐标可以为注册图像的4个顶点投影到所述输入图像上的坐标。当然,注册图像也可以是存在至少两组平行边,且至少两组平行边互相垂直的其他多边形,例如正八边形或正十六边形等,本申请对此不作限制。

注册图像的四个顶点对应世界坐标系下的三维点为A、B、C和D。三维点A、B、C和D的坐标可以根据注册图像的实际物理长度得到。可以度量得到注册图像的实际物理宽度为w

其中,世界坐标系是以注册图像的中心为O

AB||CD,BC||DA,AB⊥BC.

投影图像为与矩形对应的四边形图像,投影图像的每一条边与三维空间的注册图像的边一一对应。具体地,投影图像具有四条边l

a

c

相机拍摄的输入图像中投影图像的位置信息例如是使用图像注册算法计算出来的。图像注册算法例如是ORB(Oriented Fast and Rotated Brief)算法,FAST(Featuresfrom Accelerated Segments Test)算法,BRIEF(Binary Robust IndependentElementary Features)算法或RANSAC算法(RANdom SAmple Consensus,随机抽样一致算法)等及其改进算法。

S102:根据投影角点坐标确定注册图像的两个消失点的坐标。

基于投影角点坐标,可以计算出注册图像在输入图像上的消失点。

在三维空间中,一组平行的直线不会相交,或者可以说交于同一无穷远点。该无穷远点在相机的透视投影作用下会在图像平面中成像,成像点称为消失点。消失点可能位于图像平面内,也可能在图像平面外,甚至在无穷远处。图像上的一个消失点对应一组平行直线,亦即图像上过同一消失点的一组直线一定存在平行关系。消失点体现了一组平行直线三维方向信息。

一般地,由于注册图像经过相机位姿变换,投影到输入图像上得到的投影图像会发生形变,因此投影图像可能不为矩形或者平行四边形,而会形成为不规则的四边形。注册图像的每组平行线在投影图像中对应的两条线段的延长线可以相交于一点,即四边形中对应矩形两平行线的两条线的交点为消失点。矩形的注册图像具有两组平行线,因而根据相应的四边形的投影图像可以确定2个消失点。

根据投影角点坐标能够确定消失点的坐标。具体地,根据投影角点坐标可以确定投影图像的四条边对应的四条线段,进而根据四条线段求出对应的2个消失点。

请参阅图3,图3是本申请提供的三维空间中的平行线在输入图像中相交于消失点的示意图。

将每相邻的两个投影角点进行矢量叉积运算,可以得到相邻的两个投影角点构成的线段l

l

式(1)中,×表示矢量叉积运算。

得到四条线段l

第一消失点的坐标和第二消失点的坐标的计算公式如下:

v

式(2)中,v

S103:基于消失点之间的几何约束,确定相机相对注册图像的相机位姿。

其中,相机位姿包括旋转矩阵。

本实施例中,消失点之间的几何约束是指,消失点的坐标正比于相机的内部参数K和消失点在三维空间的三维向量V

因此,第一三维向量和第二三维向量能够代表相机坐标系的x

具体地,利用相机的内部参数和公式v=KV

式(3)中,

得到第一三维向量和第二三维向量后,分别对第一三维向量和第二三维向量进行向量归一化处理,以得到第一单位向量和第二单位向量。然后根据第一单位向量和第二单位向量确定相机相对注册图像的旋转矩阵。

式(4)中,|V

为避免引入判断相机坐标系中z

具体地,对第一单位向量和第二单位向量进行叉积运算,得到垂直于第一单位向量和第二单位向量的第三单位向量。由于噪声影响导致第一单位向量和第二单位向量不一定严格正交,本实施例对第一单位向量和第三单位向量进行叉积运算,以得到同时垂直于第一单位向量和第三单位向量的第四单位向量。计算第三单位向量和第四单位向量的公式表示如下:

式(5)中,

相机相对于注册图像的旋转矩阵

当然,还可以是第一三维向量

本实施例中,通过利用投影图像的四个投影角点坐标估计位姿,能够降低相机位姿估计的耗时,提高相机位姿估计效率。根据投影角点计算三维空间中的平行线在输入图像平面的消失点,并基于消失点计算相机旋转矩阵,由于消失点只与其在三维空间对应的平行线的方向和相机的内部参数有关,而不受投影角点和三维点的位置影响,能够提高计算旋转矩阵的算法的鲁棒性。并且,本实施例中使用了消失点的几何约束,能够在提高相机位姿估计效率的同时提高相机位姿估计的精度。

在计算处旋转矩阵后,可以进一步利用旋转矩阵、投影角点坐标和三维点坐标计算相机的平移矩阵。请参阅图4,图4是本申请提供的相机位姿的估计方法第二实施例的流程示意图。本实施例是基于相机位姿的估计方法第一实施例,故相同的步骤在此不再赘述。本实施例包括如下步骤:

S401:获取相机拍摄的输入图像中投影图像的位置信息。

S402:根据投影角点坐标确定注册图像的两个消失点的坐标。

S403:基于消失点之间的几何约束,确定相机相对注册图像的旋转矩阵。

S404:根据投影角点坐标、投影角点坐标在注册图像上对应的注册角点的三维点坐标和旋转矩阵确定相机相对注册图像的平移矩阵。

具体地,基于投影点与三维点之间的重投影约束构建平移矩阵的目标函数,将投影角点坐标、三维点坐标和旋转矩阵输入平移矩阵的目标函数中,求平移矩阵的目标函数得到平移矩阵。公式表示如下:

构建平移矩阵的目标函数:

式(7)中,w

平移矩阵的目标函数中,相机的内部参数K、旋转矩阵

展开平移矩阵的目标函数:

进一步展开:

式(9)中,a1、a2和a3为常量,a1、a2和a3是根据已知量内部参数K、旋转矩阵

可以得到投影因子

因此,本实施例中每一投影角点与其对应的三维点可以提供2组约束,而需要求解的变量为3个

2组投影角点和三维点对可提供4组约束,3组投影角点和三维点对可提供6组约束,4组投影角点和三维点对可提供8组约束,均属于超定方程组,使用奇异值分解可求解最优的平移矩阵。输入平移矩阵的目标函数的投影角点和三维点对数量越少,计算平移矩阵的速率越快;反之计算得到的平移矩阵精度越高。而本实施例中最多使用4组投影角点和三维点估计相机位姿,在提高相机位姿估计的效率的同时,提高估计的相机位姿的精度。

本实施例中,通过利用投影图像的四个投影角点坐标估计位姿,能够降低相机位姿估计的耗时,提高相机位姿估计效率。根据投影角点计算三维空间中的平行线在输入图像平面的消失点,并基于消失点计算相机旋转矩阵,由于消失点只与其在三维空间对应的平行线的方向和相机的内部参数有关,而不受投影角点和三维点的位置影响,能够提高计算旋转矩阵的算法的鲁棒性。并且,本实施例中使用了消失点的几何约束,能够在提高相机位姿估计效率的同时提高相机位姿估计的精度。进一步地,通过构建平移矩阵的目标函数,基于至少两组投影角点和其对应的三维点,能够建立平移矩阵的超定方程组,从而能够计算处平移矩阵的最优解,可以提高平移矩阵的精度。

请参阅图5,图5是本申请提供的相机位姿的估计装置一实施例的结构示意图。该相机位姿的估计装置500包括:

获取模块501,用于获取相机拍摄的输入图像中投影图像的位置信息。其中,位置信息包括投影角点坐标,投影角点坐标为注册图像的顶点投影到输入图像上的坐标。

消失点计算模块502,用于根据投影角点坐标确定注册图像的两个消失点的坐标。

相机位姿估计模块503,用于基于消失点之间的几何约束,计算相机相对注册图像的相机位姿。

其中,相机位姿估计模块503具体用于根据相机的内部参数和消失点的坐标,计算得到第一消失点对应的平行线的第一三维向量,和第二消失点对应的平行线的第二三维向量,并基于第一三维向量和第二三维向量确定旋转矩阵。

此外,相机位姿估计模块503还用于根据投影角点坐标、投影角点坐标在注册图像上对应的注册角点的三维点坐标和旋转矩阵确定相机相对注册图像的平移矩阵。

在一些实施例中,相机位姿的估计装置可以用于执行上述实施例中所描述的相机位姿的估计方法,当然可以包括用于执行上述实施例所描述的相机位姿的估计方法中的任意流程和/或步骤的单元或模块,为了简洁,不再赘述。

以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本发明装置实施例中未披露的技术细节,请参照本发明方法实施例的描述而理解。

请参阅图6,图6是本申请提供的一种电子设备一实施例的结构示意图。该电子设备600包括:

处理器601、存储器602和摄像头模组603。处理器601耦接存储器602和摄像头模组603,在工作时执行指令,以配合存储器602和摄像头模组603实现上述的相机位姿的估计方法。

可选地,电子设备为手机、相机、平板电脑或移动机器人。

其中,摄像头模组603用于拍摄输入图像。存储器602用于存储输入图像和存储注册图像在输入图像中的位姿信息。

处理器601用于根据投影角点坐标确定注册图像的两个消失点的坐标,消失点为四边形中对应矩形两平行线的两条线的交点,并基于消失点之间的几何约束,确定相机相对注册图像的相机位姿。

具体而言,处理器601用于基于相机的内部参数和消失点的坐标,计算得到第一消失点对应的平行线的第一三维向量,和第二消失点对应的平行线的第二三维向量;基于第一三维向量和第二三维向量确定旋转矩阵。处理器601还用于根据投影角点坐标、投影角点坐标在注册图像上对应的注册角点的三维点坐标和旋转矩阵确定相机相对注册图像的平移矩阵。

其中,处理器601可以是一种集成电路芯片,具有信号的处理能力。处理器601还可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

对于上述实施例的方法,其可以计算机程序的形式存在,因而本申请提出一种计算机存储介质,请参阅图7,图7是本申请提供的计算机存储介质一实施例的结构示意图。本实施例计算机存储介质700中存储有计算机程序701,其可被执行以实现上述实施例中的方法。

本实施例计算机存储介质700可以是U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等可以存储程序指令的介质,或者也可以为存储有该程序指令的服务器,该服务器可将存储的程序指令发送给其他设备运行,或者也可以自运行该存储的程序指令。

在本申请所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

相关技术
  • 相机位姿的估计方法、装置、电子设备及计算机存储介质
  • 位姿估计方法、装置、电子设备及计算机可读存储介质
技术分类

06120112964224