发明内容
本申请实施例提供了一种对旋转轴进行标定的方法,不借助间接测量设备辅助进行测量,且克服了旋转轴和图像采集设备之间标定不精确的问题。
该方法包括:
图像采集设备采集包含第一标定板的待处理图像;
基于所述待处理图像,计算所述图像采集设备的位置相对于所述第一标定板的位置的偏转角度;
根据所述偏转角度,旋转轴带动所述图像采集设备分别旋转至第一采样位置和第二采样位置,并在所述第一采样位置采集第一采样图像,以及在所述第二采样位置采集第二采样图像,其中,所述第一采样位置和所述第二采样位置之间形成的夹角为所述旋转轴带动所述图像采集设备采集到包含完整的所述第一标定板的最大旋转范围;
根据所述第一采样图像和所述第二采样图像,计算所述图像采集设备与旋转轴的姿态标定参数,并根据所述姿态标定参数调整所述图像采集设备与所述旋转轴的相对姿态。
可选地,选取至少一个第三采样位置;
所述图像采集设备分别在至少一个所述第三采样位置上采集包含第二标定板的所述第三采样图像;
提取所述第三采样图像中的角点,并基于所述第三采样图像中的角点的图像坐标,计算所述图像采集设备的相机内参和畸变参数。
可选地,基于所述图像采集设备的所述相机内参和所述畸变参数,分别对所述待处理图像、所述第一采样图像和所述第二采样图像进行去畸变处理。
可选地,计算所述图像采集设备相对于所述第一标定板的第一旋转参数和第一平移参数;
基于所述第一旋转参数和第一平移参数,计算所述第一标定板在相机坐标系下的平面方程;
计算所述平面方程在所述相机坐标系下的所述偏转角度。
可选地,在至少一个所述待处理图像中提取所述第一标定板的角点;
分别获取所述第一标定板的角点在图像坐标系下的第一像素坐标和第一三维坐标;
基于所述相机内参,所述第一像素坐标和所述第一三维坐标,计算所述图像采集设备相对于所述第一标定板的位置的所述第一旋转参数和所述第一平移参数。
可选地,基于所述第一旋转参数和第一平移参数,计算每个所述第一标定板的角点在所述相机坐标系下的三维坐标;
根据多个所述三维坐标生成所述第一标定板在相机坐标系下的拟合平面,并基于所述拟合平面,计算所述第一标定板在相机坐标系下的所述平面方程。
可选地,分别计算所述图像采集设备在所述第一采样位置时相对于所述第一标定板的第二旋转参数和第二平移参数,以及,所述图像采集设备在所述第二采样位置时相对于所述第一标定板的第三旋转参数和第三平移参数;
基于所述第二旋转参数、所述第三旋转参数、所述第二平移参数和第三平移参数,计算在所述第一采样位置的所述图像采集设备和在所述第二采样位置的所述图像采集设备之间相对姿态的第四旋转参数和第四平移参数;
基于所述第四旋转参数和所述第四平移参数,计算所述图像采集设备与所述旋转轴的姿态标定参数,其中,所述姿态标定参数包括对所述旋转轴与所述图像采集设备的旋转角度和旋转向量,和所述旋转轴在所述相机坐标系下的平移向量。
可选地,在所述第一采样图像中提取第一角点,以及在所述第二采样图像中提取第二角点;
获取所述第一角点在图像坐标系下的第二像素坐标和第二三维坐标,以及所述第二角点在图像坐标系下的第三像素坐标和第三三维坐标;
基于所述相机内参,所述第二像素坐标和所述第二三维坐标,计算所述图像采集设备在所述第一采样位置时相对于所述第一标定板的第二旋转参数和第二平移参数,以及,基于所述相机内参,所述第三像素坐标和所述第三三维坐标,计算所述图像采集设备在所述第二采样位置时相对于所述第一标定板的位置的第三旋转参数和第三平移参数。
在本发明的另一个实施例中,提供了一种对旋转轴进行标定的装置,该装置包括:
第一采集模块,用于图像采集设备采集包含第一标定板的待处理图像;
第一计算模块,用于计算所述图像采集设备的位置相对于所述第一标定板的位置的偏转角度;
第二采集模块,用于根据所述偏转角度,旋转轴带动所述图像采集设备分别旋转至第一采样位置和第二采样位置,并在所述第一采样位置采集第一采样图像,以及在所述第二采样位置采集第二采样图像,其中,所述第一采样位置和所述第二采样位置之间形成的夹角为所述旋转轴带动所述图像采集设备采集到包含完整的所述第一标定板的最大旋转范围;
第二计算模块,用于根据所述第一采样图像和所述第二采样图像,计算所述图像采集设备与旋转轴的姿态标定参数,并根据所述姿态标定参数调整所述图像采集设备与所述旋转轴的相对姿态。
可选地,所述装置还包括:
选取模块,用于选取至少一个第三采样位置;
第三采集模块,用于所述图像采集设备分别在至少一个所述第三采样位置上采集包含第二标定板的所述第三采样图像;
第三计算模块,用于提取所述第三采样图像中的角点,并基于所述第三采样图像中的角点的图像坐标,计算所述图像采集设备的相机内参和畸变参数。
可选地,所述装置还包括:
去畸变模块,用于基于所述图像采集设备的所述相机内参和所述畸变参数,分别对所述待处理图像、所述第一采样图像和所述第二采样图像进行去畸变处理。
可选地,所述第一计算模块包括:
第一计算单元,用于计算所述图像采集设备相对于所述第一标定板的第一旋转参数和第一平移参数;
第二计算单元,用于基于所述第一旋转参数和第一平移参数,计算所述第一标定板在相机坐标系下的平面方程;
第三计算单元,用于计算所述平面方程在所述相机坐标系下的所述偏转角度。
可选地,所述第一计算单元包括:
第一提取子单元,用于在至少一个所述待处理图像中提取所述第一标定板的角点;
第一获取子单元,用于分别获取所述第一标定板的角点在图像坐标系下的第一像素坐标和第一三维坐标;
第一计算子单元,用于基于所述相机内参,所述第一像素坐标和所述第一三维坐标,计算所述图像采集设备相对于所述第一标定板的位置的所述第一旋转参数和所述第一平移参数。
可选地,所述第二计算单元包括:
第二计算子单元,用于基于所述第一旋转参数和第一平移参数,计算每个所述第一标定板的角点在所述相机坐标系下的三维坐标;
第三计算子单元,用于根据多个所述三维坐标生成所述第一标定板在相机坐标系下的拟合平面,并基于所述拟合平面,计算所述第一标定板在相机坐标系下的所述平面方程。
可选地,所述第二计算模块包括:
第四计算单元,用于分别计算所述图像采集设备在所述第一采样位置时相对于所述第一标定板的第二旋转参数和第二平移参数,以及,所述图像采集设备在所述第二采样位置时相对于所述第一标定板的第三旋转参数和第三平移参数;
第五计算单元,用于基于所述第二旋转参数、所述第三旋转参数、所述第二平移参数和第三平移参数,计算在所述第一采样位置的所述图像采集设备和在所述第二采样位置的所述图像采集设备之间相对姿态的第四旋转参数和第四平移参数;
第六计算单元,用于基于所述第四旋转参数和所述第四平移参数,计算所述图像采集设备与所述旋转轴的姿态标定参数,其中,所述姿态标定参数包括对所述旋转轴与所述图像采集设备的旋转角度和旋转向量,和所述旋转轴在所述相机坐标系下的平移向量。
可选地,第四计算单元包括:
第二计算子单元,用于在所述第一采样图像中提取第一角点,以及在所述第二采样图像中提取第二角点;
第二获取子单元,用于获取所述第一角点在图像坐标系下的第二像素坐标和第二三维坐标,以及所述第二角点在图像坐标系下的第三像素坐标和第三三维坐标;
第四计算子单元,用于基于所述相机内参,所述第二像素坐标和所述第二三维坐标,计算所述图像采集设备在所述第一采样位置时相对于所述第一标定板的第二旋转参数和第二平移参数,以及,基于所述相机内参,所述第三像素坐标和所述第三三维坐标,计算所述图像采集设备在所述第二采样位置时相对于所述第一标定板的位置的第三旋转参数和第三平移参数。
在本发明的另一个实施例中,提供了一种非瞬时计算机可读存储介质,所述非瞬时计算机可读存储介质存储指令,所述指令在由处理器执行时使得所述处理器执行上述一种对旋转轴进行标定的方法中的各个步骤。
在本发明的另一个实施例中,提供了一种终端设备,包括处理器,所述处理器用于执行上述一种对旋转轴进行标定的方法中的各个步骤。
如上可见,基于上述实施例,首先图像采集设备采集包含第一标定板的待处理图像,其次,基于待处理图像,计算图像采集设备的位置相对于第一标定板的位置的偏转角度,然后,根据偏转角度,旋转轴带动图像采集设备分别旋转至第一采样位置和第二采样位置,并在第一采样位置采集第一采样图像,以及在第二采样位置采集第二采样图像,其中,第一采样位置和第二采样位置之间形成的夹角为旋转轴带动图像采集设备采集到包含完整的第一标定板的最大旋转范围,最后,根据第一采样图像和第二采样图像,计算图像采集设备与旋转轴的姿态标定参数,并根据姿态标定参数调整图像采集设备与旋转轴的相对姿态。本申请实施例通过旋转轴带动图像采集设备采集图像,计算图像采集设备与旋转轴之间的姿态标定参数,不借助间接测量设备辅助进行测量,实现旋转轴和图像采集设备之间的精确标定。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其他步骤或单元。
基于现有技术中的问题,本申请实施例提供了一种对旋转轴进行标定的方法,主要适用于计算机视觉和三维重建领域。通过电机驱动旋转轴带动图像采集设备进行旋转,围绕旋转轴采集图像,并对图像进行分析,以对图像采集设备和带动图像采集设备进行旋转的旋转轴之间的相对姿态进行标定,实现一种对旋转轴进行标定的方法。下面以具体实施例对本发明的技术方案进行详细说明。其中,几个具体实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。如图1所示,为本申请实施例100提供的一种对旋转轴进行标定的方法的流程示意图。其中,详细步骤如下:
S11,图像采集设备采集包含第一标定板的待处理图像。
本步骤中,本申请实施例中的图像采集设备可以为照相机或者虚拟现实(Vi rtual Rea l ity,VR)设备。图像采集设备与旋转轴连接,使得旋转轴可以带动图像采集设备旋转。第一标定板可以设定在图像设备的正前方,图像采集设备的图像采集视野中可以包括整块第一标定板。进一步地,图像采集设备采集包含第一标定板的待处理图像。其中,第一标定板中的每个四边形单元格作为独立的元素,检测每个黑色单元格和白色单元格的边,并将黑色单元格和白色单元格的几何中心作为角点的位置。如图2所述,为本申请实施例200示出的第一标定板的示意图。
S12,基于待处理图像,计算图像采集设备的位置相对于第一标定板的位置的偏转角度。
本步骤中,通过对采集的待处理图像进行分析,获取待处理图像中的第一标定板上的至少一个角点的像素坐标,以及第一标定板上的至少一个角点的三维坐标。进一步地,根据至少一个角点的第一像素坐标和第一三维坐标,计算第一标定板与图像采集设备之间相对姿态的变换参数。其中,第一标定板和图像采集设备之间变参数包括第一旋转参数和第一平移参数。
进一步地,基于第一旋转参数和第一平移参数,对第一标定板上至少一个角点在标定板坐标系下的第一三维坐标进行转换,计算得到至少一个角点在图像采集设备的相机坐标系下的三维坐标。将这些三维坐标所在的平面进行拟合,可以生成第一标定板的拟合平面的平面方程。
进一步地,基于拟合平面的平面方程可以分解得到图像采集设备在相机坐标系下X,Y,Z三个轴时的位置相对于第一标定板的位置的偏转角度。如可以计算得出相机坐标系下Y轴相对于第一标定板的位置的偏转角度为β。
S13,根据偏转角度,旋转轴带动图像采集设备分别旋转至第一采样位置和第二采样位置,并在第一采样位置采集第一采样图像,以及在第二采样位置采集第二采样图像。
本步骤中,电机驱动旋转轴带动图像采集设备旋转,并在第一采样位置采集第一采样图像,以及在第二采样位置采集第二采样图像。其中,第一采样位置和第二采样位置之间形成的夹角为旋转轴带动图像采集设备采集到包含完整的第一标定板的最大旋转范围。第一采样位置和第二采样位置可以以图像采集设备的视野中心线为对称轴对称。可选地,在经过上述步骤S12计算得出图像采集设备和第一标定板的偏转角度后,当旋转轴带动图像采集设备顺时针旋转预设角度α停止在第一采样位置时,第二采样位置为旋转轴带动图像采集设备顺时针旋转360°-β-α。其中,当在第一采样位置或在第二采样位置时,图像采集设备采集到的第一采样图像和第二采样图像中均应包含整块第一标定板。
S14,根据第一采样图像和第二采样图像,计算图像采集设备与旋转轴的姿态标定参数,并根据姿态标定参数调整图像采集设备与旋转轴的相对姿态。
本步骤中,基于第一采样图像和第二采样图像,分别计算图像采集设备在第一采样位置时与第一标定板的第二旋转参数和第二平移参数,以及,在第二采样位置时相对于第一标定板的第三旋转参数和第三平移参数。进一步地,基于第二旋转参数、第二平移参数、第三旋转参数和第三平移参数,计算在第一采样位置时的图像采集设备和在第二采样位置时的图像采集设备的第四旋转参数和第四平移参数。进一步地,根据第四旋转参数和第四平移参数,计算图像采集设备与旋转轴的姿态标定参数,并根据姿态标定参数调整图像采集设备与旋转轴的相对姿态。其中,姿态标定参数包括对旋转轴与图像采集设备的旋转角度和旋转向量,和旋转轴在相机坐标系下的平移参数。
如上所述,基于上述实施例,首先图像采集设备采集包含第一标定板的待处理图像,其次,基于待处理图像,计算图像采集设备的位置相对于第一标定板的位置的偏转角度,然后,根据偏转角度,旋转轴带动图像采集设备分别旋转至第一采样位置和第二采样位置,并在第一采样位置采集第一采样图像,以及在第二采样位置采集第二采样图像,其中,第一采样位置和第二采样位置之间形成的夹角为旋转轴带动图像采集设备采集到包含完整的第一标定板的最大旋转范围,最后,根据第一采样图像和第二采样图像,计算图像采集设备与旋转轴的姿态标定参数,并根据姿态标定参数调整图像采集设备与旋转轴的相对姿态。本申请实施例通过旋转轴带动图像采集设备采集图像,计算图像采集设备与旋转轴之间的姿态标定参数,不借助间接测量设备辅助进行测量,实现旋转轴和图像采集设备之间的精确标定。
如图3所示,为本申请实施例300提供的一种对旋转轴进行标定的方法的具体流程的示意图。其中,该具体流程的详细过程如下:
S301,选取至少一个第三采样位置。
这里,第三采样位置为第二标定板的摆放位置。本申请实施例通过保持图像采集设备的位置固定,将第二标定板分别移动至各个第三采样位置,第三采样位置均在图像采集设备的图像采集视野中。
S302,图像采集设备在至少一个第三采样位置采集包含第二标定板的第三采样图像。
这里,在每个第三采样位置,图像采集设备采集第三采样图像。其中,保持图像采集设备的位置固定不动,在每个第三采样位置采集第三采样图像,每个第三采样图像中包括整块第二标定板。如图4所示,为本申请实施例400所示出的第二标定板的示意图,每个圆形单元格的几何中心作为第二标定板的角点的位置。
S303,根据第三采样图像,计算图像采集设备的相机内参和畸变参数。
本步骤中,首先提取第三采样图像中的角点,并基于第三采样图像中的角点的图像坐标,计算图像采集设备的相机内参和畸变参数。具体的,利用角点提取算法分别提取第三采样图像中的角点。基于提取的角点,计算图像采集设备的相机内参和畸变参数。可选地,通过张氏标定算法,N点透视(Perspect ive-n-point,PNP)算法来优化结果并得到图像采集设备的相机内参和畸变参数。其中,在提取了角点图像坐标后,为了获取更高的精度,可以将提取到的角点的像素精确到亚像素精度。
进一步地,相机内参为与图像采集设备自身相关的参数,相机内参可以表示为 其中,fx为图像采集设备的摄像头在X轴上的焦距,fy为在Y轴上的焦距,cx为相对光轴而言x方向上的偏移量和相对光轴而言Y方向上的偏移量cy。图像采集设备的畸变参数D=[k1,k2,p1,p2,k3],其中,k1,k2,k3为感光元平面跟透镜不平行所导致的径向畸变系数,p1,p2为相机制作工艺导致的切向畸变系数。
S304,图像采集设备采集包含第一标定板的待处理图像。
本步骤中,在接收到进行标定的命令后,将进行过上述步骤S301至S303内参标定的图像采集设备与旋转轴进行连接,并固定放置,使得图像采集设备的图像采集视野中包含第一标定板。进一步地,图像采集设备采集包括第一标定板的待处理图像。在采集待处理图像时,可以跳过开始采集到的部分帧的待处理图像,如舍弃开始采集到的10帧待处理图像,从第11帧开始保存为待处理图像,以使采集到的待处理图像中均完整清晰的包含整块第一标定板。
S305,对待处理图像进行去畸变处理。
本步骤中,根据相机内参和畸变参数对待处理图像进行去畸变处理。可选地,根据相机内参和畸变参数对待处理图像进行去畸变处理。具体地,将可能存在畸变的图像坐标经过畸变参数变换,投影到无畸变的图像坐标系下,得到无畸变的图像。去畸变的具体过程如下:
r=x2+y2,
x′=x×(1+k1×r+k2×r2+k3×r3)+2×p1×x×y+p2×(r+2×x2),
y′=y×(1+k1×r+k2×r2+k3×r3)+2×p1×x×y+p2×(r+2×y2),
其中,u0和v0是图像采集设备的摄像头的中心点位置,u和v表示待处理图像上任意数据点的像素坐标,r为归一像素半径的平方,x和y是归一化像素坐标。
S306,计算图像采集设备相对于第一标定板的第一旋转参数和第一平移参数。
这里,首先在至少一个待处理图像中提取第一标定板的角点,其次,分别获取第一标定板的角点在图像坐标系下的第一像素坐标和第一三维坐标,最后,基于相机内参,第一像素坐标和第一三维坐标,计算图像采集设备相对于第一标定板的位置的第一旋转参数和第一平移参数。
可选地,在去畸变后的待处理图像中检测第一标定板的角点。可以通过计算待处理图像上每个像素的梯度得到梯度图,然后对梯度图做聚类处理得到感兴趣的线段并进行亚像素处理,以检测四边形并提取四边形的中心作为角点。进一步地,获取至少一个角点的第一像素坐标和第一三维坐标。其中,第一像素坐标是待处理图像中的每个角点的二维像素坐标,第一三维坐标是每个角点在标定板坐标系下的三维坐标。由于第一标定板的每个角点之间的物理尺寸是已知的,可以根据至少一个角点的第一像素坐标和第一三维坐标,通过PNP优化求解得到第一标定板在图像采集设备的相机坐标系下的第一旋转参数和第一平移参数。具体的计算过程为如下所示的公式:
其中,(xc,yc)是图像坐标系下的角点的第一像素坐标,(Xw,Yw,Zw)是标定板坐标系下的第一三维坐标,R1为第一标定板在图像采集设备的相机坐标系下的第一旋转参数,t1为第一标定板在图像采集设备的相机坐标系下的第一平移参数。
S307,基于第一旋转参数和第一平移参数,计算第一标定板在相机坐标系下的平面方程。
本步骤中,基于第一旋转参数和第一平移参数,计算每个第一标定板的角点在相机坐标系下的三维坐标。进一步地,根据多个三维坐标生成第一标定板在相机坐标系下的拟合平面,并计算拟合平面的平面方程。可选地,基于在采集的每张待处理图像上提取的各个角点之间的物理关系,以及第一旋转参数和第一平移参数,对采集到的各个角点进行变换,计算得出每个角点在相机坐标系下的三维坐标。可选地,若在图像坐标系下各个角点的物理坐标是(xi,yi),则对各个角点进行变换,生成在相机坐标系下的三维坐标,具体计算公式如下:
其中,(xci,yci,zci)是各个角点在相机坐标系下的三维坐标。进一步地,各个角点的三维坐标可能在第一标定板的平面上分布,可以基于奇异值分解(Singular ValueDecomposition,SVD)生成较为精确的平面方程Ax+By+Cz+D=0,其中,A,B,C是平面方程的法线向量的三轴坐标,D是坐标系原点到拟合平面的距离。
S308,计算平面方程在相机坐标系下的偏转角度。
本步骤中,在获取到第一标定板的拟合平面的平面方程后,基于平面方程可以分解得到图像采集设备的相机坐标系下的X,Y,Z三个轴相对于第一标定板的旋转角度。通过平面方程Ax+By+Cz+D=0,可以计算图像采集设备在相机坐标下Y轴的偏转角的计算公式为:
其中,M_PI为圆周率。相似的,可以计算图像采集设备在相机坐标X轴的偏转角的计算公式为:
相似的,可以计算图像采集设备在相机坐标X轴的偏转角的计算公式为:
通过上述公式,可以获取Y轴相对于第一标定板的旋转角度为β。
S309,旋转轴带动图像采集设备旋转至第一采样位置采集第一采样图像。
本步骤中,第一采样位置为旋转轴带动图像采集顺时针旋转预设角度后的位置,图像采集设备在第一采样位置可以采集到完整的第一标定板的第一采样图像。如控制电机顺时针旋转,使图像采集设备处于第一标定板左侧15°位置,此时电机需要旋转的角度是360°-β-15°,此时的位置为第一采样位置。
另外,在采集第一采样图像时,可以跳过开始采集到的部分帧的第一采样图像,如舍弃开始采集到的10帧第一采样图像,从第11帧开始保存为第一采样图像,以使采集到的第一采样图像中均完整清晰的包含整块第一标定板。
S310,旋转轴带动图像采集设备旋转至第二采样位置采集第二采样图像。
本步骤中,与步骤S309相似的,第二采样位置为与第一采样位置对称的位置,图像采集设备在第二采样位置可以采集到完整的第一标定板的第二采样图像。其中,第一采样位置和第二采样位置之间形成的夹角为旋转轴带动图像采集设备采集到包含完整的第一标定板的最大旋转范围。第一采样位置和第二采样位置保持对称,以及在两个位置形成的夹角之间各个位置中图像采集设备均可以采集到包含完整的第一标定板的采样图像。第一采样位置和第二采样位置之间形成的夹角越大,图像采集设备与旋转轴之间的姿态标定参数越准确。
另外,在采集第二采样图像时,可以跳过开始采集到的部分帧的第二采样图像,如舍弃开始采集到的10帧第二采样图像,从第11帧开始保存为第二采样图像,以使采集到的第二采样图像中均完整清晰的包含整块第一标定板。
S311,对第一采样图像进行去畸变处理。
这里,对第一采样图像进行去畸变处理的具体步骤如步骤S305类似,此处不再赘述。
S312,对第二采样图像进行去畸变处理。
这里,对第二采样图像进行去畸变处理的具体步骤如步骤S305类似,此处不再赘述。
S313,计算图像采集设备在第一采样位置时相对于第一标定板的第二旋转参数和第二平移参数。
这里,首先在至少一个第一采样图像中提取第一标定板中的第一角点,其次,分别获取第一标定板的第一角点在图像坐标系下的第二像素坐标和第二三维坐标,最后,基于相机内参,第二像素坐标和第二三维坐标,计算在第一采样位置时,图像采集设备与第一标定板的相对姿态的第二旋转参数和第二平移参数。
可选地,在去畸变后的第一采样图像中检测第一标定板的第一角点。可以通过计算第一采样图像上每个像素的梯度得到梯度图,然后对梯度图做聚类处理得到感兴趣的线段并进行亚像素处理,以检测四边形并提取四边形的中心作为角点。进一步地,获取至少一个第一角点的第二像素坐标和第二三维坐标。其中,第二像素坐标是第一采样图像中的每个第一角点的二维像素坐标,第二三维坐标是每个第一角点在标定板坐标系下的三维坐标。由于第一标定板的每个第一角点之间的物理尺寸是已知的,可以根据至少一个第一角点的第二像素坐标和第二三维坐标,通过PNP优化求解得到第一标定板在图像采集设备的相机坐标系下的第二旋转参数和第二平移参数。具体的计算过程为如下所示的公式:
其中,(xc1,yc1)是图像坐标系下的第一角点的第二像素坐标,(Xw1,Yw1,Zw1)是标定板坐标系下的第二三维坐标,R2为第一标定板在图像采集设备的相机坐标系下的第二旋转参数,t2为第一标定板在图像采集设备的相机坐标系下的第二平移参数。
S314,计算图像采集设备在第二采样位置时相对于第一标定板的第三旋转参数和第三平移参数。
这里,首先在至少一个第二采样图像中提取第一标定板中的第二角点,其次,分别获取第一标定板的第二角点在图像坐标系下的第三像素坐标和第三三维坐标,最后,基于相机内参,第三像素坐标和第三三维坐标,计算在第二采样位置时,图像采集设备与第一标定板的相对姿态的第三旋转参数和第三平移参数。与步骤S313计算图采集设备在第一采样位置时相对于第一标定板的第二旋转参数和第二平移参数类似的,第三旋转参数和第三平移参数的具体的计算过程为如下所示的公式:
其中,(xc2,yc2)是图像坐标系下的第二角点的第三像素坐标,(Xw2,Yw2,Zw2)是标定板坐标系下的第三三维坐标,R3为第一标定板在图像采集设备的相机坐标系下的第三旋转参数,t3为第一标定板在图像采集设备的相机坐标系下的第三平移参数。
S315,计算在第一采样位置时的图像采集设备与在第二采样位置时的图像采集设备之间相对姿态的第四旋转参数和第四平移参数。
本步骤中,基于第二旋转参数、第三旋转参数、第二平移参数和第三平移参数,计算在第一采样位置的图像采集设备和在第二采样位置的图像采集设备之间相对姿态的第四旋转参数和第四平移参数。可选地,通过前述计算出的第二旋转参数R2、第三旋转参数R3、第二平移参数t2和第三平移参数t3,计算在第一采样位置时的图像采集设备与在第二采样位置时的图像采集设备之间相对姿态的第四旋转参数和第四平移参数。具体的,在第一采样位置时的图像采集设备的变换矩阵为T2=[R2 t2],在第二采样位置时的图像采集设备的变换矩阵为T3=[R3 t3],第四旋转参数为R32=R2×R3.inverse(),第四平移参数为T32=T2-R32×T3。
S316,计算图像采集设备与旋转轴的姿态标定参数。
这里,基于第四旋转参数和第四平移参数,计算图像采集设备与旋转轴的姿态标定参数,其中,姿态标定参数包括对旋转轴与图像采集设备的旋转角度和旋转向量,和旋转轴在相机坐标系下的平移向量。可选地,基于罗德里格旋转公式(Rodrigues'rotationformula)的逆变换得到第四旋转参数的旋转角度和旋转向量,具体的计算公式如下:
其中,生成旋转轴相对于图像采集设备的旋转向量rx,ry,rz,,θ是旋转角度。
进一步地,旋转轴在相机坐标系下的平移向量的计算方式为:
其中,该公式的分子部分表示T32的(PI/θ)幂次方
S317,根据第四平移参数和相机内参,将第一采样图像中的第一角点的三维坐标投影至第二采样图像中,计算重投影后的第一角点与对应的第二角点的像素坐标的第一像素偏移量,以及,将第二采样图像中的第二角点的三维坐标投影至第一采样图像中,计算重投影后的第二角点与对应的第以角点的像素坐标的第二像素偏移量。
这里,按照第四平移参数和相机内参,将第一采样图像calib_img_a中的各个第一角点的坐标进行变换,并投影至第二采样图像calib_img_b对应的相机坐标系中,生成在第二采样图像calib_img_b中的重投影坐标(xia_b,yia_b)。可选地,根据第四平移参数和相机内参,将进行去畸变处理后的第一采样图像calib_img_a和第二采样图像calib_img_b进行像素点对齐,并将第一采样图像calib_img_a投影在第二采样图像calib_img_b上,计算生成的重投影坐标(xia_b,yia_b)与第二采样图像上的第二角点(xib,yib)的第一像素偏移量。相似地,将第二采样图像中的第二角点的三维坐标投影至第一采样图像中,计算重投影后的第二角点与对应的第以角点的像素坐标的第二像素偏移量。进一步地,计算第一像素偏移量和第二像素偏移量的均值。
S318,根据第一像素偏移量和第二像素偏移量的均值,判断图像采集设备与旋转轴的姿态标定参数的误差是否在预设阈值内。
这里,预设阈值可以根据经验值确定,本申请实施例中的预设阈值的较佳值为0.1个像素值。
S319,将大于预设阈值的第一像素偏移量和第二像素偏移量的均值对应的第四旋转参数和第四平移参数删除。
这里,当重投影误差不满足第二预设阈值时,将对应的第二姿态标定参数删除,并重新执行步骤是304至步骤S318,直至第一像素偏移量和第二像素偏移量的均值满足预设阈值。
S320,小于预设阈值时,则确定标定成功。
本申请基于上述步骤实现上述一种对旋转轴进行标定的方法。在接收到标定命令后,图像采集设备采集待处理图像并计算相对于第一标定板的偏转角度,根据偏转角度控制图像采集设备分别在第一采样位置和第二采样位置分别采集第一采样图像和第二采样图像,计算两个位置相对于第一标定板的旋转参数和平移参数,并进一步计算得到旋转轴与图像采集设备的相对姿态的旋转向量和平移向量,最后通过重投影误差衡量标定结果是否精确。
基于同一发明构思,本申请实施例500还提供一种对旋转轴进行标定的装置,其中,如图5所示,该装置包括:
第一采集模块501,用于图像采集设备采集包含第一标定板的待处理图像;
第一计算模块502,用于基于待处理图像,计算图像采集设备的位置相对于第一标定板的位置的偏转角度;
第二采集模块503,用于根据偏转角度,旋转轴带动图像采集设备分别旋转至第一采样位置和第二采样位置,并在第一采样位置采集第一采样图像,以及在第二采样位置采集第二采样图像,其中,第一采样位置和第二采样位置之间形成的夹角为旋转轴带动图像采集设备采集到包含完整的第一标定板的最大旋转范围;
第二计算模块504,用于根据第一采样图像和第二采样图像,计算图像采集设备与旋转轴的姿态标定参数,并根据姿态标定参数调整图像采集设备与旋转轴的相对姿态。
本实施例中,第一采集模块501、第一计算模块502、第二采集模块503和第二计算模块504的具体功能和交互方式,可参见图1对应的实施例的记载,在此不再赘述。
可选地,该装置还包括:
选取模块505,用于选取至少一个第三采样位置;
第三采集模块506,用于图像采集设备分别在至少一个第三采样位置上采集包含第二标定板的第三采样图像;
第三计算模块507,用于提取第三采样图像中的角点,并基于第三采样图像中的角点的图像坐标,计算图像采集设备的相机内参和畸变参数。
可选地,该装置还包括:
去畸变模块508,用于基于图像采集设备的相机内参和畸变参数,分别对待处理图像、第一采样图像和第二采样图像进行去畸变处理。
可选地,第一计算模块502包括:
第一计算单元,用于计算图像采集设备相对于第一标定板的第一旋转参数和第一平移参数;
第二计算单元,用于基于第一旋转参数和第一平移参数,计算第一标定板在相机坐标系下的平面方程;
第三计算单元,用于计算平面方程在所述相机坐标系下的偏转角。
可选地,第一计算单元包括:
第一提取子单元,用于在至少一个待处理图像中提取第一标定板的角点;
第一获取子单元,用于分别获取第一标定板的角点在图像坐标系下的第一像素坐标和第一三维坐标;
第一计算子单元,用于基于相机内参,第一像素坐标和第一三维坐标,计算图像采集设备相对于第一标定板的位置的第一旋转参数和第一平移参数。
可选地,第二计算单元包括:
第二计算子单元,用于基于第一旋转参数和第一平移参数,计算每个第一标定板的角点在相机坐标系下的三维坐标;
第三计算子单元,用于根据多个三维坐标生成第一标定板在相机坐标系下的拟合平面,并基于拟合平面,计算第一标定板在相机坐标系下的平面方程。
可选地,第二计算模块504包括:
第四计算单元,用于分别计算图像采集设备在第一采样位置时相对于第一标定板的第二旋转参数和第二平移参数,以及,图像采集设备在第二采样位置时相对于第一标定板的第三旋转参数和第三平移参数;
第五计算单元,用于基于第二旋转参数、第三旋转参数、第二平移参数和第三平移参数,计算在第一采样位置的图像采集设备和在第二采样位置的图像采集设备之间相对姿态的第四旋转参数和第四平移参数;
第六计算单元,用于基于第四旋转参数和第四平移参数,计算图像采集设备与旋转轴的姿态标定参数,其中,姿态标定参数包括对旋转轴与图像采集设备的旋转角度和旋转向量,和旋转轴在相机坐标系下的平移向量。
可选地,第四计算单元包括:
第二计算子单元,用于在第一采样图像中提取第一角点,以及在第二采样图像中提取第二角点;
第二获取子单元,用于获取第一角点在图像坐标系下的第二像素坐标和第二三维坐标,以及第二角点在图像坐标系下的第三像素坐标和第三三维坐标;
第四计算子单元,用于基于相机内参,第二像素坐标和第二三维坐标,计算图像采集设备在第一采样位置时相对于第一标定板的第二旋转参数和第二平移参数,以及,基于相机内参,第三像素坐标和第三三维坐标,计算图像采集设备在第二采样位置时相对于第一标定板的位置的第三旋转参数和第三平移参数。
如图6所示,本申请的又一实施例600还提供一种终端设备,包括处理器601,其中,处理器601用于执行上述一种对旋转轴进行标定的方法的步骤。从图6中还可以看出,上述实施例提供的终端设备还包括非瞬时计算机可读存储介质602,该非瞬时计算机可读存储介质602上存储有计算机程序,该计算机程序被处理器601运行时执行上述一种对旋转轴进行标定的方法的步骤。实际应用中,该终端设备可以是一台或多台计算机,只要包括上述计算机可读介质和处理器即可。
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘和FLASH等,该存储介质上的计算机程序被运行时,能够执行上述的一种对旋转轴进行标定的方法中的各个步骤。实际应用中,所述的计算机可读介质可以是上述实施例中描述的设备/装置/系统中所包含的,也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或多个程序被执行时,能够执行上述的一种对旋转轴进行标定的方法中的各个步骤。
根据本申请公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件,或者上述的任意合适的组合,但不用于限制本申请保护的范围。在本申请公开的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
本申请附图中的流程图和框图,示出了按照本申请公开的各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或者代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应该注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同附图中所标准的顺序发生。例如,两个连接地表示的方框实际上可以基本并行地执行,它们有时也可以按照相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或者流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本申请中。特别地,在不脱离本申请精神和教导的情况下,本申请的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,所有这些组合和/或结合均落入本申请公开的范围。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。