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

一种相机标定的方法、装置、电子设备及存储介质

文献发布时间:2023-06-19 18:37:28


一种相机标定的方法、装置、电子设备及存储介质

技术领域

本申请涉及计算机图像技术领域,特别是涉及一种相机标定的方法、装置、电子设备及存储介质。

背景技术

为了应对企业生产的需求,相关企业可以应用相机与运动机构结合的方式完成生产任务;在相机与运动机构的结合的方式中,相关企业通常应用相机标定技术来做预处理,通过相机标定过程得到的标定结果,可以在企业生产过程中,利用相机的图像,针对运动机构进行定位引导。

相关技术中,在相机标定过程中,运动机构的末端执行器除了多次指定平行移动以使得标定物在相机视场内进行多次平行移动,还需要进行旋转移动,并基于旋转移动所得到的标定物的像素坐标以及末端执行器在物理坐标系下的物理坐标,拟合处理得到机构旋转中心,并利用机构旋转中心进行标定结果的确定。

然而,当标定物在相机视场的运动范围与实际生产中待控产品在相机视场的运动范围的比值较小时,可以认为相机标定过程处于小视场环境下,例如,在标定物在相机视场的运动范围只有待控产品在相机视场的运动范围的五分之一的情况下,可以认为相机标定过程处于小视场环境下。此时,由于标定物在相机视场的运动范围较小,这样标定物在相机视场内只能旋转较小的角度,从而,在拟合机构旋转中心时,可能对物理坐标或像素坐标的极小误差很敏感,从而导致拟合得到的机构旋转中心不稳定,求取得到的标定结果误差大,也就是,相机标定的精度低。

可见,如何在小视场环境下,提高相机标定的精度,是一个亟待解决的问题。

发明内容

本申请实施例的目的在于提供一种相机标定的方法、装置、电子设备及存储介质,以实现在小视场环境下,提高相机标定的精度。具体技术方案如下:

第一方面,本申请实施例提供了一种相机标定的方法,应用于控制设备,所述方法包括:

基于对运动机构的末端执行器进行多次指定平行移动的方式,构建相机对应的平移标定矩阵;其中,所述多次指定平行移动使得标定物在所述相机的视场内进行多次平行移动;

控制所述末端执行器进行多次旋转移动以使得所述末端执行器到达多个第一辅助位置;其中,所述第一辅助位置为使得所述标定物位于所述相机的视场外的位置;

在每次达到第一辅助位置时,控制所述末端执行器进行平行移动,以将所述末端执行器移动到第二辅助位置,以及控制所述相机在所述末端执行器移动至每个第二辅助位置时进行拍照,得到包含所述标定物的辅助图像;其中,所述第二辅助位置为使得所述标定物位于所述相机的视场内的位置;

利用各个辅助图像中的关于所述标定物的像素坐标、所述末端执行器位于各个第一辅助位置和第二辅助位置的物理坐标,以及所述平移标定矩阵,确定多个虚拟坐标;其中,所述虚拟坐标为所述末端执行器位于所述第一辅助位置时、所述标定物在相机坐标系下的像素坐标;

对所述多个虚拟坐标以及所述末端执行器位于各个第一辅助位置的物理坐标进行关于旋转中心的拟合处理,得到机构旋转中心;

利用所述机构旋转中心以及所述平移标定矩阵,确定所述相机对应的标定结果。

可选的,所述利用各个辅助图像中的关于所述标定物的像素坐标、所述末端执行器位于各个第一辅助位置和第二辅助位置的物理坐标,以及所述平移标定矩阵,确定多个虚拟坐标,包括:

利用各个辅助图像中的关于所述标定物的像素坐标、所述末端执行器位于各个第一辅助位置和第二辅助位置的物理坐标,以及中间矩阵,确定多个虚拟坐标;其中,在相机静止的情况下,所述中间矩阵为所述平移标定矩阵,在相机运动的情况下,所述中间矩阵为对所述平移标定矩阵进行修正处理得到的广义标定矩阵,所述修正处理用于将所述平移标定矩阵转换为:表征旋转后的相机坐标系与物理坐标系之间的变换关系的广义标定矩阵,所述旋转后的相机坐标系为所述相机在跟随所述运动机构经过旋转移动后所形成的相机坐标系。

可选的,所述机构旋转中心包括:在相机坐标系下的像素旋转中心和在物理坐标系下的物理旋转中心;

所述利用所述机构旋转中心以及所述平移标定矩阵,确定所述相机对应的标定结果,包括:

利用所述像素旋转中心,对所述平移标定矩阵进行归一化处理,得到所述相机对应的标定结果;其中,所述归一化处理用于将所述平移标定矩阵转换为在将所述运动机构对应的物理坐标系的原点平移至所述物理旋转中心处时的矩阵。

可选的,所述利用各个辅助图像中的关于所述标定物的像素坐标、所述末端执行器位于各个第一辅助位置和第二辅助位置的物理坐标,以及中间矩阵,确定多个虚拟坐标,包括:

按照平移变换等式,利用各个辅助图像中的关于所述标定物的像素坐标、所述末端执行器位于各个第一辅助位置和第二辅助位置的物理坐标,以及中间矩阵,确定多个虚拟坐标;

其中,所述平移变换等式为基于平面欧式变换原理得到的等式、且用于表征所述辅助图像中的关于所述标定物的像素坐标、所述末端执行器位于所述第一辅助位置和第二辅助位置的物理坐标、所述中间矩阵以及所述虚拟坐标之间的变换关系。

可选的,所述平移变换等式在相机静止的情况下为:M*′-M*P=W

其中,M为作为所述中间矩阵的平移标定矩阵,P为所述辅助图像中的关于所述标定物的像素坐标,P′为所述虚拟坐标,W

可选的,所述对所述平移标定矩阵进行修正处理的方式,包括:

利用所述末端执行器进行旋转移动的旋转角度以及射影变换等式,对所述平移标定矩阵进行修正,得到广义标定矩阵;其中,所述射影变换等式为基于射影变换原理得到的等式、且用于表征所述末端执行器进行旋转移动的旋转角度、所述平移标定矩阵以及所述广义标定矩阵之间的变换关系。

可选的,所述射影变换等式为:

可选的,所述利用所述像素旋转中心,对所述平移标定矩阵进行归一化处理,包括:

利用等式M*C=0,将所述平移标定矩阵中的平移分量以所述像素旋转中心与所述末端执行器进行旋转移动的旋转角度进行表征;其中,为所述像素旋转中心的坐标,M为所述平移标定矩阵。

可选的,所述基于对运动机构的末端执行器进行多次指定平行移动的方式,构建相机对应的平移标定矩阵,包括:

控制运动机构的末端执行器进行多次指定平行移动以使得标定物在相机的视场内进行多次平行移动;

控制所述相机在所述末端执行器移动至每个目标位置时进行拍照,得到包含所述标定物的目标图像;

基于各个目标图像中的关于所述标定物的像素坐标,以及在物理坐标系下的、处于各个目标位置的所述末端执行器的物理坐标,生成平移标定矩阵。

第二方面,本申请实施例提供了一种相机标定的装置,所述装置包括:

构建模块,用于基于对运动机构的末端执行器进行多次指定平行移动的方式,构建相机对应的平移标定矩阵;其中,所述多次指定平行移动使得标定物在所述相机的视场内进行多次平行移动;

第一控制模块,用于控制所述末端执行器进行多次旋转移动以使得所述末端执行器到达多个第一辅助位置;其中,所述第一辅助位置为使得所述标定物位于所述相机的视场外的位置;

第二控制模块,用于在每次达到第一辅助位置时,控制所述末端执行器进行平行移动,以将所述末端执行器移动到第二辅助位置,以及控制所述相机在所述末端执行器移动至每个第二辅助位置时进行拍照,得到包含所述标定物的辅助图像;其中,所述第二辅助位置为使得所述标定物位于所述相机的视场内的位置;

第一确定模块,用于利用各个辅助图像中的关于所述标定物的像素坐标、所述末端执行器位于各个第一辅助位置和第二辅助位置的物理坐标,以及所述平移标定矩阵,确定多个虚拟坐标;其中,所述虚拟坐标为所述末端执行器位于所述第一辅助位置时、所述标定物在相机坐标系下的像素坐标;

拟合模块,用于对所述多个虚拟坐标以及所述末端执行器位于各个第一辅助位置的物理坐标进行关于旋转中心的拟合处理,得到机构旋转中心;

第二确定模块,用于利用所述机构旋转中心以及所述平移标定矩阵,确定所述相机对应的标定结果。

本申请实施例还提供了一种电子设备,包括:

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现相机标定的方法。

本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现相机标定的方法。

本申请实施例有益效果:

本申请实施例提供的一种相机标定的方法,可以基于对运动机构的末端执行器进行多次指定平行移动的方式,构建相机对应的平移标定矩阵;其中,多次指定平行移动可以使得标定物在相机视场内进行多次平行移动;然后控制末端执行器进行多次旋转移动以使得末端执行器到达多个使得标定物位于相机的视场外的第一辅助位置;在每次达到第一辅助位置时,控制末端执行器进行平行移动,以将末端执行器移动到使得标定物位于相机的视场内的第二辅助位置,并控制相机在末端执行器移动至每个第二辅助位置时进行拍照,得到包含标定物的辅助图像;再然后可以利用各个辅助图像中的关于标定物的像素坐标、末端执行器位于各个第一辅助位置和第二辅助位置的物理坐标,以及前述构建的平移标定矩阵,确定多个虚拟坐标;其中,虚拟坐标为末端执行器位于第一辅助位置时、标定物在相机坐标系下的像素坐标;然后可以对多个虚拟坐标以及多个第一辅助位置的物理坐标进行关于旋转中心的拟合处理,得到机构旋转中心;利用前述得到的机构旋转中心以及构建好的平移标定矩阵,可以确定相机对应的标定结果。

基于上述方案,末端执行器经过旋转移动后,到达使得标定物位于相机的视场外的多个第一辅助位置,并且,确定末端执行器位于每一第一辅助位置时、标定物在相机坐标系下的像素坐标,即虚拟坐标,然后,对多个虚拟坐标以及末端执行器位于各个第一辅助位置的物理坐标进行关于旋转中心的拟合处理,得到机构旋转中心,这样使得在拟合机构旋转中心的过程中,标定物的像素坐标可以包括相机的视场外的像素坐标,末端执行器的物理坐标可以包括第一辅助位置的物理坐标,相当于扩大了相机的视场。因此,通过本方案对像素坐标和物理坐标进行拟合处理,可以降低对物理坐标或像素坐标的误差的敏感度,得到的机构旋转中心稳定性有所提高,降低了标定结果的误差,提高了相机标定的精度。

当然,实施本申请的任一产品或方法并不一定需要同时达到以上所述的所有优点。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。

图1为在小视场环境存在扰动的情况下,传统标定方法拟合机构旋转中心的误差放大的原理示意图;

图2为本申请实施例提供的相机静止情况下的标定控制系统的结构示意图;

图3为本申请实施例提供的一种相机标定的方法的流程示意图;

图4为本申请实施例提供的一种相机标定的方法的流程示意图;

图5为本申请实施例提供的一种相机标定的方法的流程示意图;

图6为本申请实施例提供的一种相机标定的方法的流程示意图;

图7为本申请实施例提供的一种相机标定的装置的结构示意图;

图8为本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员基于本申请所获得的所有其他实施例,都属于本申请保护的范围。

为了方便理解方案,首先对本申请实施例所涉及的专业术语进行介绍。

欧氏变换:物体在经过平移与旋转变换的复合变换后,保持形状、大小不变,此类复合变换称为欧式变换;其中,经过平移与旋转变换的复合变换后,保持形状、大小不变的物体可以称为刚体。

相似变换:物体在经过欧式变换与均匀缩放变换的复合变换后,保持形状不变,但物体大小发生改变,此类复合变换称为相似变换。

仿射变换:物体在经过非奇异线性变换与平移变换的复合变换后,不再保持形状不变,但保持平行线依然平行,此类复合变换称为仿射变换。

射影变换:物体在经过任意两平面之间的投影变换后,只保持共线点的交比不变,此类变换称为射影变换;其中,任意两平面之间的投影变换也称为单应(homography)变换。

齐次线性变换:齐次向量间的线性变换称为齐次线性变换;其中,齐次向量可以是两个只相差一个非零全局缩放因子的向量。

标定:为确定空间物体表面某点的几何位置与其在图像中对应点之间的相互关系,建立相机成像的几何模型的过程;其中,这些几何模型参数可以是相机参数。在大多数条件下这些参数必须通过实验与计算才能得到,这个求解参数的过程就称之为相机标定。相机标定的目的是求解用于表征相机坐标系和属于运动机构的物理坐标系之间的变换关系的射影变换矩阵。

标定矩阵:标定的成果物为标定矩阵。

标定物:一种中介,可以用于完成标定,例如,标定板、物料等。

视场(FOV,Field angle Of View):相机下看到的视场内所能容纳物体的实际范围。

扰动:标定过程中,由于运动机构的定位精度、图像成像质量以及特征点提取的定位精度均会存在系统误差或噪声,由此引入的偏差称为扰动偏差。

eye-in-hand:眼在手上,指相机安装在运动机构上跟随运动机构运动,因此,eye-in-hand也可以称为相机运动。

eye-to-hand:眼在手外,指相机安装在运功机构外,保持静止状态,因此,eye-to-hand也可以称为相机静止。

旋转中心:运动机构旋转时的旋转轴中心。

为了更好地了解本申请实施例,下面将对现有技术进行介绍。

相关技术中,在运动机构移动过程中,标定物可以在相机视场内进行多次平行移动和旋转移动,同时,相机采集包含标定物的多个图像,得到多组匹配的物理点集和图像点集,其中,物理点集可以包括多个属于运动机构的末端执行器在物理坐标系下的物理坐标,图像点集可以包括多个标定物在所采集图像中的像素坐标;然后,基于多组物理坐标以及像素坐标,利用非线性优化方法求取使重投影误差最小的关于相机坐标系与物理坐标系之间的对应关系,从而求得初始单应矩阵;再然后,对多组物理坐标以及像素坐标进行拟合处理得到机构旋转中心,并基于机构旋转中心,对初始单应矩阵进行归一化处理,从而得到标定矩阵,即标定结果。

然而,在小视场环境下,标定物在相机视场的运动范围较小,这样标定物在相机视场内只能旋转较小的角度,从而,在拟合机构旋转中心时,可能对物理坐标或像素坐标的极小误差很敏感,从而导致拟合得到的机构旋转中心不稳定,求取得到的标定结果误差大,也就是,相机标定的精度低。

示例性的,图1为在小视场环境存在扰动的情况下,传统标定方法拟合机构旋转中心的误差放大的原理示意图。如图1所示,A=(1420.09,988.88),B=(1115.86,973.64),C=(803.56,985.45),D=(1420.29,988.67),E=(1115.66,973.14),F=(803.76,985.35),c:(x-1092.35)

可见,如何在小视场环境下,提高相机标定的精度,是一个亟待解决的问题。

为了实现在小视场环境下,提高相机标定的精度,本申请实施例提供了一种相机标定的方法、装置、电子设备及存储介质。

下面首先对本申请实施例所提供的一种相机标定的方法进行介绍。

其中,本申请实施例所提供的一种相机标定的方法可以应用于控制设备。在具体应用过程中,控制设备、相机和运动机构可以构成一个标定控制系统。其中,相机可以用于对标定物进行拍照处理、并向控制设备发送包含标定物的图像,运动机构可以进行平行移动和旋转移动、以使属于运动机构的末端执行器到达指定位置,控制设备可以控制运动机构运动以及相机拍照、接收相机发送的图像、获取末端执行器的位置,并基于所获取的内容,实现标定结果的确定。

为了更好的理解相机标定系统,结合图2进行示例性说明:针对相机静止的情况,如图2所示,相机1固定在运动机构以外的位置,运动机构的吸嘴4可以与标定物2相连接,即吸嘴吸取标定物2,吸嘴4与法兰3连接。在具体应用中,在运动机构默认的物理坐标系下,通常是将法兰3的物理坐标作为末端执行器的物理坐标;在另一种情况下,运动机构可以设置工具(Tool Center Point,TCP)坐标系,将吸嘴4的物理坐标作为末端执行器的物理坐标;在上述两种情况下都可以获取末端执行器的物理坐标;具体的,相机1可以用于对标定物2进行拍照处理、并向控制设备发送包含标定物2的图像;控制设备可以通过控制法兰3与吸嘴4移动,带动标定物2移动;控制设备还可以控制相机1拍照、接收相机1发送的图像、获取末端执行器在物理坐标系下的物理坐标、并基于所获取的内容,实现标定结果的确定。

其中,本申请实施例提供的一种相机标定的方法,可以包括如下步骤:

基于对运动机构的末端执行器进行多次指定平行移动的方式,构建相机对应的平移标定矩阵;其中,所述多次指定平行移动使得标定物在所述相机的视场内进行多次平行移动;

控制所述末端执行器进行多次旋转移动以使得所述末端执行器到达多个第一辅助位置;其中,所述第一辅助位置为使得所述标定物位于所述相机的视场外的位置;

在每次达到第一辅助位置时,控制所述末端执行器进行平行移动,以将所述末端执行器移动到第二辅助位置,以及控制所述相机在所述末端执行器移动至每个第二辅助位置时进行拍照,得到包含所述标定物的辅助图像;其中,所述第二辅助位置为使得所述标定物位于所述相机的视场内的位置;

利用各个辅助图像中的关于所述标定物的像素坐标、所述末端执行器位于各个第一辅助位置和第二辅助位置的物理坐标,以及所述平移标定矩阵,确定多个虚拟坐标;其中,所述虚拟坐标为所述末端执行器位于所述第一辅助位置时、所述标定物在相机坐标系下的像素坐标;

对所述多个虚拟坐标以及所述末端执行器位于各个第一辅助位置的物理坐标进行关于旋转中心的拟合处理,得到机构旋转中心;

利用所述机构旋转中心以及所述平移标定矩阵,确定所述相机对应的标定结果。

基于上述方案,末端执行器经过旋转移动后,到达使得标定物位于相机的视场外的多个第一辅助位置,并且,确定末端执行器位于每一第一辅助位置时、标定物在相机坐标系下的像素坐标,即虚拟坐标,然后,对多个虚拟坐标以及末端执行器位于各个第一辅助位置的物理坐标进行关于旋转中心的拟合处理,得到机构旋转中心,这样使得在拟合机构旋转中心的过程中,标定物的像素坐标可以包括相机的视场外的像素坐标,末端执行器的物理坐标可以包括第一辅助位置的物理坐标,相当于扩大了相机的视场。因此,通过本方案对像素坐标和物理坐标进行拟合处理,可以降低对物理坐标或像素坐标的误差的敏感度,得到的机构旋转中心稳定性有所提高,降低了标定结果的误差,提高了相机标定的精度。

下面结合附图介绍本申请实施例所提供的一种相机标定的方法。

图3为本申请实施例提供的一种相机标定的方法的流程示意图,如图3所示,该方法可以包括步骤S301-S306:

S301,基于对运动机构的末端执行器进行多次指定平行移动的方式,构建相机对应的平移标定矩阵;其中,所述多次指定平行移动使得标定物在所述相机的视场内进行多次平行移动。

可以理解的是,控制设备可以在保证标定物处于相机视场内的情况下,控制运动机构的末端执行器进行多次平行移动,此时,标定物也可以在相机视场内进行多次平行移动;而经过每次平行移动后,控制设备可以获取末端执行器的多个物理坐标与标定物的多个像素坐标,通过物理坐标与像素坐标的对应关系,可以构建相机对应的、用于表征相机坐标系与物理坐标系之间变换关系的矩阵,也就是平移标定矩阵。

其中,标定物可以是用于确定像素坐标与物理坐标之间的转换关系的中介,例如,标定物可以是棋盘格标定板、二维码标定板、物料等,本申请实施例对标定物的具体形式不做限定。

在一种实现方式中,所述基于对运动机构的末端执行器进行多次指定平行移动的方式,构建相机对应的平移标定矩阵,可以包括步骤A1-A3:

A1,控制运动机构的末端执行器进行多次指定平行移动以使得标定物在相机的视场内进行多次平行移动。

可以理解的是,控制设备可以向运动机构发送控制信号,以控制运动机构的末端执行器进行多次指定平行移动;其中,多次指定平行移动可以是末端执行器进行的至少四次以上的、且移动后任意三个位置不共线的平行移动,且每次平移移动后都可以保证标定物处于相机视场内。

需要说明的是,在控制设备的控制下,标定物可以在相机视场内进行多次平行移动,且每次平行移动可以是按照固定距离进行的位移,当然每次平行移动的距离也可以不相同,这也是合理的。对于标定物的具体平行移动形式,本申请实施例不做限定。

A2,控制所述相机在所述末端执行器移动至每个目标位置时进行拍照,得到包含所述标定物的目标图像。

可以理解的是,控制设备可以控制相机在每次平行移动至目标位置后,对标定物进行拍照处理,并获取相机拍得的图像。

其中,各个目标位置可以是末端执行器在三维世界里的位置,具体表现形式可以是一个三维坐标,然而,在标定过程中,末端执行器只进行了平行移动,也就是末端执行器在三维世界中的某一维可以是固定的,因此,末端执行器的物理坐标可以是二维坐标。

需要说明的是,每次末端执行器移动至目标位置时,标定物可以是在相机视场内,移动固定距离到达对应目标位置的位置;其中,固定距离可以是处于同一平面的属于前、后、左、右的方向上的位移,例如,在(x,y)二维坐标系的平面上,将某一标定物沿x轴正方向移动一个单位距离,该一个单位距离可以称为固定距离。因此,得到的包含标定物的目标图像中,可以包括表征标定物在相机坐标系下的像素坐标;另外,来自于目标图像的像素坐标可以是一个二维图像的点的坐标,因此,标定物的像素坐标可以是二维坐标。

针对标定物的像素坐标的确定,可以在标定物上选定存在于物理空间的特征点作为锚点,以在图像中定位标定物,当获取各个目标图像后,可以在包含标定物的特征点的各个目标图像中,确定图像中的特征点作为图像点,将图像点的坐标作为标定物的像素坐标;同时,为了可以获取完整准确的像素坐标,被选取的图像点可以是像素清晰、坐标值确定的图像中的点。

A3,基于各个目标图像中的关于所述标定物的像素坐标,以及在物理坐标系下的、处于各个目标位置的所述末端执行器的物理坐标,生成平移标定矩阵。

可以理解的是,控制设备可以控制末端执行器进行已知位移的移动,因此,在物理坐标系下,控制设备可以获取末端执行器的物理坐标;通过末端执行器的物理坐标与目标图像中的像素坐标的对应关系,可以构建相机对应的、用于表征相机坐标系与物理坐标系之间变换关系的矩阵,也就是平移标定矩阵。

具体的,平移标定矩阵的生成,可以基于仿射变换的原理,找到标定物的像素坐标与末端执行器的物理坐标之间的变换关系,从而可以确定像素坐标所在的像素坐标系与物理坐标所在的物理坐标系的变换关系,该变换关系可以是矩阵的形式,也就是平移变换矩阵。本申请对于平移标定矩阵的生成方式并不做限定,任何一种平移标定矩阵的生成方式均可以应用于本申请。

S302,控制所述末端执行器进行多次旋转移动以使得所述末端执行器到达多个第一辅助位置;其中,所述第一辅助位置为使得所述标定物位于所述相机的视场外的位置。

可以理解的是,运动机构的末端执行器可以在末端执行器的移动范围内,被控制设备控制进行多次旋转移动,经过旋转移动后,末端执行器可以到达第一辅助位置,标定物可以到达相机视场外的位置,而在相机视场外的位置处,相机无法对标定物进行拍照,因此,当末端执行器位于第一辅助位置时,可以获取末端执行器的物理坐标,但无法直接获取标定物的像素坐标;其中,末端执行器进行旋转移动的旋转角度可以是在运动机构移动范围的合理数值。

需要说明的是,在一次旋转移动过程中,末端执行器进行旋转移动的旋转方向可以是顺时针旋转或者是逆时针旋转,而在进行下一次旋转移动时,可以是与上一次相反方向的旋转移动,也可以是与上一次相同方向的旋转移动,对此本申请实施例不做具体限定。

S303,在每次达到第一辅助位置时,控制所述末端执行器进行平行移动,以将所述末端执行器移动到第二辅助位置,以及控制所述相机在所述末端执行器移动至每个第二辅助位置时进行拍照,得到包含所述标定物的辅助图像;其中,所述第二辅助位置为使得所述标定物位于所述相机的视场内的位置。

可以理解的是,控制设备可以控制末端执行器从第一辅助位置平行移动至第二辅助位置,每次末端执行器到达第二辅助位置时,控制设备都可以控制相机进行拍照;由于,末端执行器位于第二辅助位置时,标定物处于相机视场内,此时,相机进行拍照处理,可以得到包含标定物的辅助图像,将辅助图像中的标定物的特征点作为图像点,可以得到辅助图像中的标定物的像素坐标。

S304,利用各个辅助图像中的关于所述标定物的像素坐标、所述末端执行器位于各个第一辅助位置和第二辅助位置的物理坐标,以及所述平移标定矩阵,确定多个虚拟坐标;其中,所述虚拟坐标为所述末端执行器位于所述第一辅助位置时、所述标定物在相机坐标系下的像素坐标。

可以理解的是,在前述步骤中,可以获取各个辅助图像中的标定物的像素坐标、末端执行器位于第一辅助位置和第二辅助位置的物理坐标、平移标定矩阵;而每次从第一辅助位置到第二辅助位置的位移可以直接通过末端执行器位于第一辅助位置和第二辅助位置的物理坐标获取,也可以利用平移标定矩阵将标定物的像素坐标转换得到的末端执行器的物理坐标获取;因此,在各个辅助图像中的标定物的像素坐标、末端执行器位于第一辅助位置和第二辅助位置的物理坐标、平移标定矩阵都已知的情况下,可以获取末端执行器位于第一辅助位置时、标定物的像素坐标,也就是标定物位于视场外的虚拟坐标。

S305,对所述多个虚拟坐标以及所述末端执行器位于各个第一辅助位置的物理坐标进行关于旋转中心的拟合处理,得到机构旋转中心。

可以理解的是,关于旋转中心的拟合处理,可以通过多个点坐标拟合出一个圆,该圆的圆心即为旋转中心;若进行拟合处理的点坐标是多个虚拟坐标以及多个第一辅助位置的物理坐标,那么,得到的拟合圆的圆心可以是机构旋转中心。

S306,利用所述机构旋转中心以及所述平移标定矩阵,确定所述相机对应的标定结果。

可以理解的是,可以利用机构旋转中心将平移标定矩阵转换为:针对被标定相机的视场的、可以表征相机坐标系与物理坐标系之间的变换关系的目标矩阵,该目标矩阵可以作为标定结果。

在一种实现方式中,所述机构旋转中心包括:在相机坐标系下的像素旋转中心和在物理坐标系下的物理旋转中心。

可以理解的是,若进行拟合处理的点坐标是多个虚拟坐标,那么,得到的拟合圆的圆心可以是像素旋转中心;若进行拟合处理的点坐标是多个第一辅助位置的物理坐标,那么,得到的拟合圆的圆心可以是物理旋转中心。

其中,物理旋转中心可以作为标定结果的一部分,在生产过程中,对运动机构进行定位以及导航。

另外,所述利用所述机构旋转中心以及所述平移标定矩阵,确定所述相机对应的标定结果,可以包括步骤:

利用所述像素旋转中心,对所述平移标定矩阵进行归一化处理,得到所述相机对应的标定结果;其中,所述归一化处理用于将所述平移标定矩阵转换为在将所述运动机构对应的物理坐标系的原点平移至所述物理旋转中心处时的矩阵。

可以理解的是,可以通过归一化处理将像素旋转中心的坐标带入平移标定矩阵,此时,得到的矩阵可以作为针对被标定相机的视场的标定结果。

具体的,在一种实现方式中,所述利用所述像素旋转中心,对所述平移标定矩阵进行归一化处理,得到所述相机对应的标定结果,可以包括步骤:

利用等式M*C=0,将所述平移标定矩阵中的平移分量以所述像素旋转中心与所述末端执行器进行旋转移动的旋转角度进行表征;其中,C为所述像素旋转中心的坐标,M为所述平移标定矩阵。

可以理解的是,可以利用等式M*C=0,将平移标定过程中,末端执行器平行移动至目标位置的位移的数值,也就是,平移标定矩阵M中的平移量,用像素旋转中心的坐标以及末端执行器进行旋转移动的旋转角度进行表达,得到目标矩阵;其中,该目标矩阵可以作为被标定相机的视场的标定结果、且可以用于表征相机坐标系与物理坐标系之间的变换关系。

示例性的,若平移标定矩阵

从而,可以确定如下等式:

a+(CenterX*cosθ-CenterY*sinθ)=0,b+(CenterX*sinθ+CenterY*cosθ)=0;

因此,可以确定M矩阵中的平移量:

a=-(CenterX*cosθ-CenterY*sinθ),b=-(CenterX*sinθ+CenterY*cosθ);

将a,b的含参表达式带入M,可以得到目标矩阵:

需要说明的是,基于2D射影空间中的平移、旋转变换均属于齐次线性变换,本实施例涉及的矩阵处理包括但不限于:平移标定矩阵的构建、广义标定矩阵的获取以及目标标定矩阵的获取,都可以为关于齐次坐标运算的处理。

基于上述方案,末端执行器经过旋转移动后,到达使得标定物位于相机的视场外的多个第一辅助位置,并且,确定末端执行器位于每一第一辅助位置时、标定物在相机坐标系下的像素坐标,即虚拟坐标,然后,对多个虚拟坐标以及末端执行器位于各个第一辅助位置的物理坐标进行关于旋转中心的拟合处理,得到机构旋转中心,这样使得在拟合机构旋转中心的过程中,标定物的像素坐标可以包括相机的视场外的像素坐标,末端执行器的物理坐标可以包括第一辅助位置的物理坐标,相当于扩大了相机的视场。因此,通过本方案对像素坐标和物理坐标进行拟合处理,可以降低对物理坐标或像素坐标的误差的敏感度,得到的机构旋转中心稳定性有所提高,降低了标定结果的误差,提高了相机标定的精度。

另外,本实施例中,可以通过获取相机视场外的虚拟坐标,扩大标定物的像素坐标的范围,相当于扩大了相机视场,规避了小视场环境下扰动的影响,解决小视场扰动环境下标定误差放大的问题,实现小视场环境下的相机高精度标定。

另外,本实施例中,可以通过控制设备获取运动机构的物理坐标以及使用标定物的特征点定位标定物的像素坐标,以达到相机标定的目标,不依赖更高精度的运动机构或标定板,显著降低相机高精度标定的成本。

另外,本实施例中,可以在常规的相机标定过程中,增加少量步骤,以获取对应更大的拟合圆的各个坐标,操作流程简单,在算法复杂度几乎保持不变的同时,显著提升标定的稳健性。

另外,本实施例中,构建平移标定矩阵以及目标矩阵的过程中,可以使用二维的像素坐标以及物理坐标,因此,可以兼容各种二维场景的相机标定,可移植性更高。

另外,本实施例中,可以利用机构旋转中心对平移标定矩阵归一化,降低后续定位运算的复杂度,提高了标定结果的实用性。

可选的,在另一实施例中,在图3所示的相机标定的方法的基础上,所述利用各个辅助图像中的关于所述标定物的像素坐标、所述末端执行器位于各个第一辅助位置和第二辅助位置的物理坐标,以及所述平移标定矩阵,确定多个虚拟坐标,可以包括如下步骤:

利用各个辅助图像中的关于所述标定物的像素坐标、所述末端执行器位于各个第一辅助位置和第二辅助位置的物理坐标,以及中间矩阵,确定多个虚拟坐标;其中,在相机静止的情况下,所述中间矩阵为所述平移标定矩阵,在相机运动的情况下,所述中间矩阵为对所述平移标定矩阵进行修正处理得到的广义标定矩阵,所述修正处理用于将所述平移标定矩阵转换为:表征旋转后的相机坐标系与物理坐标系之间的变换关系的广义标定矩阵,所述旋转后的相机坐标系为所述相机在跟随所述运动机构经过旋转移动后所形成的相机坐标系。

可以理解的是,在相机静止的情况下,可以直接利用前述步骤获取到的各个辅助图像中的关于标定物的像素坐标、末端执行器位于各个第一辅助位置和第二辅助位置的物理坐标,以及平移标定矩阵,确定多个虚拟坐标;而在相机运动的情况下,可以利用前述步骤获取到的各个辅助图像中的关于标定物的像素坐标,以及末端执行器位于各个第一辅助位置和第二辅助位置的物理坐标,还有需要将平移标定矩阵进行修正处理后得到的广义标定矩阵,确定多个虚拟坐标。

针对中间矩阵,在一次相机标定过程中,可以有一个中间的矩阵作为中间矩阵;在相机静止的情况下,该中间矩阵可以为平移标定矩阵;而在相机运动的情况下,该中间矩阵可以为对平移标定矩阵进行修正处理得到的广义标定矩阵。

针对修正处理,可以将相机在跟随运动机构进行旋转移动的旋转角度带入平移标定矩阵,得到表征旋转后的相机坐标系与物理坐标系之间的变换关系的广义标定矩阵;其中,旋转角度可以是末端执行器进行旋转移动的旋转角度。

在一种实现方式中,所述利用各个辅助图像中的关于所述标定物的像素坐标、所述末端执行器位于各个第一辅助位置和第二辅助位置的物理坐标,以及中间矩阵,确定多个虚拟坐标,可以包括步骤:

按照平移变换等式,利用各个辅助图像中的关于所述标定物的像素坐标、所述末端执行器位于各个第一辅助位置和第二辅助位置的物理坐标,以及中间矩阵,确定多个虚拟坐标;其中,所述平移变换等式为基于平面欧式变换原理得到的等式、且用于表征所述辅助图像中的关于所述标定物的像素坐标、所述末端执行器位于所述第一辅助位置和第二辅助位置的物理坐标、所述中间矩阵以及所述虚拟坐标之间的变换关系。

可以理解的是,第一辅助位置到第二辅助位置的位移可以直接通过末端执行器位于第一辅助位置和第二辅助位置的物理坐标获取,也可以利用平移标定矩阵将标定物的像素坐标转换得到的末端执行器的物理坐标获取;平移变换等式可以表征上述两种获取物理坐标的方式的对应关系,因此,按照平移变换等式,在各个辅助图像中的标定物的像素坐标、末端执行器位于第一辅助位置和第二辅助位置的物理坐标、中间矩阵都已知的情况下,可以获取末端执行器位于第一辅助位置时、标定物的像素坐标,也就是标定物位于视场外的虚拟坐标。

其中,所述平移变换等式在相机静止的情况下为:M*P′-M*P=W

需要说明的是,两个平面内的点或坐标系变换均能用齐次线性变换表示,也就是,点或坐标系的平移、旋转、缩放等变换,都可以表示为一组齐次线性变换T。当一对分别属于两个平面的点或坐标系满足同一线性变换T时,可以利用齐次变换矩阵作用于待求点的像素坐标,得到待求点的物理坐标;其中,齐次变换矩阵可以表征齐次线性变换T的变换关系。

具体的,在本实施例中,在相机静止的情况下,将平移标定矩阵M作用于虚拟坐标P′可以得到末端执行器位于第一辅助位置的物理坐标W

针对平移变换等式M*P′-M*P=W

需要说明的是,在相机静止的情况下,基于射影变换性质,平移标定矩阵

针对平移变换等式M

在相机运动的情况下,基于射影变换性质,平移标定矩阵

在另一种实现方式中,所述对所述平移标定矩阵进行修正处理的方式,可以包括步骤:

利用所述末端执行器进行旋转移动的旋转角度以及射影变换等式,对所述平移标定矩阵进行修正,得到广义标定矩阵;其中,所述射影变换等式为基于射影变换原理得到的等式、且用于表征所述末端执行器进行旋转移动的旋转角度、所述平移标定矩阵以及所述广义标定矩阵之间的变换关系。

可以理解的是,可以将末端执行器进行旋转移动的旋转角度作为参数,表现在矩阵元素中,并带入基于射影变换原理得到的射影变换等式,得到广义标定矩阵。

其中,所述射影变换等式为:

可以理解的是,在射影变换等式中,θ、M、T

需要说明的是,在末端执行器每次进行旋转移动的旋转角度以及机构旋转中心都相同的情况下,末端执行器从每个第一辅助位置平行移动至每个第二辅助位置的每个位移量可以是相同的;在末端执行器每次进行旋转移动的旋转角度以及机构旋转中心存在差异的情况下,末端执行器从每个第一辅助位置平行移动至每个第二辅助位置的每个位移量可以是不相同的。

在本实施例中,在相机静止,以及相机运动两种情况下,可以分别利用平移标定矩阵以及广义标定矩阵,确定多个虚拟坐标,因此,可以应用于多种相机标定的场景,可移植性高。

为了更好地理解本申请实施例所提供的相机标定的方法,下面结合另一实施例进行介绍。

图4为本申请实施例提供的一种相机标定的方法的流程示意图,如图4所示,该方法可以包括步骤S401-S407:

S401,控制运动机构的末端执行器进行多次指定平行移动以使得标定物在相机的视场内进行多次平行移动,以及控制所述相机在所述末端执行器移动至每个目标位置时进行拍照,得到包含所述标定物的目标图像。

S402,基于各个目标图像中的关于所述标定物的像素坐标,以及在物理坐标系下的、处于各个目标位置的所述末端执行器的物理坐标,生成平移标定矩阵。

S403,控制所述末端执行器进行多次旋转移动以使得所述末端执行器到达多个第一辅助位置;其中,所述第一辅助位置为使得所述标定物位于所述相机的视场外的位置。

S404,在每次达到第一辅助位置时,控制所述末端执行器进行平行移动,以将所述末端执行器移动到第二辅助位置,以及控制所述相机在所述末端执行器移动至每个第二辅助位置时进行拍照,得到包含所述标定物的辅助图像;其中,所述第二辅助位置为使得所述标定物位于所述相机的视场内的位置。

S405,利用各个辅助图像中的关于所述标定物的像素坐标、所述末端执行器位于各个第一辅助位置和第二辅助位置的物理坐标,以及所述平移标定矩阵,确定多个虚拟坐标;其中,所述虚拟坐标为所述末端执行器位于所述第一辅助位置时、所述标定物在相机坐标系下的像素坐标。

S406,对所述多个虚拟坐标以及所述末端执行器位于各个第一辅助位置的物理坐标进行关于旋转中心的拟合处理,得到机构旋转中心。

S407,利用所述机构旋转中心以及所述平移标定矩阵,确定所述相机对应的标定结果。

可以理解的是,本实施例的步骤在前述实施例中已做描述,此处不做过多赘述。

基于上述方案,末端执行器经过旋转移动后,到达使得标定物位于相机的视场外的多个第一辅助位置,并且,确定末端执行器位于每一第一辅助位置时、标定物在相机坐标系下的像素坐标,即虚拟坐标,然后,对多个虚拟坐标以及末端执行器位于各个第一辅助位置的物理坐标进行关于旋转中心的拟合处理,得到机构旋转中心,这样使得在拟合机构旋转中心的过程中,标定物的像素坐标可以包括相机的视场外的像素坐标,末端执行器的物理坐标可以包括第一辅助位置的物理坐标,相当于扩大了相机的视场。因此,通过本方案对像素坐标和物理坐标进行拟合处理,可以降低对物理坐标或像素坐标的误差的敏感度,得到的机构旋转中心稳定性有所提高,降低了标定结果的误差,提高了相机标定的精度。

为了更好地理解本申请实施例在相机静止的情况下,如何实施相机标定的方法,下面将结合另一实施例进行介绍,如图5所示,该方法可以包括步骤S501-S509:

S501,控制运动机构的末端执行器进行多次指定平行移动以使得标定物在相机的视场内进行多次平行移动,以及控制所述相机在所述末端执行器移动至每个目标位置时进行拍照,得到包含所述标定物的目标图像。

S502,基于所述多次平行移动以及所述目标图像,获取特征点像素坐标集P以及运动机构物理坐标集W;其中,所述特征点像素坐标集P为包括多个标定物的像素坐标的集合,所述运动机构物理坐标集W为包括多个末端执行器的物理坐标的集合。

可以理解的是,标定物的像素坐标可以是目标图像中关于标定物的特征点的像素坐标;末端执行器的物理坐标可以是控制设备在控制运动机构移动的过程中获取得的。

S503,按照等式M*P=W,生成平移标定矩阵;其中,M为所述平移标定矩阵,P为所述特征点像素坐标集,W为所述运动机构物理坐标集。

S504,控制所述末端执行器进行多次旋转移动以使得所述末端执行器到达多个第一辅助位置;其中,所述第一辅助位置为使得所述标定物位于所述相机的视场外的位置。

S505,在每次达到第一辅助位置时,控制所述末端执行器进行平行移动,以将所述末端执行器移动到第二辅助位置,以及控制所述相机在所述末端执行器移动至每个第二辅助位置时进行拍照,得到包含所述标定物的辅助图像;其中,所述第二辅助位置为使得所述标定物位于所述相机的视场内的位置。

S506,获取所述末端执行器位于所述第一辅助位置时的物理坐标W

S507,在相机静止的情况下,利用所述物理坐标W

S508,对所述多个虚拟坐标P′以及所述末端执行器位于各个第一辅助位置的物理坐标W

S509,利用所述机构旋转中心C、所述平移标定矩阵M,以及等式M*C=0,得到目标矩阵M′。

可以理解的是,本实施例的步骤S501-S503与前述实施例中的S301类似,步骤S504与前述实施例中的S302相同,步骤S505与前述实施例中的S303相同,步骤S506、S507在前述实施例中已做描述,步骤S508、S509与前述实施例中的S305、S306类似,因此,此处均不做过多赘述。

基于上述方案,末端执行器经过旋转移动后,到达使得标定物位于相机的视场外的多个第一辅助位置,并且,确定末端执行器位于每一第一辅助位置时、标定物在相机坐标系下的像素坐标,即虚拟坐标,然后,对多个虚拟坐标以及末端执行器位于各个第一辅助位置的物理坐标进行关于旋转中心的拟合处理,得到机构旋转中心,这样使得在拟合机构旋转中心的过程中,标定物的像素坐标可以包括相机的视场外的像素坐标,末端执行器的物理坐标可以包括第一辅助位置的物理坐标,相当于扩大了相机的视场。因此,通过本方案对像素坐标和物理坐标进行拟合处理,可以降低对物理坐标或像素坐标的误差的敏感度,得到的机构旋转中心稳定性有所提高,降低了标定结果的误差,提高了相机标定的精度。

为了更好地理解本申请实施例在相机运动的情况下,如何实施相机标定的方法,下面将结合另一实施例进行介绍,如图6所示,该方法可以包括步骤S601-S6011:

S601,控制运动机构的末端执行器进行多次指定平行移动以使得标定物在相机的视场内进行多次平行移动,以及控制所述相机在所述末端执行器移动至每个目标位置时进行拍照,得到包含所述标定物的目标图像。

S602,基于所述多次平行移动以及所述目标图像,获取特征点像素坐标集P以及运动机构物理坐标集W;其中,所述特征点像素坐标集P为包括多个标定物的像素坐标的集合,所述运动机构物理坐标集W为包括多个末端执行器的物理坐标的集合。

S603,按照等式M*P=W,生成平移标定矩阵;其中,M为所述平移标定矩阵,P为所述特征点像素坐标集,W为所述运动机构物理坐标集。

S604,控制所述末端执行器进行多次旋转移动以使得所述末端执行器到达多个第一辅助位置;其中,所述第一辅助位置为使得所述标定物位于所述相机的视场外的位置。

S605,在每次达到第一辅助位置时,控制所述末端执行器进行平行移动,以将所述末端执行器移动到第二辅助位置,以及控制所述相机在所述末端执行器移动至每个第二辅助位置时进行拍照,得到包含所述标定物的辅助图像;其中,所述第二辅助位置为使得所述标定物位于所述相机的视场内的位置。

S606,获取所述末端执行器位于所述第一辅助位置时的物理坐标W

S607,基于所述末端执行器进行旋转移动的旋转角度θ,构造旋转矩阵R(θ);其中所述旋转矩阵R(θ)用于表征旋转前的相机坐标系与旋转后的相机坐标系之间的变换关系。

可以理解的是,旋转矩阵R(θ)可以为前述实施例射影变换等式中、含有θ的元素,也就是,

S608,利用所述旋转矩阵R(θ),获取针对相机运动的广义标定矩阵M

可以理解的是,基于等式

S609,在相机运动的情况下,利用所述物理坐标W

S6010,对所述多个虚拟坐标P′以及所述末端执行器位于各个第一辅助位置的物理坐标W

S6011,利用所述机构旋转中心C、所述平移标定矩阵M,以及等式M*C=0,得到目标矩阵M′。

可以理解的是,本实施例的步骤S601-S603与前述实施例中的S301类似,步骤S604与前述实施例中的S302相同,步骤S605与前述实施例中的S303相同,步骤S606、S607、S608、S609在前述实施例中已做描述,步骤S6010、S6011与前述实施例中的S305、S306类似,因此,此处均不做过多赘述。

基于上述方案,末端执行器经过旋转移动后,到达使得标定物位于相机的视场外的多个第一辅助位置,并且,确定末端执行器位于每一第一辅助位置时、标定物在相机坐标系下的像素坐标,即虚拟坐标,然后,对多个虚拟坐标以及末端执行器位于各个第一辅助位置的物理坐标进行关于旋转中心的拟合处理,得到机构旋转中心,这样使得在拟合机构旋转中心的过程中,标定物的像素坐标可以包括相机的视场外的像素坐标,末端执行器的物理坐标可以包括第一辅助位置的物理坐标,相当于扩大了相机的视场。因此,通过本方案对像素坐标和物理坐标进行拟合处理,可以降低对物理坐标或像素坐标的误差的敏感度,得到的机构旋转中心稳定性有所提高,降低了标定结果的误差,提高了相机标定的精度。

图7为本申请实施例提供的一种相机标定的装置的结构示意图,如图7所示,该装置可以包括如下模块:

构建模块710,用于基于对运动机构的末端执行器进行多次指定平行移动的方式,构建相机对应的平移标定矩阵;其中,所述多次指定平行移动使得标定物在所述相机的视场内进行多次平行移动;

第一控制模块720,用于控制所述末端执行器进行多次旋转移动以使得所述末端执行器到达多个第一辅助位置;其中,所述第一辅助位置为使得所述标定物位于所述相机的视场外的位置;

第二控制模块730,用于在每次达到第一辅助位置时,控制所述末端执行器进行平行移动,以将所述末端执行器移动到第二辅助位置,以及控制所述相机在所述末端执行器移动至每个第二辅助位置时进行拍照,得到包含所述标定物的辅助图像;其中,所述第二辅助位置为使得所述标定物位于所述相机的视场内的位置;

第一确定模块740,用于利用各个辅助图像中的关于所述标定物的像素坐标、所述末端执行器位于各个第一辅助位置和第二辅助位置的物理坐标,以及所述平移标定矩阵,确定多个虚拟坐标;其中,所述虚拟坐标为所述末端执行器位于所述第一辅助位置时、所述标定物在相机坐标系下的像素坐标;

拟合模块750,用于对所述多个虚拟坐标以及所述末端执行器位于各个第一辅助位置的物理坐标进行关于旋转中心的拟合处理,得到机构旋转中心;

第二确定模块760,用于利用所述机构旋转中心以及所述平移标定矩阵,确定所述相机对应的标定结果。

其中,所述第一确定模块740,可以包括:

第一确定单元,用于利用各个辅助图像中的关于所述标定物的像素坐标、所述末端执行器位于各个第一辅助位置和第二辅助位置的物理坐标,以及中间矩阵,确定多个虚拟坐标;其中,在相机静止的情况下,所述中间矩阵为所述平移标定矩阵,在相机运动的情况下,所述中间矩阵为对所述平移标定矩阵进行修正处理得到的广义标定矩阵,所述修正处理用于将所述平移标定矩阵转换为:表征旋转后的相机坐标系与物理坐标系之间的变换关系的广义标定矩阵,所述旋转后的相机坐标系为所述相机在跟随所述运动机构经过旋转移动后所形成的相机坐标系。

所述机构旋转中心包括:在相机坐标系下的像素旋转中心和在物理坐标系下的物理旋转中心。

所述第二确定模块760,可以包括:

第二确定单元,用于利用所述像素旋转中心,对所述平移标定矩阵进行归一化处理,得到所述相机对应的标定结果;其中,所述归一化处理用于将所述平移标定矩阵转换为在将所述运动机构对应的物理坐标系的原点平移至所述物理旋转中心处时的矩阵。

所述第一确定单元,用于:

按照平移变换等式,利用各个辅助图像中的关于所述标定物的像素坐标、所述末端执行器位于各个第一辅助位置和第二辅助位置的物理坐标,以及中间矩阵,确定多个虚拟坐标;其中,所述平移变换等式为基于平面欧式变换原理得到的等式、且用于表征所述辅助图像中的关于所述标定物的像素坐标、所述末端执行器位于所述第一辅助位置和第二辅助位置的物理坐标、所述中间矩阵以及所述虚拟坐标之间的变换关系。

其中,所述平移变换等式在相机静止的情况下为:M*P′-M*P=W

所述对所述平移标定矩阵进行修正处理的方式,包括:

利用所述末端执行器进行旋转移动的旋转角度以及射影变换等式,对所述平移标定矩阵进行修正,得到广义标定矩阵;

其中,所述射影变换等式为基于射影变换原理得到的等式、且用于表征所述末端执行器进行旋转移动的旋转角度、所述平移标定矩阵以及所述广义标定矩阵之间的变换关系。

所述射影变换等式为:

所述第二确定单元,可以包括:

第二确定子单元,用于利用等式M*C=0,将所述平移标定矩阵中的平移分量以所述像素旋转中心与所述末端执行器进行旋转移动的旋转角度进行表征;其中,为所述像素旋转中心的坐标,M为所述平移标定矩阵。

所述构建模块710,可以包括:

平行移动单元,用于控制运动机构的末端执行器进行多次指定平行移动以使得标定物在相机的视场内进行多次平行移动;

拍照单元,用于控制所述相机在所述末端执行器移动至每个目标位置时进行拍照,得到包含所述标定物的目标图像;

生成单元,基于各个目标图像中的关于所述标定物的像素坐标,以及在物理坐标系下的、处于各个目标位置的所述末端执行器的物理坐标,生成平移标定矩阵。

基于上述方案,末端执行器经过旋转移动后,到达使得标定物位于相机的视场外的多个第一辅助位置,并且,确定末端执行器位于每一第一辅助位置时、标定物在相机坐标系下的像素坐标,即虚拟坐标,然后,对多个虚拟坐标以及末端执行器位于各个第一辅助位置的物理坐标进行关于旋转中心的拟合处理,得到机构旋转中心,这样使得在拟合机构旋转中心的过程中,标定物的像素坐标可以包括相机的视场外的像素坐标,末端执行器的物理坐标可以包括第一辅助位置的物理坐标,相当于扩大了相机的视场。因此,通过本方案对像素坐标和物理坐标进行拟合处理,可以降低对物理坐标或像素坐标的误差的敏感度,得到的机构旋转中心稳定性有所提高,降低了标定结果的误差,提高了相机标定的精度。

本申请实施例还提供了一种电子设备,如图8所示,包括

存储器801,用于存放计算机程序;

处理器802,用于执行存储器801上所存放的程序时,实现如下步骤:

基于对运动机构的末端执行器进行多次指定平行移动的方式,构建相机对应的平移标定矩阵;其中,所述多次指定平行移动使得标定物在所述相机的视场内进行多次平行移动;

控制所述末端执行器进行多次旋转移动以使得所述末端执行器到达多个第一辅助位置;其中,所述第一辅助位置为使得所述标定物位于所述相机的视场外的位置;

在每次达到第一辅助位置时,控制所述末端执行器进行平行移动,以将所述末端执行器移动到第二辅助位置,以及控制所述相机在所述末端执行器移动至每个第二辅助位置时进行拍照,得到包含所述标定物的辅助图像;其中,所述第二辅助位置为使得所述标定物位于所述相机的视场内的位置;

利用各个辅助图像中的关于所述标定物的像素坐标、所述末端执行器位于各个第一辅助位置和第二辅助位置的物理坐标,以及所述平移标定矩阵,确定多个虚拟坐标;其中,所述虚拟坐标为所述末端执行器位于所述第一辅助位置时、所述标定物在相机坐标系下的像素坐标;

对所述多个虚拟坐标以及所述末端执行器位于各个第一辅助位置的物理坐标进行关于旋转中心的拟合处理,得到机构旋转中心;

利用所述机构旋转中心以及所述平移标定矩阵,确定所述相机对应的标定结果。

上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口用于上述电子设备与其他设备之间的通信。

存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一相机标定的方法的步骤。

在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一相机标定的方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者其他介质(例如固态硬盘Solid State Disk(SSD))等。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本申请的较佳实施例,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。

技术分类

06120115631567