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

位姿校正方法、装置及存储介质

文献发布时间:2024-04-18 19:58:26


位姿校正方法、装置及存储介质

技术领域

本公开涉及摄像头技术领域,尤其涉及一种位姿校正方法、装置及存储介质。

背景技术

随着科技的不断进步,摄像头在日常生活与科技领域被越来越广泛的应用,例如应用在智能终端、高端机器人行业、自动驾驶等领域。

其中,对摄像头进行基于光学设计参数的光学畸变校正,是保证摄像头后续进行图像处理的一项比较常见的畸变校正方式。然而,目前基于光学设计参数的光学畸变校正主要是从图像角度进行校正,仍存在校正准确率低,效果不理想的情形。

发明内容

为克服相关技术中存在的问题,本公开提供一种位姿校正方法、装置及存储介质。

根据本公开实施例的第一方面,提供一种位姿校正方法,包括:获取摄像头拍摄的靶标图像,并对所述靶标图像基于光学设计参数进行去畸变;在去畸变后的图像中,提取满足视场阈值范围的感兴趣区域;基于所述感兴趣区域,确定目标角度,所述目标角度为所述摄像头拍摄所述靶标图像时所述摄像头的成像传感器与靶标之间的夹角;基于所述目标角度,对所述摄像头与所述靶标之间的相对位姿进行校正。

在一种实施方式中,所述基于所述感兴趣区域,确定目标角度,包括:将所述感兴趣区域映射至世界坐标系;基于所述感兴趣区域中的目标像素,确定所述靶标图像与所述世界坐标系中目标坐标轴之间的目标角度;所述目标像素包括所述感兴趣区域中同一行方向上的像素,所述目标坐标轴为所述世界坐标系的x轴;或所述目标像素包括所述感兴趣区域中同一列方向上的像素,所述目标坐标轴为所述世界坐标系的y轴;或所述目标像素包括所述成像传感器与靶标之间连线方向上的像素,所述目标坐标轴为所述世界坐标系的z轴。

在又一种实施方式中,所述目标像素包括所述感兴趣区域中同一行方向上的像素,所述目标坐标轴为所述世界坐标系的x轴;或者所述目标像素包括所述感兴趣区域中同一列方向上的像素,所述目标坐标轴为所述世界坐标系的y轴;所述基于所述感兴趣区域中的目标像素,确定所述靶标图像与所述世界坐标系中目标坐标轴之间的目标角度,包括:确定所述目标像素中的第一像素与所述世界坐标系的目标坐标轴之间的第一距离;确定所述目标像素中的第二像素与所述世界坐标系的目标坐标轴之间的第二距离;确定所述目标像素在所述世界坐标系的目标坐标轴上的第一投影长度;基于所述第一距离、所述第二距离以及所述第一投影长度,进行反正切函数运算,得到目标角度。

在又一种实施方式中,所述目标像素包括所述成像传感器与靶标之间连线方向上的像素,所述目标坐标轴为所述世界坐标系的z轴;所述基于所述感兴趣区域中的目标像素,确定所述靶标图像与所述世界坐标系中目标坐标轴之间的目标角度,包括:获取所述目标像素在所述世界坐标系上的第二投影长度;将所述感兴趣区域中在所述成像传感器与靶标之间连线方向上的像素,在所述世界坐标系中的长度,确定为第三距离;确定所述第三距离与所述第二投影长度之间的差值;确定所述成像传感器与靶标之间的距离与所述摄像头的焦距之间的比值,得到第一比值;确定所述差值与所述第一比值之间的比值,得到第二比值;对所述第二比值进行反正切函数运算,得到目标角度。

在又一种实施方式中,所述基于所述目标角度,对所述摄像头与所述靶标之间的相对位姿进行校正,包括:若存在大于或等于预设角度阈值的目标角度,则在目标坐标轴方向上反向调整靶标或反向调整所述摄像头所述目标角度包括所述靶标图像与所述世界坐标系的x轴方向之间的第一角度;或者所述靶标图像与所述世界坐标系的y轴方向之间的第二角度;或者所述靶标图像与所述世界坐标系的z轴方向之间的第三角度。

在又一种实施方式中,所述基于所述目标角度,对所述摄像头与所述靶标之间的相对位姿进行校正,包括:若所述目标角度小于预设角度阈值,基于所述目标角度,生成旋转矩阵,基于所述旋转矩阵调整所述靶标或调整所述摄像头。所述目标角度包括所述靶标图像与所述世界坐标系的x轴方向之间的第一角度、所述靶标图像与所述世界坐标系的y轴方向之间的第二角度、以及所述靶标图像与所述世界坐标系的z轴方向之间的第三角度。

在又一种实施方式中,所述方法还包括:在去畸变后的图像中,提取满足视场阈值范围的感兴趣区域之前,基于光学设计参数与视场之间的对应关系,确定光学设计参数小于设定畸变阈值时所对应的视场阈值范围。

根据本公开实施例的第二方面,提供一种位姿校正装置,包括:处理单元,用于获取摄像头拍摄的靶标图像,并对所述靶标图像基于光学设计参数进行去畸变;提取单元,用于在去畸变后的图像中,提取满足视场阈值范围的感兴趣区域;确定单元,用于在所述感兴趣区域中,确定目标角度,所述目标角度为所述摄像头拍摄所述靶标图像时所述摄像头的成像传感器与靶标之间的夹角;校正单元,用于基于所述目标角度,对所述摄像头与所述靶标之间的相对位姿进行校正。

在一种实施方式中,所述确定单元采用如下方式基于所述感兴趣区域,确定目标角度:将所述感兴趣区域映射至世界坐标系;基于所述感兴趣区域中的目标像素,确定所述靶标图像与所述世界坐标系中目标坐标轴之间的目标角度;所述目标像素包括所述感兴趣区域中同一行方向上的像素,所述目标坐标轴为所述世界坐标系的x轴;或所述目标像素包括所述感兴趣区域中同一列方向上的像素,所述目标坐标轴为所述世界坐标系的y轴;或所述目标像素包括所述成像传感器与靶标之间连线方向上的像素,所述目标坐标轴为所述世界坐标系的z轴。

在另一种实施方式中,所述目标像素包括所述感兴趣区域中同一行方向上的像素,所述目标坐标轴为所述世界坐标系的x轴;或者所述目标像素包括所述感兴趣区域中同一列方向上的像素,所述目标坐标轴为所述世界坐标系的y轴;所述确定单元采用如下方式基于所述感兴趣区域中的目标像素,确定所述靶标图像与所述世界坐标系中目标坐标轴之间的目标角度:确定所述目标像素中的第一像素与所述世界坐标系的目标坐标轴之间的第一距离;确定所述目标像素中的第二像素与所述世界坐标系的目标坐标轴之间的第二距离;确定所述目标像素在所述世界坐标系的目标坐标轴上的第一投影长度;基于所述第一距离、所述第二距离以及所述第一投影长度,进行反正切函数运算,得到目标角度。

在另一种实施方式中,所述目标像素包括所述成像传感器与靶标之间连线方向上的像素,所述目标坐标轴为所述世界坐标系的z轴;所述确定单元采用如下方式基于所述感兴趣区域中的目标像素,确定所述靶标图像与所述世界坐标系中目标坐标轴之间的目标角度:获取所述目标像素在所述世界坐标系上的第二投影长度;将所述感兴趣区域中在所述成像传感器与靶标之间连线方向上的像素,在所述世界坐标系中的长度,确定为第三距离;确定所述第三距离与所述第第二投影长度之间的差值;确定所述成像传感器与靶标之间的距离与所述摄像头的焦距之间的比值,得到第一比值;确定所述差值与所述第一比值之间的比值,得到第二比值;对所述第二比值进行反正切函数运算,得到目标角度。

在另一种实施方式中,所述校正单元采用如下方式基于所述目标角度,对所述摄像头与所述靶标之间的相对位姿进行校正:若存在大于或等于预设角度阈值的目标角度,则在目标坐标轴方向上反向调整靶标或反向调整所述摄像头所述目标角度包括所述靶标图像与所述世界坐标系的x轴方向之间的第一角度;或者所述靶标图像与所述世界坐标系的y轴方向之间的第二角度;或者所述靶标图像与所述世界坐标系的z轴方向之间的第三角度。

在另一种实施方式中,所述校正单元采用如下方式基于所述目标角度,对所述摄像头与所述靶标之间的相对位姿进行校正:若所述目标角度小于预设角度阈值,基于所述目标角度,生成旋转矩阵,基于所述旋转矩阵调整所述靶标或调整所述摄像头。所述目标角度包括所述靶标图像与所述世界坐标系的x轴方向之间的第一角度、所述靶标图像与所述世界坐标系的y轴方向之间的第二角度、以及所述靶标图像与所述世界坐标系的z轴方向之间的第三角度。

在另一种实施方式中,所述装置还包括:在去畸变后的图像中,提取满足视场阈值范围的感兴趣区域之前,基于光学设计参数与视场之间的对应关系,确定光学设计参数小于设定畸变阈值时所对应的视场阈值范围。

根据本公开实施例的第三方面,提供一种位姿校正装置,其特征在于,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:用于执行第一方面或者第一方面任意一种实施方式中的位姿校正的方法。

根据本公开实施例第四方面,提供一种存储介质,其特征在于,存储介质中存储有指令,当存储介质中的指令由终端的处理器执行时,使得包括处理器的终端能够执行第一方面或者第一方面任意一种实施方式中的位姿校正的方法。

本公开的实施例提供的技术方案可以包括以下有益效果:对摄像头和靶标之间相对平行的位置关系进行位姿校正的过程中,获取靶标图像。对靶标图像进行基于光学设计参数的去畸变后,提取出感兴趣区,在感兴趣区中计算靶标图像与摄像头成像传感器之间的目标角度。根据目标角度对靶标图像进行位姿校正,减小误差,提升校正准确率。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。

图1是根据一示例性实施例示出的一种位姿校正方法的流程图。

图2是根据一示例性实施例示出的一种基于感兴趣区域,确定目标角度的方法的流程图。

图3是根据一示例性实施例示出的一种基于感兴趣区域中的目标像素,确定靶标图像与世界坐标系中目标坐标轴之间的目标角度的方法的流程图。

图4是根据一示例性实施例示出的一种基于感兴趣区域中的目标像素,确定靶标图像与世界坐标系中目标坐标轴之间的目标角度的方法的流程图。

图5是根据一示例性实施例示出的一种基于目标角度,对摄像头与靶标之间的相对位姿进行校正的方法的流程图。

图6是根据一示例性实施例示出的一种基于目标角度,对摄像头与靶标之间的相对位姿进行校正的方法的流程图。

图7是根据一示例性实施例示出的一种基于目标角度,对摄像头与靶标之间的相对位姿进行校正的方法的流程图。

图8是根据一示例性实施例示出的对靶标图像进行处理的流程图。

图9是根据一示例性实施例示出的畸变随视场的变化曲线示意图。

图10是根据一示例性实施例示出的感兴趣区域选择示意图。

图11示出了本公开一示例性实施例中的靶标图像2与摄像头成像传感器在x轴方向上的夹角的示意图。

图12(a)示出了本公开一示例性实施例中的靶标图像2与摄像头成像传感器在x轴方向上的夹角的示意图。

图12(b)示出了本公开一示例性实施例中的靶标图像2与摄像头成像传感器在x轴方向上的夹角的示意图。

图13示出了本公开一示例性实施例中的靶标图像2与摄像头成像传感器在y轴方向上的夹角的示意图。

图14示出了本公开一示例性实施例中的靶标图像2与摄像头成像传感器在y轴方向上的夹角的示意图。

图15示出了本公开一示例性实施例中的靶标图像2与摄像头的成像传感器之间连线与z轴方向上的夹角的示意图。

图16示出了本公开一示例性实施例中的靶标图像2与摄像头的成像传感器之间连线与z轴方向上的夹角的示意图。

图17示出了本公开一示例性实施例中的根据靶标图像2与摄像头的传感器之间在x轴方向的夹角调整靶标的示意图。

图18是根据一示例性实施例示出的一种位姿校正装置框图。

图19是根据一示例性实施例示出的一种用于位姿校正的装置的框图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。

相关技术中,采用畸变标定得到基于光学设计参数的去畸变系数,并进行畸变校正的方案,但并能真正的实现对摄像头和靶标之间相对位置的硬件环境进行设置。对摄像头的畸变校正往往是基于光学设计参数的畸变校正,而没有靶标与摄像头之间的位姿校正,摄像头生产过程中畸变校正的硬件环境较差,用户进行摄像头校正过程中体验较差。

为解决上述问题,本公开提供一种位姿校正的方法,以实现靶标与摄像头之间尽量达到预期的要求,例如靶标与摄像头的相对位置x、y、z三轴平行。优化摄像头生产过程中畸变校正的硬件环境设置问题。

图1是根据一示例性实施例示出的一种位姿校正方法的流程图,如图1所示,位姿校正方法包括以下步骤。

在步骤S11中,获取摄像头拍摄的靶标图像,并对靶标图像进行基于光学设计参数的去畸变。

本公开实施例中,获取摄像头拍摄的靶标图像,靶标图像是摄像头靶标获得的图像。示例地,靶标可以是校正摄像头畸变的图纸。靶标图像的样式可以为棋盘格样式或具有直线特征的靶标图纸,对靶标图像的具体样式不进行限制。

本公开实施例中,畸变是限制光学测量准确度的重要因素之一,会引起像的变型。其中,对于理想光学系统,在一对共轭的物像平面上,放大率是常数。但是对于实际的光学系统,仅当视场较小时具有这一性质,而当视场较大或很大时,像的放大率就要随视场而异,这样就会使像相对于物体失去相似性。这种使像变形的成像缺陷称为畸变。

其中,共轭的物像平面为按一定的规律相配的一对的物像平面,或是以某轴为对称的两个的物像平面。

本公开实施例中,对可以为棋盘格样式或具有直线特征的靶标图纸拍摄,得到靶标图像。对得到的靶标图像进行基于光学设计参数的去畸变。其中,基于光学设计参数的去畸变可以采用光学设计参数进行调整。光学设计参数可以为实际靶标图像的像高与理想靶标图像的像高的差值与理想靶标图像的像高的比值的百分数。根据光学设计参数可以对靶标图像进行一次光学去畸变。

在步骤S12中,在去畸变后的图像中,提取满足视场阈值范围的感兴趣区域。

本公开实施例中,视场为摄像头能够观察到的最大范围。

本公开实施例中,在进行光学去畸变后的靶标图像中,基于以实际靶标图像的像高为x轴,以理想靶标图像的像高为y轴作出的畸变随视场的变化曲线,选择合适的视场阈值。其中,视场阈值范围为光学畸变较小的视场的阈值,在光学畸变较小的视场内再进行位姿校正,减小误差。

本公开实施例中,感兴趣区域即为满足视场阈值范围的视场区域。

在步骤S13中,基于感兴趣区域,确定目标角度,目标角度为摄像头拍摄靶标图像时摄像头的成像传感器与靶标之间的夹角。

本公开实施例中,在靶标图像感兴趣区域中,确定摄像头的成像传感器与靶标之间的夹角。即摄像头的成像传感器与靶标在x、y、z三轴上的夹角。

在步骤S14中,基于目标角度,对摄像头与靶标之间的相对位姿进行校正。

本公开实施例中,根据得到的摄像头的成像传感器与靶标在x、y、z三轴上的夹角,在x、y、z三轴上反向调整对应的角度,以达到对摄像头与靶标之间的位姿进行校正的目的。

本公开实施例提供的位姿校正的方法,使摄像头与靶标相对位置尽量处于平行状态,优化摄像头在生产过程中畸变校正的硬件环境设置,提升用户体验。

本公开以下实施例对本公开上述实施例中确定目标角度的方法进行进一步的解释和说明。

图2是根据一示例性实施例示出的一种基于感兴趣区域,确定目标角度的方法的流程图,如图2所示,基于感兴趣区域,确定目标角度的方法包括以下步骤。

在步骤S21中,将感兴趣区域映射至世界坐标系。

本公开实施例中,可以将靶标图像中的感兴趣区域和摄像头成像传感器映射至世界坐标系中,其中,世界坐标系可以是任意的,对此不作限定。根据靶标图像中感兴趣区域与成像传感器之间的相对位置,可以得到感兴趣区域与成像传感器之间的夹角。

在步骤S22中,基于感兴趣区域中的目标像素,确定靶标图像与世界坐标系中目标坐标轴之间的目标角度。

本公开实施例中,感兴趣区域中的目标像素可以是同一行或同一列的像素,世界坐标轴中目标坐标轴可以是x轴、y轴或z轴,但不局限于x轴、y轴、z轴三轴,例如也可以将x=3的轴作为目标坐标轴。

在步骤S23中,目标像素包括感兴趣区域中同一行方向上的像素,目标坐标轴为世界坐标系的x轴。

本公开实施例中,目标像素可以为感兴趣区域任意同一行的像素,可以将同一行上的目标像素抽象为一条直线。

在步骤S24中,或目标像素包括感兴趣区域中同一列方向上的像素,目标坐标轴为世界坐标系的y轴。

本公开实施例中,目标像素也可以为感兴趣区域任意同一列的像素,可以将同一列上的目标像素抽象为一条直线。

在步骤S25中,或目标像素包括成像传感器与靶标之间连线方向上的像素,目标坐标轴为世界坐标系的z轴。

本公开实施例中,目标像素也可以为摄像头的成像传感器与靶标上感兴趣区域之间的连线上同一行上的像素,可以将同一行上的目标像素抽象为一条直线。

本公开以下实施例对本公开上述实施例中基于感兴趣区域中的目标像素,确定靶标图像与世界坐标系中目标坐标轴之间的目标角度的方法进行进一步的解释和说明。

图3是根据一示例性实施例示出的一种基于感兴趣区域中的目标像素,确定靶标图像与世界坐标系中目标坐标轴之间的目标角度的方法的流程图,如图3所示,基于感兴趣区域中的目标像素,确定靶标图像与世界坐标系中目标坐标轴之间的目标角度的方法包括以下步骤。

在步骤S31中,确定目标像素中的第一像素与世界坐标系的目标坐标轴之间的第一距离。

本公开实施例中,目标像素为感兴趣区域中同一行上的像素,第一像素可以为目标像素抽象为的直线上的任意一个像素。由第一像素向目标坐标轴作垂线,垂线的长度为第一距离。其中,若目标像素为感兴趣区域中同一行上的像素,目标坐标轴为x轴;若目标像素为感兴趣区域中同一列上的像素,目标坐标轴为y轴。

在步骤S32中,确定目标像素中的第二像素与世界坐标系的目标坐标轴之间的第二距离。

本公开实施例中,第二像素可以为感兴趣区域中与第一像素同一行上但不同于第一像素的像素。由第二像素向目标坐标轴作垂线,垂线的长度为第二距离。

在步骤S33中,确定目标像素在世界坐标系的目标坐标轴上的第一投影长度。

本公开实施例中,目标像素在目标坐标轴上的投影长度可以为第一像素在目标坐标轴上的垂点与第二像素在目标坐标轴上的垂点之间的距离。

在步骤S34中,基于第一距离、第二距离以及第一投影长度,进行反正切函数运算,得到目标角度。

本公开实施例中,若第一像素与第二像素位于感兴趣区域中同一行上的像素与坐标轴的交点两侧,即以第一像素与第二像素所在的同一行上的像素与坐标轴的交点为原点作x轴、y轴,第一像素与第二像素分别在所建坐标系的第一象限、第三象限或分别在所建坐标系的第二象限、第四象限。则确定第一距离与第二距离之间的距离和值与第一投影长度之间的比值。

本公开实施例中,若第一像素与第二像素位于感兴趣区域中同一行上的像素与坐标轴的交点同一侧,即以第一像素与第二像素所在的同一行上的像素与坐标轴的交点为原点作x轴、y轴,第一像素与第二像素分别在所建坐标系的同一象限。则确定第一距离与第二距离之间的距离差的绝对值与第一投影长度之间的比值。

本公开实施例中,根据反正切函数以及测量得到的第一距离、第二距离、第一投影长的可以得到目标角度。其中,若目标像素为感兴趣区域中同一行上的像素,则目标角度为感兴趣区域与成像传感器在x轴方向上的角度。若目标像素为感兴趣区域中同一列上的像素,则目标角度为感兴趣区域与成像传感器在y轴方向上的角度。

本公开实施例中,以第一像素与第二像素位于感兴趣区域中同一行上的像素与坐标轴的交点两侧为例,例如感兴趣区域中同一行上的第一像素到世界坐标系的x轴的垂直距离为1,感兴趣区域中行方向上的第二像素到世界坐标系的x轴的垂直距离为1,投影在世界坐标系的x轴上的投影长度为2,可以根据反正切函数得到感兴趣区域中行方向上的像素与世界坐标系的x轴之间的夹角为45度,即目标角度为45度。

本公开实施例中,以第一像素与第二像素位于感兴趣区域中同一行上的像素与坐标轴的交点同一侧为例,例如感兴趣区域中列方向上的第一像素到世界坐标系的y轴的垂直距离为3,感兴趣区域中列方向上的第二像素到世界坐标系的y轴的垂直距离为1,投影在世界坐标系的y轴上的投影长度为2,可以根据反正切函数得到感兴趣区域中列方向上的像素与世界坐标系的y轴之间的夹角为45度,即目标角度为45度。

本公开以下实施例对本公开上述实施例中基于感兴趣区域中的目标像素,确定靶标图像与世界坐标系中目标坐标轴之间的目标角度的方法进行进一步的解释和说明。

图4是根据一示例性实施例示出的一种基于感兴趣区域中的目标像素,确定靶标图像与世界坐标系中目标坐标轴之间的目标角度的方法的流程图,如图4所示,基于感兴趣区域中的目标像素,确定靶标图像与世界坐标系中目标坐标轴之间的目标角度的方法包括以下步骤。

在步骤S41中,获取目标像素在世界坐标系上的第二投影长度。

本公开实施例中,可以将目标像素投影至世界坐标系中,测量投影长度得到第二投影长度。

在步骤S42中,将感兴趣区域中在成像传感器与靶标之间连线方向上的像素,在世界坐标系中的长度,确定为第三距离。

在步骤S43中,确定第三距离与第二投影长度之间的差值。

在步骤S44中,确定成像传感器与靶标之间的距离与摄像头的焦距之间的比值,得到第一比值。

在步骤S45中,确定差值与第一比值之间的比值,得到第二比值。

在步骤S46中,对第二比值进行反正切函数运算,得到目标角度。

本公开实施例中,例如基于感兴趣区域中在摄像头的成像传感器与靶标之间连线方向上的像素长度第三距离记为2,投影在世界坐标系中的长度第二投影长度记为1,靶标与摄像头的成像传感器之间的距离为1,摄像头焦距为1。根据反正切函数得到感兴趣区域中在摄像头的成像传感器与靶标之间连线方向上的夹角为45度,即目标角度为45度。

本公开以下实施例对本公开上述实施例中基于目标角度对摄像头与靶标之间的相对位姿进行校正的方法进行进一步的解释和说明。

图5是根据一示例性实施例示出的一种基于目标角度,对摄像头与靶标之间的相对位姿进行校正的方法的流程图,如图5所示,基于目标角度,对摄像头与靶标之间的相对位姿进行校正的方法包括以下步骤。

在步骤S51中,若存在大于或等于预设角度阈值的目标角度,则在目标坐标轴方向上反向调整靶标或反向调整摄像头。

本公开实施例中,角度阈值可以设置为1度,当目标角度大于或等于预设的角度阈值1度时,认为靶标与摄像头之间的角度较大,可以反向调整摄像头或靶标目标角度大小的角度。

本公开实施例中,例如,靶标图像与世界坐标系的x轴方向形成的目标角度为3度,预设角度阈值为1度,目标角度大于预设角度阈值。在世界坐标系的x轴方向上,对靶标图像或摄像头反向调整3度。靶标图像与世界坐标系的y轴方向形成的目标角度为5度,预设角度阈值为1度,目标角度大于预设角度阈值。在世界坐标系的y轴方向上,对靶标图像反向调整5度。靶标图像与世界坐标系的z轴方向形成的目标角度为4度,预设角度阈值为1度,目标角度大于预设角度阈值。在世界坐标系的z轴方向上,对靶标图像反向调整4度。

在步骤S52中,目标角度包括靶标图像与世界坐标系的x轴方向之间的第一角度;靶标图像与世界坐标系的y轴方向之间的第二角度;靶标图像与世界坐标系的z轴方向之间的第三角度。

本公开实施例中,目标角度包括靶标图像上感兴趣区域中的某一行方向上的像素与世界坐标系上x轴方向上的夹角,或靶标图像上感兴趣区域中的某一列方向上的像素与世界坐标系上y轴方向上的夹角,或靶标图像上感兴趣区域与摄像头成像传感器之间的连线与世界坐标系上z轴方向上的夹角。

本公开以下实施例对本公开上述实施例中基于目标角度对摄像头与靶标之间的相对位姿进行校正的方法进行进一步的解释和说明。

图6是根据一示例性实施例示出的一种基于目标角度,对摄像头与靶标之间的相对位姿进行校正的方法的流程图,如图6所示,基于目标角度,对摄像头与靶标之间的相对位姿进行校正的方法包括以下步骤。

在步骤S61中,若目标角度小于预设角度阈值,基于目标角度,生成旋转矩阵,基于旋转矩阵调整靶标或调整摄像头。

本公开实施例中,角度阈值为预先设定的角度,例如可以为1度,当靶标图像与世界坐标系的x轴方向形成的第一角度、靶标图像与世界坐标系的y轴方向形成的第二角度以及靶标图像与世界坐标系的z轴方向形成的第三角度均小于预设的1度的角度时,生成旋转矩阵,基于旋转矩阵调整靶标。

本公开实施例中,旋转矩阵的计算方式可以为以下方式,例如:基于靶标图像与世界坐标系的x轴方向形成的第一角度α生成的旋转矩阵可以为三行三列的矩阵,其中矩阵第一行的数据从左到右依次可以为1、0、0,矩阵第二行的数据从左到右依次可以为0、第一角度α的余弦函数cosα、第一角度α的正弦函数的负值-sinα,矩阵第三行的数据从左到右依次可以为0、第一角度α的正弦函数sinα、第一角度α的余弦函数cosα。

其中,基于靶标图像与世界坐标系的y轴方向形成的第二角度β生成的旋转矩阵可以为三行三列的矩阵,其中矩阵第一行的数据从左到右依次可以为第二角度β的余弦函数cosβ、0、第二角度β的正弦函数sinβ,矩阵第二行的数据从左到右依次可以为0、1、0,矩阵第三行的数据从左到右依次可以为第二角度β的正弦函数的负值-sinβ、0、第二角度β的余弦函数cosβ。

其中,基于靶标图像与世界坐标系的z轴方向形成的第三角度γ生成的旋转矩阵可以为三行三列的矩阵,其中矩阵第一行的数据从左到右依次可以为第三角度γ的余弦函数cosγ、第三角度γ的正弦函数的负值-sinγ、0,矩阵第二行的数据从左到右依次可以为第三角度γ的正弦函数sinγ、第三角度γ的余弦函数cosγ、0,矩阵第三行的数据从左到右依次可以为0、0、1。

本公开实施例中,基于得到的旋转矩阵调整靶标。其中,调整方式可以为第三角度γ生成的旋转矩阵右乘第二角度β生成的旋转矩阵右乘第一角度α生成的旋转矩阵。

在步骤S62中,目标角度包括靶标图像与世界坐标系的x轴方向之间的第一角度、靶标图像与世界坐标系y轴方向之间的第二角度、以及靶标图像与世界坐标系的z轴方向之间的第三角度。

本公开以下实施例对本公开上述实施例中确定视场阈值范围的方法进行进一步的解释和说明。

图7是根据一示例性实施例示出的一种基于目标角度,对摄像头与靶标之间的相对位姿进行校正的方法的流程图,如图7所示,基于目标角度,对摄像头与靶标之间的相对位姿进行校正的方法包括以下步骤。

在步骤S71中,基于光学设计参数与视场之间的对应关系确定光学设计参数小于设定畸变阈值时所对应的视场阈值范围。

本公开实施例中,根据光学设计参数随视场的变化曲线,确定小于光学设计参数阈值的视场阈值范围。视场阈值的选择可以采用光学设计参数随视场的变化曲线中未发生畸变的曲线或畸变产生较小的部分的最大值。根据光学设计参数随视场的变化曲线可以得到视场阈值范围。

其中,例如一个圆形区域,圆形区域半径为R,圆形区域中有一个半径为r的小圆形区域,如果r与R的比值为0.1,那么r所代表的区域为0.1视场。

在步骤S72中,在去畸变后的图像中,提取满足视场阈值范围的感兴趣区域。

本公开实施例中,根据视场阈值得到光学畸变小的视场,设置为感兴趣区域。

本公开实施例以下以一棋盘格样式靶标为例,对本公开上述实施例涉及的靶标位姿校正方法以及感兴趣区域的选取的方法进行举例说明。

图8是根据一示例性实施例示出的对靶标图像进行处理的流程图。参阅图8所示,首先获取摄像头拍摄的靶标图像,根据靶标图像的实际像高与理想像高的差与理想像高的比值,得到光学畸变系数,例如,实际像高为100,理想像高为50,可以得到光学畸变系数为50%。基于得到的光学畸变系数,对靶标图像进行光学去畸变,得到靶标图像1。

本公开实施例中,图9是根据一示例性实施例示出的畸变随视场的变化曲线示意图,参阅图9所示,选择曲线为直线部分的最大值为视场阈值,基于视场阈值提取感兴趣区域。例如畸变随视场的变化曲线在0.8视场开始出现畸变,则视场阈值可以选择0.8,即在靶标图像中,以靶标图像的中心为中心,选取半径与靶标图像比值为0.8的区域,为感兴趣区域。参阅图10所示,图10是根据一示例性实施例示出的感兴趣区域选择示意图。

本公开实施例中,提取感兴趣区后得到靶标图像2。基于靶标图像2,进行靶标图像2与摄像头成像传感器之间的夹角计算。

其中,图11示出了本公开一示例性实施例中的靶标图像2与摄像头成像传感器在x轴方向上的夹角的示意图。图12(a)和图12(b)分别示出了本公开一示例性实施例中的靶标图像2与摄像头成像传感器在x轴方向上的夹角的示意图。

参阅图12(a)所示,将靶标图像2行方向上的像素抽象为直线,以摄像头的成像传感器所在平面为坐标系的水平方向,建立世界坐标系,将世界坐标系的x轴方向抽象为虚线,计算靶标图像2行方向上的像素与世界坐标系的x轴方向之间的夹角。其中,h1、h2分别表示靶标图像2行方向上的像素到世界坐标系的x轴方向之间的距离。用H表示靶标图像2行方向上的像素投影到世界坐标系的x轴方向上的距离。根据h1、h2、H以及反正切函数公式,可以得到靶标图像2行方向上的像素与世界坐标系的x轴方向之间的夹角α,其中,α=arctan[(h1+h2)/H]。

参阅图12(b)所示,将靶标图像2行方向上的像素抽象为直线,以摄像头的成像传感器所在平面为坐标系的水平方向,建立世界坐标系,将世界坐标系的x轴方向抽象为虚线,计算靶标图像2行方向上的像素与世界坐标系的x轴方向之间的夹角。其中,h1、h2分别表示靶标图像2行方向上的像素到世界坐标系的x轴方向之间的距离。用H表示靶标图像2行方向上的像素投影到世界坐标系的x轴方向上的距离。根据h1、h2、H以及反正切函数公式,可以得到靶标图像2行方向上的像素与世界坐标系的x轴方向之间的夹角α,其中,α=arctan[(h1-h2)/H]。

图13示出了本公开一示例性实施例中的靶标图像2与摄像头成像传感器在y轴方向上的夹角的示意图。图14示出了本公开一示例性实施例中的靶标图像2与摄像头成像传感器在y轴方向上的夹角的示意图。

参阅图14所示,将靶标图像2列方向上的像素抽象为直线,将世界坐标系的y轴方向抽象为虚线,计算靶标图像2列方向上的像素与世界坐标系的y轴方向之间的夹角。其中,l1、l2分别表示靶标图像2列方向上的像素到世界坐标系的y轴方向之间的距离。用L表示靶标图像2列方向上的像素投影到世界坐标系的y轴方向上的距离。根据l1、l2、L以及反正切函数公式,可以得到靶标图像2列方向上的像素与世界坐标系的y轴方向之间的夹角β,其中,β=arctan[(l1+l2)/L]。

图15示出了本公开一示例性实施例中的靶标图像2与摄像头的成像传感器之间连线与z轴方向上的夹角的示意图。图16示出了本公开一示例性实施例中的靶标图像2与摄像头的成像传感器之间连线与z轴方向上的夹角的示意图。

参阅图16所示,将靶标图像2与摄像头的成像传感器之间连线方向上的像素抽象为直线,将世界坐标系的z轴方向抽象为虚线,计算靶标图像2与摄像头的成像传感器之间连线方向上的像素与世界坐标系的z轴方向之间的夹角。其中,H1、H2分别表示靶标图像2与摄像头的成像传感器之间连线方向上的像素投影到世界坐标系的z轴方向上的距离和靶标图像2与摄像头的成像传感器之间连线方向上的像素长度。可以用Dist表示靶标图像2与摄像头的成像传感器之间的距离,用f表示摄像头的焦距。根据H1、H2、Dist、f以及反正切函数公式,可以得到靶标图像2与摄像头的成像传感器之间连线方向上的像素与世界坐标系的z轴方向之间的夹角γ,其中,γ=arctan[(H2-H1)/(Dist/f)]。

图17示出了本公开一示例性实施例中的根据靶标图像2与摄像头的传感器之间在x轴方向的夹角调整靶标的示意图。参阅图17所示,若靶标图像2与摄像头的传感器之间在x轴方向的夹角大于或等于预设的角度,在x轴反向调整靶标。若靶标图像2与摄像头的传感器之间在x轴方向的夹角小于预设的角度,则基于夹角,生成旋转矩阵,对靶标图像2应用旋转矩阵。同理可得根据靶标图像2与摄像头的传感器之间在y、z轴方向的夹角调整靶标。

基于相同的构思,本公开实施例还提供一种位姿校正装置。

可以理解的是,本公开实施例提供的位姿校正装置为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。结合本公开实施例中所公开的各示例的单元及算法步骤,本公开实施例能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同的方法来实现所描述的功能,但是这种实现不应认为超出本公开实施例的技术方案的范围。

图18是根据一示例性实施例示出的一种位姿校正装置框图。参照图18,该装置包括处理单元101,提取单元102,确定单元103和校正单元104。

该处理单元101用于获取摄像头拍摄的靶标图像,并对靶标图像进行基于光学设计参数的去畸变。

该提取单元102用于在进行基于光学设计参数去畸变后的图像中,提取满足视场阈值范围的感兴趣区域。

该确定单元103用于在感兴趣区域,确定目标角度,目标角度为摄像头拍摄靶标图像时摄像头的成像传感器与靶标之间的夹角。

该校正单元104基于目标角度,对摄像头与靶标之间的相对位姿进行校正。

在一种实施方式中,确定单元103采用如下方式基于感兴趣区域,确定目标角度:将感兴趣区域映射至世界坐标系;基于感兴趣区域中的目标像素,确定靶标图像与世界坐标系中目标坐标轴之间的目标角度;目标像素包括感兴趣区域中同一行方向上的像素,目标坐标轴为世界坐标系的x轴;或目标像素包括感兴趣区域中同一列方向上的像素,目标坐标轴为世界坐标系的y轴;或目标像素包括成像传感器与靶标之间连线方向上的像素,目标坐标轴为世界坐标系的z轴。

在另一种实施方式中,目标像素包括感兴趣区域中同一行方向上的像素,目标坐标轴为世界坐标系的x轴;或者目标像素包括感兴趣区域中同一列方向上的像素,目标坐标轴为世界坐标系的y轴;确定单元103采用如下方式基于感兴趣区域中的目标像素,确定靶标图像与世界坐标系中目标坐标轴之间的目标角度:确定目标像素中的第一像素与世界坐标系的目标坐标轴之间的第一距离;确定目标像素中的第二像素与世界坐标系的目标坐标轴之间的第二距离;确定目标像素在世界坐标系的目标坐标轴上的第一投影长度;基于第一距离、第二距离以及第一投影长度,进行反正切函数运算,得到目标角度。

在另一种实施方式中,目标像素包括成像传感器与靶标之间连线方向上的像素,目标坐标轴为世界坐标系的z轴;确定单元103采用如下方式基于感兴趣区域中的目标像素,确定靶标图像与世界坐标系中目标坐标轴之间的目标角度:获取目标像素在世界坐标系上的第二投影长度;将感兴趣区域中在成像传感器与靶标之间连线方向上的像素,在世界坐标系中的长度,确定为第三距离;确定第三距离与第第二投影长度之间的差值;确定成像传感器与靶标之间的距离与摄像头的焦距之间的比值,得到第一比值;确定差值与第一比值之间的比值,得到第二比值;对第二比值进行反正切函数运算,得到目标角度。

在另一种实施方式中,校正单元104采用如下方式基于目标角度,对摄像头与靶标之间的相对位姿进行校正:若存在大于或等于预设角度阈值的目标角度,则在目标坐标轴方向上反向调整靶标或反向调整摄像头目标角度包括靶标图像与世界坐标系的x轴方向之间的第一角度;或者靶标图像与世界坐标系的y轴方向之间的第二角度;或者靶标图像与世界坐标系的z轴方向之间的第三角度。

在另一种实施方式中,校正单元104采用如下方式基于目标角度,对摄像头与靶标之间的相对位姿进行校正:若目标角度小于预设角度阈值,基于目标角度,生成旋转矩阵,基于旋转矩阵调整靶标或调整摄像头。目标角度包括靶标图像与世界坐标系的x轴方向之间的第一角度、靶标图像与世界坐标系的y轴方向之间的第二角度、以及靶标图像与世界坐标系的z轴方向之间的第三角度。

在另一种实施方式中,装置还包括:在去畸变后的图像中,提取满足视场阈值范围的感兴趣区域之前,基于光学设计参数与视场之间的对应关系,确定光学设计参数小于设定畸变阈值时所对应的视场阈值范围。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

图19是根据一示例性实施例示出的一种用于位姿校正的装置200的框图。例如,装置200可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。

参照图19,装置200可以包括以下一个或多个组件:处理组件202,存储器204,电力组件206,多媒体组件208,音频组件210,输入/输出(I/O)接口212,传感器组件214,以及通信组件216。

处理组件202通常控制装置200的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件202可以包括一个或多个处理器220来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件202可以包括一个或多个模块,便于处理组件202和其他组件之间的交互。例如,处理组件202可以包括多媒体模块,以方便多媒体组件208和处理组件202之间的交互。

存储器204被配置为存储各种类型的数据以支持在装置200的操作。这些数据的示例包括用于在装置200上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器204可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。

电力组件206为装置200的各种组件提供电力。电力组件206可以包括电源管理系统,一个或多个电源,及其他与为装置200生成、管理和分配电力相关联的组件。

多媒体组件208包括在所述装置200和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件208包括一个前置摄像头和/或后置摄像头。当装置200处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。

音频组件210被配置为输出和/或输入音频信号。例如,音频组件210包括一个麦克风(MIC),当装置200处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器204或经由通信组件216发送。在一些实施例中,音频组件210还包括一个扬声器,用于输出音频信号。

I/O接口212为处理组件202和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。

传感器组件214包括一个或多个传感器,用于为装置200提供各个方面的状态评估。例如,传感器组件214可以检测到装置200的打开/关闭状态,组件的相对定位,例如所述组件为装置200的显示器和小键盘,传感器组件214还可以检测装置200或装置200一个组件的位置改变,用户与装置200接触的存在或不存在,装置200方位或加速/减速和装置200的温度变化。传感器组件214可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件214还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件214还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。

通信组件216被配置为便于装置200和其他设备之间有线或无线方式的通信。装置200可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件216经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件216还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。

在示例性实施例中,装置200可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。

在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器204,上述指令可由装置200的处理器220执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。

可以理解的是,本公开中“多个”是指两个或两个以上,其它量词与之类似。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。

进一步可以理解的是,术语“第一”、“第二”等用于描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开,并不表示特定的顺序或者重要程度。实际上,“第一”、“第二”等表述完全可以互换使用。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。

进一步可以理解的是,除非有特殊说明,“连接”包括两者之间不存在其他构件的直接连接,也包括两者之间存在其他元件的间接连接。

进一步可以理解的是,本公开实施例中尽管在附图中以特定的顺序描述操作,但是不应将其理解为要求按照所示的特定顺序或是串行顺序来执行这些操作,或是要求执行全部所示的操作以得到期望的结果。在特定环境中,多任务和并行处理可能是有利的。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利范围来限制。

相关技术
  • 位姿检测方法及装置、电子设备和存储介质
  • 多相机的位姿计算方法、装置、设备及存储介质
  • 获取位姿的方法、装置存储介质
  • 一种相机位姿的估计方法、装置、存储介质及机器人
  • 一种液位检测装置和包含其的设备以及液位检测方法、电子设备及计算机可读存储介质
  • 机器人的位姿校正方法、装置、终端设备及存储介质
  • 位姿校正方法、装置、设备和存储介质
技术分类

06120116486329