1.本技术涉及电子与信息技术领域,尤其是涉及一种手眼标定方法、视觉机器人、手眼标定设备和存储介质。
背景技术:2.随着工业现场的工艺对精度要求越来越高,视觉机器人的机械手需要通过搭配高精度的视觉传感器如相机作为视觉机器人的“眼睛”协调以完成高精度的工艺。为了保证机械手的抓取精度,在安装相机后需通过手眼标定来获取相机相对于机器手的位姿变换关系,以建立视觉传感器和视觉机器人之间的信息转换,使得当视觉传感器采集到标定物的视觉信息如视觉图像后,将标定物的视觉信息转换成视觉机器人可接受的位置信息,从而控制机械手对标定物的精准抓取。目前,对手眼标定方法还有待进一步研究。
技术实现要素:3.本技术实施例期望提供一种手眼标定方法、视觉机器人、手眼标定设备和存储介质。
4.本技术的技术方案是这样实现的:
5.本技术提供一种手眼标定方法,所述方法包括:
6.获得标定物中确定的参考点阵中的任一参考标定点,在标定物坐标系下的三维物理坐标;
7.控制视觉机器人的机械手运动,获得所述机械手在至少两个位姿下,通过所述视觉机器人的光场相机拍摄所述参考点阵得到的光场图像;
8.基于至少两个光场图像和所述参考点阵中所有参考标定点对应的三维物理坐标,得到所述标定物相对于所述光场相机的目标位姿变换关系;
9.基于所述目标位姿变换关系对所述视觉机器人进行手眼标定。
10.本技术提供一种视觉机器人,所述视觉机器人包括:
11.光场相机,用于拍摄光场图像;
12.机器人本体,所述机器人本体具有基座,以及设置在所述基座上的机械手,所述机械手用于固定待拍摄物体;
13.控制装置,用于获得标定物中确定的参考点阵中的任一参考标定点,在标定物坐标系下的三维物理坐标;控制视觉机器人的机械手运动,获得所述机械手在至少两个位姿下,通过所述视觉机器人的光场相机拍摄所述参考点阵得到的光场图像;基于至少两个光场图像和所述参考点阵中所有参考标定点对应的三维物理坐标,得到所述标定物相对于所述光场相机的目标位姿变换关系;基于所述目标位姿变换关系对所述视觉机器人进行手眼标定。
14.本技术提供一种手眼标定设备,所述手眼标定设备包括:
15.存储器,用于存储手眼标定程序;
16.处理器,用于执行所述存储器中存储的手眼标定程序,实现上述所述的手眼标定方法。
17.本技术提供一种存储介质,其特征在于,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述所述的手眼标定方法。
18.本技术实施例所提供的手眼标定方法、视觉机器人、手眼标定设备和存储介质,获得标定物中确定的参考点阵中的任一参考标定点,在标定物坐标系下的三维物理坐标;控制视觉机器人的机械手运动,获得机械手在至少两个位姿下,通过视觉机器人的光场相机拍摄参考点阵得到的光场图像;基于至少两个光场图像和参考点阵中所有参考标定点对应的三维物理坐标,得到标定物相对于光场相机的目标位姿变换关系;基于目标位姿变换关系对视觉机器人进行手眼标定;如此,基于获取的不同位姿下的光场图像,以及标定物中任一参考标定点的三维物理坐标,确定标定物相对于光场相机的目标位姿变换关系,从而快速完成视觉机器人的手眼标定,提高了手眼标定的准确度和效率。
附图说明
19.图1为本技术实施例提供的一种手眼标定设备所采用的设备的示意图;
20.图2为本技术实施例提供的视觉机器人的机械手末端移动至不同位姿时的示意图;
21.图3为本技术实施例提供的一种可选的手眼标定方法的流程示意图;
22.图4为本技术实施例提供的选取参考点阵的示意图;
23.图5为本技术实施例提供的光场成像原理的示意图;
24.图6为本技术实施例提供的一种可选的手眼标定方法的流程示意图;
25.图7为本技术实施例提供的光在传播过程中所包含的光场信息的示意图;
26.图8为本技术实施例提供的一种可选的手眼标定方法的流程示意图;
27.图9为本技术实施例提供的中心视角图像和视差图像的示意图;
28.图10为本技术实施例提供的一种可选的手眼标定方法的流程示意图;
29.图11为本技术实施例提供的包括所有目标标定点在相机坐标系下的三维点云坐标;
30.图12为本技术实施例提供的标定板重建结果和实际值之间的结果对比以及绝对距离误差的示意图;
31.图13为本技术实施例提供的一种可选的手眼标定方法的流程示意图;
32.图14为本技术实施例提供的结合光场相机的光学配置和光传播过程的示意图;
33.图15为本技术实施例提供的微透镜的投影中心标定的示意图;
34.图16为本技术实施例提供的一种可选的手眼标定方法的流程示意图;
35.图17为本技术实施例提供的点状特征检测过程的示意图;
36.图18为本技术实施例提供的弥散圆特征的提取过程的示意图;
37.图19为本技术实施例提供的一种可选的手眼标定方法的流程示意图;
38.图20为本技术实施例提供的点状特征重投影过程的示意图;
39.图21为本技术实施例提供的一种视觉机器人的结构示意图;
40.图22为本技术实施例提供的一种手眼标定设备的结构示意图。
具体实施方式
41.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
42.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
43.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
44.相关技术中,存在两种类型的手眼标定,即“眼在手上”的手眼标定和“眼在手外”的手眼标定,本技术实施例提供的手眼标定方法适用于上述两种情况,这里,本技术实施例中以“眼在手外”的情况为例对手眼标定的基本原理进行说明。参照图1和图2所示,手眼标定设备所采用的设备如下:视觉机器人、光场相机和标定物,且标定物被固定在视觉机器人的机械手上,将光场相机固定于世界坐标系,光场图像拍摄固定于视觉机器人的机械手上的标定物,在确保光场相机可以观察到标定物的条件下,控制视觉机器人的机械手移动,进而使得标定物移动至若干位置,分别记录各个位置处视觉机器人的位姿。这里,光场相机(camera)的相机坐标系为{c},机械人的基座(base)坐标系记为{b},第i个位置处的机械手末端(griper)坐标系为{gi},第i个位置处的标定物坐标系(world)记为{wi}。需要说明的是,视觉机器人的基座坐标系{b}、机械手末端坐标系{gi}、相机坐标系{c}和标定物坐标系{wi}形成一个循环,通过这个循环关系可以实现各个坐标系之间的转换。这里,标定物被固定在视觉机器人的机械手中,当机械手末端移动到两个不同位置g1和g2,标定物跟着机械手的移而运动到w1和w2位置,在整个标定过程中,由于光场相机相对于基座的位姿变换关系bhc和标定物相对于机械手的位姿变换关系ghw是固定的,因此,标定物相对于机械手的位姿变换关系可以通过如下(公式1)表示,
45.ghw=g1hb
·
bhc
·
chw1=g2hb
·
bhc
·
chw2ꢀꢀꢀ
(公式1)
46.其中,ghw表示标定物相对于机械手的位姿变换关系,ghb表示基座相对于机械手末端的位姿变换关系,bhc表示光场相机相对于基座的位姿变换关系,chw表示标定物相对于光场相机的位姿变换关系。
47.进一步地,对(公式1)进行变换处理,得到如下(公式2),
48.(g2hb)-1
·
g1hb
·
bhc=bhc
·
chw2·
(chw1)-1
ꢀꢀꢀ
(公式2)
49.令a=(g2hb)-1
·
g1hb,b=chw2·
(chw1)-1
,x=bhc,(公式2)可化简为a
·
x=x
·
b的形式,手眼标定求解问题即转化为求解a
·
x=x
·
b中x的问题,在任意两个位姿下进行拍摄标定物,并通过机器人示教器上读取的关节角度以及和机器人正运动学模型计算得到不同位姿下基座相对于机器手末端的位姿变换关系ghb,并得到标定物相对于光场相机的位姿
变换关系chw,进而基于基座相对于机器手末端的位姿变换关系ghb和标定物相对于光场相机的位姿变换关系chw,求解x,即求解光场相机相对于基座的位姿变换关系bhc。
50.基于上述的手眼标定设备以及手眼标定的原理,本技术的实施例提供一种手眼标定方法,应用于视觉机器人,参照图3所示,该方法包括以下步骤:
51.步骤101、获得标定物中确定的参考点阵中的任一参考标定点,在标定物坐标系下的三维物理坐标。
52.本技术实施例中,标定物是具有特定方格或图案的标定板,如标定物可以为棋盘格的标定板。标定板广泛应用在机器视觉、图像测量、摄影测量、三维重建等领域中。通过相机拍摄带有固定间距图案阵列平板、经过标定算法的计算,可以得出相机的几何模型,从而得到高精度的测量和重建结果。而带有固定间距图案阵列的平板就是标定板。
53.本技术实施例中,标定物包括多个标定点,且相邻两个标定点之间的间距相等。示例性的,相邻两个标定点之间的间距可以是0.5毫米(millimeter,mm)。
54.本技术实施例中,参考点阵是从标定物包括的所有标定点中,选取一定数量的标定点组成的阵列,且参考点阵是用于计算的点阵。参考标定点是参考点阵中的任一标定点。
55.在实际应用中,标定物坐标系是以标定物中的任一标定点为原点,标定物的左右方向为x轴所在的方向,标定物的前后方向为y轴所在的方向,标定物的上下方向为z轴所在的方向建立的空间直角坐标系。示例性的,参照图4所示,以标定物的所有标定点中,位于左下角的标定点为原点,选取9
×
12个标定点作为参考点阵,并确定参考点阵中每一参考标定点在标定物坐标系下的三维物理坐标,即每一参考标定点在标定物坐标系下的位置坐标。
56.步骤102、控制视觉机器人的机械手运动,获得机械手在至少两个位姿下,通过视觉机器人的光场相机拍摄参考点阵得到的光场图像。
57.本技术实施例中,光场图像是机械手在至少两个位姿下,光场相机拍摄标定物得到的原始图像。这里,光场图像可以是标定物固定在机械手上,光场相机拍摄固定在机械手上的标定物中的参考矩阵处于至少两个位姿下所获得的原始图像;光场图像也可以是光场相机固定在机械手上,使用光场相机采用至少两个位姿拍摄标定物中的参考矩阵所获得的原始图像,对此,本技术不做具体限制。
58.这里,对光场相机的光学配置进行说明,光场相机的光学配置由三部分构成,分别为:前置光学系统、微透镜阵列以及光电传感器。前置光学系统是一个透镜组,其功能是对光线进行传递;微透镜阵列将采集到的光线信息进行聚焦及散焦;之后,由光电传感器将所有光线信息进行采集。如图5所示,光场成像原理示意图中,主透镜组利用一个主透镜代替,将微透镜阵列放在主透镜的焦平面位置。微透镜阵列中含有m
×
m个独立的微透镜,这些微透镜均按照六边形结构分布,且每个微透镜下面覆盖着n
×
n个像素。这里,微透镜阵列相当于一个散焦元件,目的是使目标发出的光线通过主透镜组的聚焦之后,散射到若干个探测器单元上,使探测器可以记录来自不同位置、不同角度的光线信息。微透镜阵列的另一个作用是,把主透镜组的光成像在探测器上,并覆盖探测器上若干个像素;由此可知,主透镜组的整个光能够被探测器单元分割成了若干个子孔径。
59.步骤103、基于至少两个光场图像和参考点阵中所有参考标定点对应的三维物理坐标,得到标定物相对于光场相机的目标位姿变换关系。
60.本技术实施例,目标位姿变换关系用于标定标定物相对于光场相机的位姿变换。
61.本技术实施例中,视觉机器人控制自身的机械手运动,获得机械手在至少两个位姿下,视觉机器人的光场相机拍摄参考点阵得到的光场图像之后,基于机械手在至少两个不同位姿下得到的光场图像,以及参考点阵中所有参考标定点对应的三维物理坐标,得到标定物相对于光场相机的目标位姿变换关系。
62.步骤104、基于目标位姿变换关系对视觉机器人进行手眼标定。
63.本技术实施例中,视觉机器人基于至少两个光场图像和参考点阵中所有参考标定点对应的三维物理坐标,得到标定物相对于光场相机的目标位姿变换关系之后,基于目标位姿变换关系,通过tasi两步法对视觉机器人进行手眼标定,进而得到光场相机相对于基座(眼到手)的位姿变换关系,或光场相机相对于机械手末端(眼在手)的位姿变换关系。这里,通过tasi两步法对视觉机器人进行手眼标定为常用的技术,本技术对此不作说明。
64.本技术实施例所提供的手眼标定方法,获得标定物中确定的参考点阵中的任一参考标定点,在标定物坐标系下的三维物理坐标;控制视觉机器人的机械手运动,获得机械手在至少两个位姿下,通过视觉机器人的光场相机拍摄参考点阵得到的光场图像;基于至少两个光场图像和参考点阵中所有参考标定点对应的三维物理坐标,得到标定物相对于光场相机的目标位姿变换关系;基于目标位姿变换关系对视觉机器人进行手眼标定;如此,基于获取的不同位姿下的光场图像,以及标定物中任一参考标定点的三维物理坐标,确定标定物相对于光场相机的目标位姿变换关系,从而快速完成视觉机器人的手眼标定,提高了手眼标定的准确度和效率。
65.本技术的实施例提供一种手眼标定方法,应用于视觉机器人,参照图6所示,该方法包括以下步骤:
66.步骤201、获得标定物中确定的参考点阵中的任一参考标定点,在标定物坐标系下的三维物理坐标。
67.步骤202、控制视觉机器人的机械手运动,获得机械手在至少两个位姿下,通过视觉机器人的光场相机拍摄参考点阵得到的光场图像。
68.步骤203、通过光场渲染算法对至少两个光场图像中每一光场图像进行渲染处理,得到每一光场图像对应的多视角图像。
69.其中,多视角图像包括中心视角图像。
70.本技术实施例中,多视角图像指的是每一光场图像在光线以不同入射角进行照射时得到的图像。这里,参照图7所示,光场是一束光在传播过程中所包含的光场信息,故光场图像包括所有光场信息,光场信息可以用一个四维的参数化表示l(x,y,u,v),光场信息包括光线强度、光线位置和光线方向等信息,l表示光的强度,(x,y)表示光场中的坐标信息,即微透镜排列次序,(u,v)表示光场中的角度信息,即宏像素像素排布。
71.本技术实施例中,由于光场相机相当于一个小型的相机阵列,故通过光场相机拍摄得到的光场图像不仅包含了拍摄场景中光线的空间位置信息还包含了入射角度信息;进一步地,视觉机器人通过光场渲染算法,将光场相机的uv平面和xy平面的信息进行解耦合,从而获取在不同位姿下的至少两个光场图像中每一光场图像在不同入射角下的多视角图像。需要说明的是,光场渲染算法的实质是将光场图像中每一个微透镜覆盖的区域(宏像素)中的各个位置的像素,即宏像素像素排布(u,v)按微透镜排列次序(x,y)重新排列。
72.步骤204、通过外极线图像算法对每一光场图像对应的多视角图像进行处理,得到
每一光场图像对应的视差图像。
73.本技术实施例中,视差图像是一个二维图像,视差图像用于标定点的定位。
74.本技术实施例中,视觉机器人通过光场渲染算法对至少两个光场图像中每一光场图像进行渲染处理,得到每一光场图像对应的多视角图像之后,通过外极线图像算法对每一光场图像对应的多视角图像进行处理,得到每一光场图像对应的视差图像。这里,外极线图像(epipolar plane image,epi)算法的基本思想是,在四维光场数据l(x,y,u,v)中,若将坐标u和x进行固定,然后对(y,v)坐标下的像素按照对应关系进行重新排列,便可生成一幅(y,v)坐标下的epi图像;同样若对四维光场数据l(x,y,u,v)中的v和y进行固定,对(x,u)坐标下的像素进行重排列,则可生成一幅(x,u)坐标下的epi图像。之后根据极线斜率推算对应视差的算法,得到估计每一标定点的估计视差值。
75.步骤205、基于中心视角图像中所有参考标定点,对视差图像中的标定点进行定位,得到视差图像中的目标标定点。
76.本技术实施例中,视差图像中的目标标定点与参考标定点对应。
77.本技术实施例中,所有目标标定点组成目标点阵。
78.本技术实施例中,步骤205基于中心视角图像中所有参考标定点,对视差图像中的标定点进行定位,得到视差图像中的目标标定点的过程结合图8作出进一步地说明,
79.步骤2051、获得所有参考标定点中每一参考标定点在图像像素坐标系下的第二像素位置。
80.本技术实施例中,图像像素坐标系是以中心视角图像中的定好的像素或标定点为原点,在中心视角图像上建立的相应的坐标系。
81.本技术实施例中,第二像素位置指的是中心视角图像中的参考标定点在图像像素坐标系下的位置,并不是真实距离的位置,仅表示参考标定点在图像像素坐标系下的第几排第几列。
82.步骤2052、确定视差图像在图像像素坐标系下,与第二像素位置对应的标定点为目标标定点。
83.这里,参照图9所示,图9中的a示出的是中心视角图像,图9中的b示出的是视差图像,从图中可以看出,中心视角图像中的标定点的位置与视差图像中的标定点的位置一样,故视觉机器人获得中心视角图像中所有参考标定点中每一参考标定点在图像像素坐标系下的第二像素位置。并在视差图像中建立以与中心视角图像相应的标定点为原点的图像像素坐标系,在该图像像素坐标系下,确定视差图像中与第二像素位置对应的标定点为目标标定点,进而确定视差图像中的目标标定点与标定物中选取的参考标定点是一一对应关系。
84.步骤206、基于目标标定点在图像像素坐标系下的第一像素位置,得到目标标定点在相机坐标系下的三维点云坐标。
85.本技术实施例中,步骤206基于目标标定点在图像像素坐标系下的第一像素位置,得到目标标定点在相机坐标系下的三维点云坐标的过程结合图10作出进一步地说明,
86.步骤2061、获得视差图像中的每一目标标定点的视差值。
87.步骤2062、基于第一像素位置和视差值,得到三维点云坐标。
88.本技术实施例中,视差图像是二维灰度图像,视差图像中的每一像素点(标定点)
的灰度值表征深度信息,且视差值与深度信息有关,视觉机器人通过光场校准,得到视差图像中的每一目标标定点的深度信息,进而得到视差图像中的每一目标标定点的视差值;进一步地,基于目标标定点在图像像素坐标系下的第一像素位置和视差值,转换成该目标标定点在相机坐标系下的三维点云坐标,进而得到包括所有目标标定点在在相机坐标系下的三维点云坐标,参照图11所示,图11示出的是包括所有目标标定点在相机坐标系下的三维点云坐标。
89.步骤207、基于所有目标标定点对应的三维点云坐标,与对应位置的参考标定点对应的三维物理坐标,得到标定物相对于光场相机的目标位姿变换关系。
90.本技术实施例中,视觉机器人将目标点阵中所有目标标定点在相机坐标系下对应的三维点云坐标,和对应位置的参考标定点在标定物坐标系的三维物理坐标进行匹配,计算相机坐标系下对应的所有三维点云坐标和标定物坐标系下对应的三维物理坐标之间的刚体变换,得到标定物相对于光场相机的目标位姿变换关系。
91.步骤208、基于目标位姿变换关系对视觉机器人进行手眼标定。
92.在一种可实现的应用场景中,将光场相机固定在外部环境中,具有高精度点阵的标定板固定视觉机器人的机械手末端上,标定板中的相邻标定点之间的间距为0.5mm。参照图4所示,以位于左下角的点为原点,选取9
×
12个标定点作为参考点阵,移动机械手末端至13个不同的位姿状态并保证在各个位置处光场相机都能拍摄到参考点阵,并记录机械手末端的关节角度。
93.进一步地,数据采集完毕后,通过视觉机器人示教器可以计算可以得到视觉机器人每个位姿下基座坐标系{b}相对于机械手末端坐标系{gi}的位姿变换关系bhgi,通过点云匹配计算每个位姿下标定物坐标系{wi}相对于相机坐标系{c}的位姿变换关系chwi,故可以得到12组用于手眼标定求解的齐次变换矩阵an和bn(n=1,2,
…
,11)。计算得到的光场相机相对于基座的位姿变换关系bhc为:
[0094][0095]
示例性的,取第一组位姿数据,对点云匹配计算出的标定物相对于相机的位姿变换关系chw进行精度验证。利用chw把目标点阵对应三维点云坐标重投影到标定物坐标系中,与参考点阵在标定物坐标系的三维物理坐标进行对比,以重建结果和实际值(三维物理坐标)之间的绝对距离作为误差衡量标准,参照图12所示,图12中的a示出的是标定板重建结果和实际值之间的结果对比示意图;图12中的b示出的是标定板重建结果和实际值之间的绝对距离误差的示意图。从图中可以看出,第一组位姿变换关系中,重建误差最大为0.041mm。
[0096]
由上述可知,本技术实施例中,通过光场相机拍摄标定物的参考点阵,计算出参考点阵在相机坐标系下的三维点云坐标。已知标定物中相邻标定点的点阵间距,可自行确定原点建立标定板坐标系(z方向坐标为0),由于中心视角图像和视差图像一一对应,视差图像上的像素值又与三维点云一一对应,因此可以利用中心视角图像进行定位,将目标点阵中所有目标标定点在相机坐标系下对应的三维点云坐标,和对应位置的参考标定点在标定物坐标系的三维物理坐标进行匹配,计算相机坐标系下对应的所有三维点云坐标和标定物
坐标系下对应的三维物理坐标之间的刚体变换,得到标定物相对于光场相机的目标位姿变换关系,进而实现机器人的手眼标定,提高了手眼标定的效率。
[0097]
需要说明的是,本实施例中与其它实施例中相同步骤和相同内容的说明,可以参照其它实施例中的描述,此处不再赘述。
[0098]
本技术的实施例提供一种手眼标定方法,应用于视觉机器人,参照图13所示,该方法包括以下步骤:
[0099]
步骤301、获得标定物中确定的参考点阵中的任一参考标定点,在标定物坐标系下的三维物理坐标。
[0100]
步骤302、控制视觉机器人的机械手运动,获得机械手在至少两个位姿下,视觉机器人的光场相机拍摄参考点阵得到的光场图像。
[0101]
这里,参照图14和表1所示,图14示出的是结合光场相机的光学配置和光传播过程的示意图,表1列出了光场投影模型中使用的符号的含义。根据图14所示的非聚焦全光相机的光学配置,来自三维物理空间中单个点的光线将首先通过主透镜,然后到达单个会聚点即像点。然后光线将由一组微透镜根据其传播角度进行分离,在传感器平面上形成光场图像。
[0102]
pc(p
cx
,p
cy
,p
cz
)参考标定点在相机坐标系{c}下的坐标(mm)l
ci
第i个微透镜中心的位置l
pi
第i个微透镜在传感器平面的投影中心的位置p
ci
第i个微透镜对应的点状特征的位置q
p
(q
pu
,q
pv
)像点qc在传感器平面的投影的位置oc(o
cu
,o
cv
)相机在图像坐标中的光学中心d
p
弥散圆直径(像素,pixel)c
p
(c
pu
,c
pv
)弥散圆圆心(pixel)si像距(mm),即主透镜与焦平面之间的距离f
l
微透镜焦距(mm)p
p
像素真实物理尺寸(mm)pm主透镜有效光圈直径(mm)fm主透镜焦距(mm)p
l
微透镜真实物理尺寸(mm)f
#,m
主透镜的f数f
#,l
微透镜的f数,f
#,l
=f
l
/p
l
m主透镜的放大倍率pmrpmr=p
l
/p
p
[0103]
表1
[0104]
步骤303、获得通过光场相机拍摄纯色标定物所获得纯色图像。
[0105]
本技术实施例中,光场相机在对纯色标定物进行拍摄之前,需要调整光场相机的主透镜的光圈,并将主透镜的光圈调至最小,从而使微透镜形成小光圈。此时,通过调至后的光场相机拍摄纯色标定物所获得的纯色图像,即为微透镜形成的所有小光圈中相邻小光圈(宏像素)相切。在实际应用过程中,参照图15所示,图15示出的是微透镜的投影中心标定
的示意图,图15中的a示出的是主透镜的光圈调至最小时获得的最小光圈图,图15中的b示出的是将光场相机调至宏像素相切状态得到的宏像素相切图。
[0106]
本技术实施例中,纯色标定物可以是亮度均匀的标定物,如白板、白墙或其他纯色物体。
[0107]
步骤304、对纯色图像进行标定处理,得到光场相机的微透镜阵列中每一微透镜的中心于光场相机的传感器平面的进行投影时,在图像坐标系下的投影中心的第三像素位置。
[0108]
本技术实施例中,参照图14所示,视觉机器人获得通过光场相机拍摄纯色标定物所获得纯色图像之后,通过微透镜阵列标定算法对纯色图像进行亮度加权计算,得到光场相机的微透镜阵列(micro lens array,mla)中每一微透镜的微透镜中心l
ci
,以及微透镜中心l
ci
在光场相机的传感器平面的进行投影时,在图像坐标系下的投影中心的第三像素位置l
pi。
[0109]
在实际应用中,参照图14所示,由于主透镜为理想薄透镜,来自光场图像中任一参考标定点在相机坐标系下的坐标pc(p
cx
,p
cy
,p
cz
)的所有光线,三维空间中的pc通过主透镜将形成像点qc(q
cx
,q
cy
,q
cz
)。因此,根据薄透镜成像原理给出了光场图像中的任一参考标定点pc和像点qc之间的关系如公式3所示,
[0110][0111]
进一步地,由于故根据公式3可以推导出光场图像中的参考标定点pc和像点qc之间的关系,具体关系如公式4所示,
[0112][0113]
其中,-q
cz
是像点qc在z方向上与主透镜的距离,是光场图像中的参考标定点pc在相机坐标系{c}下在z轴方向上与主透镜的距离,fm是主透镜焦距。来自像点qc的光线将到达mla平面(又称微透镜平面或微透镜阵列平面)并遇到一组微透镜。由于微透镜被建模为针孔阵列,mla下方的投影图像中心将偏离微透镜中心。这里,oc(o
cu
,o
cv
)表示相机在图像坐标中的光学中心。视觉机器人基于纯色图像得到微透镜阵列中每一微透镜中心,这里,第i个透镜的透镜中心的坐标表示为假设光场相机内部具有理想的物理对准,mla平面平行于主透镜。也就是说,微透镜与主透镜平面的距离恒定。这里,用微透镜投影中心l
pi
和光心oc在传感器平面投影坐标o
p
表示微透镜中心l
ci
,从而确定微透镜中心l
ci
和微透镜投影中心l
pi
的关系,这里,微透镜投影中心l
pi
和光心oc在传感器平面投影坐标o
p
表示微透镜中心l
ci
,可以通过如下公式5表示,
[0114][0115]
需要说明的是,此处以及后续的第i个微透镜中心的位置l
ci
可以描述成微透镜中心l
ci
,第i个微透镜在传感器平面的投影中心的位置可以描述成微透镜投影中心l
pi
或投影中心l
pi
。
[0116]
步骤305、针对所有投影中心,基于获得的第一预设窗口,确定每一光场图像中任一参考标定点在传感器平面中,对应第三像素位置的点状特征的第四像素位置,得到所有投影中心对应的所有点状特征在图像坐标系下的第四像素位置。
[0117]
其中,第一预设窗口用于包括参考标定点对应的投影中心。
[0118]
本技术实施例中,视觉机器人在得到光场相机的微透镜阵列中每一微透镜的微透镜中心l
ci
,以及微透镜中心l
ci
在光场相机的传感器平面的进行投影时,在图像坐标系下的投影中心的第三像素位置l
pi
之后,针对所有投影中心,基于获得的第一预设窗口,确定每一光场图像中任一参考标定点在传感器平面中,对应第三像素位置l
pi
的点状特征的第四像素位置p
ci
,得到所有投影中心对应的所有点状特征在图像坐标系下的第四像素位置p
ci
。需要说明的是,此处以及后续的所有点状特征在图像坐标系下的第四像素位置p
ci
可以描述成所有点状特征p
ci
。
[0119]
本技术实施例中,步骤305针对所有投影中心,基于获得的第一预设窗口,确定每一光场图像中任一参考标定点在传感器平面中,对应第三像素位置l
pi
的点状特征的第四像素位置p
ci
的过程结合图16作出进一步地说明,
[0120]
步骤3051、在光场图像中框定以第三像素位置为中心,确定具有第一预设窗口的第一区域。
[0121]
步骤3052、从第一区域的所有像素中,确定像素特征满足特征选择条件的像素为第一目标点。
[0122]
本技术实施例中,像素特征满足特征选择条件包括:第一区域内像素的亮度值大于亮度阈值且像素的亮度值大于或等于相邻像素的亮度值,以及像素与第三像素位置对应的投影中心之间的距离最短。
[0123]
步骤3053、在光场图像中框定以第一目标点为中心,确定具有第二预设窗口的第二区域。
[0124]
其中,第二预设窗口的大小小于第一预设窗口的大小。
[0125]
步骤3054、基于对第二区域的所有像素的像素位置进行灰度加权平均,得到点状特征的第四像素位置。
[0126]
在一种可实现的应用场景中,参照图14所示,来自参考标定点pc的光线将遇到一组微透镜。对于每个遇到的微透镜,对应的微图像下最多包含一个点状特征。然而,标定物上的实际白点并非无限小,并且在实际成像过程中存在像差。注意,每个点状特征将覆盖几个像素。因此,使用如下方法从光场图像计算点状特征的位置。点状特征检测过程如图17所示。首先,在空间上检索相应的微透镜中心。然后,在光场图像中框定以第三像素位置l
pi
为中心,确定具有第一预设窗口w
l
如13
×
13的第一区域,在第一区域中,选择像素特征满足特征选择条件的第一目标点,像素特征满足特征选择条件包括:第一区域内像素的亮度值大于亮度阈值且像素的亮度值大于相邻像素的亮度值,以及像素与第三像素位置对应的投影中心之间的距离最短;进一步地,在光场图像中框定以第一目标点为中心,确定具有第二预设窗口ws如5
×
5的第二区域,对第二区域的所有像素的像素位置进行灰度加权平均,得到点状特征的第四像素位置p
ci
。如此,选择像素特征满足特征选择条件的标定点,避免了出现像素值相同的情况,设置了距离最近可以解决像素相同的问题又可以排除找到别的微透镜区域的问题,进而准确找到满足要求的标定点,以精确标定物相对于光场相机的目标位姿
变换关系,从而快速完成视觉机器人的手眼标定,提高了手眼标定的准确度和效率。
[0127]
步骤306、基于所有投影中心的第三像素位置和所有点状特征的第四像素位置,确定参考标定点对应的弥散圆特征。
[0128]
本技术实施例中,弥散圆特征包括弥散圆的圆心位置和弥散圆的直径
[0129]
本技术实施例中,视觉机器人基于所有投影中心的第三像素位置和所有点状特征的第四像素位置,通过如下公式6确定参考标定点对应的弥散圆的圆心c
p
(c
pu
,c
pv
)和弥散圆的直径d
p
。
[0130][0131]
其中,l
pi
(l
piu
,l
piv
)是第i个微透镜中心于传感器面投影位置在图像坐标系下的像素位置,p
ci
(p
ciu
,p
civ
)是第i个微透镜对应的点状特征在图像坐标系下的像素位置,(d
p
,c
pu
,c
pv
)表示弥散圆特征。参照图18所示,图18示出了弥散圆特征的提取过程。
[0132]
这里,参照图14所示,公式6的推导过程可以通过如下公式7-公式20得到,具体地,由三角形相似则点状特征在图像坐标系下的第四像素位置p
ci
通过微透镜中心l
ci
和像点qc在传感器平面投影坐标q
p
表示成如下公式7,
[0133][0134]
把公式5代入公式7中,可以得到点状特征在图像坐标系下的第四像素位置p
ci
通过微透镜投影中心l
pi
,相机光心在传感器平面投影坐标o
p
、像点qc在传感器平面的投影坐标q
p
(q
pu
,q
pv
)表示为如下公式8,
[0135][0136]
其中,点q在传感器平面的投影坐标q
p
(q
pu
,q
pv
)和q在相机坐标系下的坐标qc(q
cx
,q
cy
,q
cz
)之间的关系可以通过公式9表示,
[0137][0138]
由δocaq~δc
l
l
ci
q,可得光线pa与主透镜的交点在相机坐标系下的坐标a(a
x
,ay,0),与像点qc、第i个透镜的透镜中心之间的关系,可通过公式10表示,
[0139][0140]
进一步地,由δoal
ci
~δl
pi
p
ci
l
ci
,得到可得光线pa与主透镜的交点在相机坐标系下的坐标a(a
x
,ay,0),与第i个微透镜的投影中心对应的点状特征在图像坐标系下的第四像素位置p
ci
之间为关系,可通过公式11表示,
[0141][0142]
其中,a(a
x
,ay,0)是光线pa与主透镜的交点在相机坐标系下的坐标,l
pi
(l
piu
,l
piv
)
是第i个微透镜中心于传感器面投影位置在图像坐标系下的像素位置,p
ci
(p
ciu
,p
civ
)是第i个微透镜对应的点状特征在图像坐标系下的像素位置,l
pi
(l
piu
,l
piv
)是第i个微透镜中心于传感器平面投影位置在图像坐标系下的像素位置。
[0143]
由投影相似性可得在微透镜平面形成的弥散圆特征的直径d
l
与在传感器平面形成的弥散圆特征的直径d
p
之间的关系,可通过公式12表示,
[0144][0145]
结合公式10,对公式12进行简化,得到mla平面上形成的弥散圆特征的直径d
l
和中心坐标c
l
(c
lu
,c
lv
)、微透镜中心l
ci
、点a在相机坐标系下的坐标(a
x
,ay,0)之间的关系,可通过公式13表示,
[0146][0147]
对公式11进行转换,得到用微透镜投影中心l
pi
和点状特征p
ci
表示a点在相机坐标系下的坐标(a
x
,ay,0),具体表示如下公式14,
[0148][0149]
将公式14代入到公式13中可得,在微透镜平面形成的弥散圆特征的直径d
l
与第i个微透镜中心于传感器面投影位置在图像坐标系下的像素位置l
pi
(l
piu
,l
piv
)、第i个微透镜对应的点状特征在图像坐标系下的像素位置p
ci
(p
ciu
,p
civ
)和第i个微透镜中心于传感器平面投影位置在图像坐标系下的像素位置l
p
i(l
piu
,l
piv
)之间的关系,可通过公式15表示,
[0150][0151]
即
[0152][0153]
对公式12进行变换处理,得到的在微透镜平面形成的弥散圆特征的直径d
l
与在传感器平面形成的弥散圆特征的直径d
p
之间的关系可通过公式16表示;对公式12进行变换处理,得到的在微透镜平面形成的弥散圆特征中心c
l
和在传感器平面形成的弥散圆中心c
p
之间的关系,可通过公式17表示,
[0154][0155][0156]
将公式16代入到公式15中,可得
[0157][0158]
由(公式17)有
[0159][0160]
将公式19代入到公式18中可得,
[0161][0162]
即
[0163][0164]
对公式20进行变换,得到公式6,即确定在光场图像中的参考标定点在传感器平面形成的弥散圆特征的直径d
p
和在传感器平面形成的弥散圆中心c
p
。
[0165]
步骤307、基于所有参考标定点对应的弥散圆特征和所有参考标定点对应的三维物理坐标,得到目标位姿变换关系。
[0166]
本技术实施例中,步骤307基于所有参考标定点对应的弥散圆特征和所有参考标定点对应的三维物理坐标,得到目标位姿变换关系的过程结合图19作出进一步地说明,
[0167]
步骤3071、基于弥散圆特征和所有参考标定点对应的三维物理坐标,采用非线性方程组最小二乘法,确定标定物坐标系与相机坐标系之间的初始位姿变换关系和光场相机的内部参数初始值。
[0168]
本技术实施例中,视觉机器人获得弥散圆特征(d
p
,c
pu
,c
pv
)和光场图像在相机坐标系下任一参考标定点坐标pc(p
cx
,p
cy
,p
cz
)之间的第一变换关系;这里,第一变换关系可以通过如下公式21表示,
[0169][0170]
这里,参照图14,公式21的推导过程可以通过如下公式22-公式28得到,具体地,对公式12进行变换处理,得到在微透镜平面形成的弥散圆特征的直径d
l
与在传感器平面形成的弥散圆特征的直径d
p
之间的关系,可通过公式22表示,
[0171][0172]
对公式10进行变换处理,得到在微透镜平面形成的弥散圆特征的直径d
l
和像点qc之间的关系,可通过公式23表示,
[0173][0174]
将公式23代入公式22中,得到在传感器平面形成的弥散圆特征的直径d
p
和像点qc之间的关系,可通过公式24表示,
[0175][0176]
由可得代入到公式24中,得到在传感器平面形成的弥散圆特征的直径d
p
和光场图像中任一参考标定点在相机坐标系下的坐标pc之间的关系,可通过公式26表示
[0177][0178]
即
[0179][0180]
由可得又因为则有在传感器平面形成的弥散圆中心c
p
中的c
pu
和光场图像中任一参考标定点在相机坐标系下的坐标pc之间的关系,可通过公式27表示;在传感器平面形成的弥散圆中心c
p
中的c
pv
和光场图像中任一参考标定点在相机坐标系下的坐标pc之间的关系,可通过公式28表示,
[0181][0182][0183]
进而基于公式26-至公式28,得到弥散圆特征(d
p
,c
pu
,c
pv
)和光场图像在相机坐标系下任一参考标定点坐标pc(p
cx
,p
cy
,p
cz
)之间的第一变换关系。
[0184]
进一步地,获得相机的内部参数主透镜的像距si、微透镜焦距f
l
、像素真实物理尺寸p
p
、主透镜有效光圈直径pm、主透镜焦距fm;为了简化,令;为了简化,令则公式21可简化为如下公式29,
[0185][0186]
进一步地,引入光场图像中任一参考标定点在相机坐标系下的坐标pc(p
cx
,p
cy
,p
cz
)与对应的参考标定点在标定物坐标系下的三维物理坐标(p
wx
,p
wy
,0)之间的位姿变换关系可以通过如下公式30表示,
[0187][0188]
其中,rot表示光场图像中参考标定点在相机坐标系下的坐标与对应的参考标定点在标定物坐标系下之间的旋转变换关系,rot表示光场图像中参考标定点在相机坐标系
下的坐标与对应的参考标定点在标定物坐标系下之间的平移变换关系,其中,下的坐标与对应的参考标定点在标定物坐标系下之间的平移变换关系,其中,
[0189]
将公式30代入公式21中,可整理成如下公式31,
[0190][0191]
对于第n个位姿处的标定物,由于rotn和pos
tn
恒定,参考点阵中第m个位置处的弥散圆均满足公式32,即:
[0192][0193]
这里,令
[0194][0195]
那么,对于第n个位姿标定物上所有参考点阵,则有:进一步地,通过奇异值分解(the singular value decomposition,svd)得到最小二乘解再通过约束条件得到的线性解,的线性解包括光场相机的内部参数初始值。如公式33所示,
[0196][0197]
其中,vi表示向量的最小二乘解v的第i个元素,上述简化时,令的最小二乘解v的第i个元素,上述简化时,令
[0198]
进一步地,基于的线性解,得到不同位姿下的旋转变换关系rotn、平移变换关系pos
tn
和光场相机的内部参数初始值,基于旋转变换关系和平移变换关系,得到标定物坐标系与相机坐标系之间的初始位姿变换关系。
[0199]
这里,基于旋转变换关系和平移变换关系,得到不同位姿下,标定物坐标系与相机坐标系之间的初始位姿变换关系,可以通过如下公式34表示,
[0200][0201]
步骤3072、构建非线性优化模型,将初始位姿变换关系和内部参数初始值输入至非线性优化模型中,得到非线性优化模型输出的目标位姿变换关系。
[0202]
这里,根据理想薄透镜模型,相机的理论内部参数可以计算由:
[0203]
si=fm(1-m)
[0204]f#,m
=f
#,l
/(1-m)
[0205]
pm=fm/f
#,m
[0206]
m=-1
[0207]
其中,m=-1,相机光心投影中心像素坐标位置q
p
(q
pu
,q
pv
)可以用相机视图中心像素坐标位置作为初始值,即q
pu
=3960,q
pv
=2718。表2给出了相机内部参数。
[0208]
相机参数数值pmr可知f
l
可知p
l
可知p
p
可知fm
200(mm)m-1f
#,l
8.1349f
#,m
4.0675si400(mm)pm49.1707q
pu
3960q
pv
2718
[0209]
表2
[0210]
将表2中的数据作为相机内部参数的输入初始值,求解的初始位姿变换关系chwn作为相机外部参数的输入初始值,最小化弥散圆重投影误差进行非线性优化。确定弥散圆重投影误差函数为非线性优化模型:
[0211]
agmin{||[d
p
;c
pu
;c
pv
]
compute-[d
p
;c
pu
;c
pv
]
estimate
||2}
[0212]
其中,[d
p
;c
pu
;c
pv
]
compute
是通过将已知的参考点阵在标定物坐标系下的坐标借由初始位姿变换关系chwn和公式21从而计算出的弥散圆特征,[d
p
;c
pu
;c
pv
]
estimate
是通过公式6拟合提取出的弥散圆特征。参照图20所示,图20示出的是点状特征重投影过程,浅灰色的点状特征为计算出的特征,深灰色的点状特征为搜索出的特征。
[0213]
步骤308、基于目标位姿变换关系对视觉机器人进行手眼标定。
[0214]
需要说明的是,本实施例中与其它实施例中相同步骤和相同内容的说明,可以参照其它实施例中的描述,此处不再赘述。
[0215]
本技术的实施例提供一种视觉机器人,该视觉机器人可以用于实施图3、图6、图8、图10、图13、图16和图19对应的实施例提供的一种手眼标定方法,参照图21所示,该视觉机器人21包括:
[0216]
光场相机401,用于拍摄光场图像;
[0217]
机器人本体402,机器人本体具有基座,以及设置在基座上的机械手,机械手用于固定待拍摄物体;
[0218]
控制装置403,用于获得标定物中确定的参考点阵中的任一参考标定点,在标定物坐标系下的三维物理坐标;控制视觉机器人的机械手运动,获得机械手在至少两个位姿下,通过视觉机器人的光场相机拍摄参考点阵得到的光场图像;基于至少两个光场图像和参考点阵中所有参考标定点对应的三维物理坐标,得到标定物相对于光场相机的目标位姿变换关系;基于目标位姿变换关系对视觉机器人进行手眼标定。
[0219]
本技术一些实施例中,控制装置403,还用于通过光场渲染算法对至少两个光场图像中每一光场图像进行渲染处理,得到每一光场图像对应的多视角图像,其中,多视角图像包括中心视角图像;通过外极线图像算法对每一光场图像对应的多视角图像进行处理,得到每一光场图像对应的视差图像;基于中心视角图像中所有参考标定点,对视差图像中的标定点进行定位,得到视差图像中的目标标定点;基于目标标定点在图像像素坐标系下的第一像素位置,得到目标标定点在相机坐标系下的三维点云坐标;基于所有目标标定点对应的三维点云坐标,与对应位置的参考标定点对应的三维物理坐标,得到目标位姿变换关系。
[0220]
本技术一些实施例中,控制装置403,还用于获得所有参考标定点中每一参考标定点在图像像素坐标系下的第二像素位置;确定视差图像在图像像素坐标系下,与第二像素位置对应的标定点为目标标定点。
[0221]
本技术一些实施例中,控制装置403,还用于获得视差图像中的每一目标标定点的视差值;基于第一像素位置和视差值,得到三维点云坐标。
[0222]
本技术一些实施例中,控制装置403,还用于获取通过光场相机拍摄纯色标定物所获得纯色图像;对纯色图像进行标定处理,得到光场相机的微透镜阵列中每一微透镜的中心于光场相机的传感器平面的进行投影时,在图像坐标系下的投影中心的第三像素位置;针对所有投影中心,基于获得的第一预设窗口,确定每一光场图像中任一参考标定点在传感器平面中,对应第三像素位置的点状特征的第四像素位置,得到所有投影中心对应的所有点状特征在图像坐标系下的第四像素位置;其中,第一预设窗口用于包括参考标定点对应的所有投影中心;基于所有投影中心的第三像素位置和所有点状特征的第四像素位置,确定参考标定点对应的弥散圆特征;基于所有参考标定点对应的弥散圆特征和所有参考标定点对应的三维物理坐标,得到目标位姿变换关系。
[0223]
本技术一些实施例中,控制装置403,还用于在光场图像中框定以第三像素位置为中心,确定具有第一预设窗口的第一区域;从第一区域的所有像素中,确定像素特征满足特征选择条件的像素为第一目标点;在光场图像中框定以第一目标点为中心,确定具有第二预设窗口的第二区域;其中,第二预设窗口的大小小于第一预设窗口的大小;基于对第二区域的所有像素的像素位置进行灰度加权平均,得到点状特征的第四像素位置。
[0224]
本技术一些实施例中,像素特征满足特征选择条件,包括:第一区域内像素的亮度值大于亮度阈值且像素的亮度值大于或等于相邻像素的亮度值,以及像素与第三像素位置对应的投影中心之间的距离最短。
[0225]
本技术一些实施例中,控制装置403,还用于基于弥散圆特征和所有参考标定点对应的三维物理坐标,采用非线性方程组最小二乘法,确定标定物坐标系与相机坐标系之间的初始位姿变换关系和光场相机的内部参数初始值;构建非线性优化模型,将初始位姿变换关系和内部参数初始值输入至非线性优化模型中,得到非线性优化模型输出的目标位姿变换关系。
[0226]
基于前述实施例,该手眼标定设备可以用于图3、图6、图8、图10、图13、图16和图19对应的实施例提供的一种手眼标定方法,参照图22所示,该手眼标定设备22(图22中的手眼标定设备22与图21中的视觉机器人21相对应)包括:处理器501和存储器502,其中:
[0227]
存储器502,用于存储手眼标定程序;
[0228]
处理器501,用于执行存储器中502存储的手眼标定程序,实现以下步骤:
[0229]
获得标定物中确定的参考点阵中的任一参考标定点,在标定物坐标系下的三维物理坐标;
[0230]
控制视觉机器人的机械手运动,获得机械手在至少两个位姿下,通过视觉机器人的光场相机拍摄参考点阵得到的光场图像;
[0231]
基于至少两个光场图像和参考点阵中所有参考标定点对应的三维物理坐标,得到标定物相对于光场相机的目标位姿变换关系;
[0232]
基于目标位姿变换关系对视觉机器人进行手眼标定。
[0233]
本技术的其他实施例中,处理器501用于执行存储器502中存储的手眼标定程序,以实现以下步骤:
[0234]
通过光场渲染算法对至少两个光场图像中每一光场图像进行渲染处理,得到每一光场图像对应的多视角图像,其中,多视角图像包括中心视角图像;通过外极线图像算法对每一光场图像对应的多视角图像进行处理,得到每一光场图像对应的视差图像;基于中心视角图像中所有参考标定点,对视差图像中的标定点进行定位,得到视差图像中的目标标定点;基于目标标定点在图像像素坐标系下的第一像素位置,得到目标标定点在相机坐标系下的三维点云坐标;基于所有目标标定点对应的三维点云坐标,与对应位置的参考标定点对应的三维物理坐标,得到目标位姿变换关系。
[0235]
本技术的其他实施例中,处理器501用于执行存储器502中存储的手眼标定程序,以实现以下步骤:
[0236]
获得所有参考标定点中每一参考标定点在图像像素坐标系下的第二像素位置;确定视差图像在图像像素坐标系下,与第二像素位置对应的标定点为目标标定点。
[0237]
本技术的其他实施例中,处理器501用于执行存储器502中存储的手眼标定程序,以实现以下步骤:
[0238]
获得视差图像中的每一目标标定点的视差值;基于第一像素位置和视差值,得到三维点云坐标。
[0239]
本技术的其他实施例中,处理器501用于执行存储器502中存储的手眼标定程序,以实现以下步骤:
[0240]
获取通过光场相机拍摄纯色标定物所获得纯色图像;对纯色图像进行标定处理,得到光场相机的微透镜阵列中每一微透镜的中心于光场相机的传感器平面的进行投影时,在图像坐标系下的投影中心的第三像素位置;针对所有投影中心,基于获得的第一预设窗口,确定每一光场图像中任一参考标定点在传感器平面中,对应第三像素位置的点状特征的第四像素位置,得到所有投影中心对应的所有点状特征在图像坐标系下的第四像素位置;其中,第一预设窗口用于包括参考标定点对应的所有投影中心;基于所有投影中心的第三像素位置和所有点状特征的第四像素位置,确定参考标定点对应的弥散圆特征;基于所有参考标定点对应的弥散圆特征和所有参考标定点对应的三维物理坐标,得到目标位姿变换关系。
[0241]
本技术的其他实施例中,处理器501用于执行存储器502中存储的手眼标定程序,以实现以下步骤:
[0242]
在光场图像中框定以第三像素位置为中心,确定具有第一预设窗口的第一区域;从第一区域的所有像素中,确定像素特征满足特征选择条件的像素为第一目标点;在光场图像中框定以第一目标点为中心,确定具有第二预设窗口的第二区域;其中,第二预设窗口的大小小于第一预设窗口的大小;基于对第二区域的所有像素的像素位置进行灰度加权平均,得到点状特征的第四像素位置。
[0243]
本技术的其他实施例中,像素特征满足特征选择条件,包括:第一区域内像素的亮度值大于亮度阈值且像素的亮度值大于或等于相邻像素的亮度值,以及像素与第三像素位置对应的投影中心之间的距离最短。
[0244]
本技术的其他实施例中,处理器501用于执行存储器502中存储的手眼标定程序,
以实现以下步骤:
[0245]
基于弥散圆特征和所有参考标定点对应的三维物理坐标,采用非线性方程组最小二乘法,确定标定物坐标系与相机坐标系之间的初始位姿变换关系和光场相机的内部参数初始值;构建非线性优化模型,将初始位姿变换关系和内部参数初始值输入至非线性优化模型中,得到非线性优化模型输出的目标位姿变换关系。
[0246]
本技术的实施例提供一种计算机存储介质,该计算机存储介质存储有一个或者多个程序,该一个或者多个程序可被一个或者多个处理器执行,以实现图3、图6、图8、图10、图13、图16和图19对应的实施例提供的一种手眼标定方法。
[0247]
需要说明的是,上述计算机存储介质/存储器可以是只读存储器(read only memory,rom)、可编程只读存储器(programmable read-only memory,prom)、可擦除可编程只读存储器(erasable programmable read-only memory,eprom)、电可擦除可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、磁性随机存取存储器(ferromagnetic random access memory,fram)、快闪存储器(flash memory)、磁表面存储器、光盘、或只读光盘(compact disc read-only memory,cd-rom)等存储器;也可以是包括上述存储器之一或任意组合的各种终端,如移动电话、计算机、平板设备、个人数字助理等。
[0248]
在本技术所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
[0249]
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
[0250]
另外,在本技术各实施例中的各功能单元可以全部集成在一个处理模块中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0251]
本技术所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
[0252]
本技术所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
[0253]
本技术所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
[0254]
以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
技术特征:1.一种手眼标定方法,其特征在于,所述方法包括:获得标定物中确定的参考点阵中的任一参考标定点,在标定物坐标系下的三维物理坐标;控制视觉机器人的机械手运动,获得所述机械手在至少两个位姿下,通过所述视觉机器人的光场相机拍摄所述参考点阵得到的光场图像;基于至少两个光场图像和所述参考点阵中所有参考标定点对应的三维物理坐标,得到所述标定物相对于所述光场相机的目标位姿变换关系;基于所述目标位姿变换关系对所述视觉机器人进行手眼标定。2.根据权利要求1所述的手眼标定方法,其特征在于,所述基于至少两个光场图像和所述参考点阵中所有参考标定点对应的三维物理坐标,得到所述标定物相对于所述光场相机的目标位姿变换关系,包括:通过光场渲染算法对所述至少两个光场图像中每一光场图像进行渲染处理,得到所述每一光场图像对应的多视角图像,其中,所述多视角图像包括中心视角图像;通过外极线图像算法对所述每一光场图像对应的多视角图像进行处理,得到所述每一光场图像对应的视差图像;基于所述中心视角图像中所述所有参考标定点,对所述视差图像中的标定点进行定位,得到所述视差图像中的目标标定点;基于所述目标标定点在图像像素坐标系下的第一像素位置,得到所述目标标定点在相机坐标系下的三维点云坐标;基于所有目标标定点对应的三维点云坐标,与对应位置的参考标定点对应的三维物理坐标,得到所述目标位姿变换关系。3.根据权利要求2所述的手眼标定方法,其特征在于,所述基于所述中心视角图像中所述所有参考标定点,对所述视差图像中的标定点进行定位,得到所述视差图像中的目标标定点,包括:获得所述所有参考标定点中每一参考标定点在图像像素坐标系下的第二像素位置;确定所述视差图像在所述图像像素坐标系下,与所述第二像素位置对应的标定点为所述目标标定点。4.根据权利要求2所述的手眼标定方法,其特征在于,所述基于所述目标标定点在图像像素坐标系下的第一像素位置,得到所述目标标定点在相机坐标系下的第二三维点云坐标,包括:获得所述视差图像中的每一目标标定点的视差值;基于所述第一像素位置和所述视差值,得到所述三维点云坐标。5.根据权利要求1所述的手眼标定方法,其特征在于,所述基于至少两个光场图像和所述参考点阵中所有参考标定点对应的三维物理坐标,得到所述标定物相对于所述光场相机的目标位姿变换关系,包括:获取通过所述光场相机拍摄纯色标定物所获得纯色图像;对所述纯色图像进行标定处理,得到所述光场相机的微透镜阵列中每一微透镜的中心于所述光场相机的传感器平面的进行投影时,在图像坐标系下的投影中心的第三像素位置;
针对所有投影中心,基于获得的第一预设窗口,确定每一光场图像中任一参考标定点在所述传感器平面中,对应所述第三像素位置的点状特征的第四像素位置,得到所述所有投影中心对应的所有点状特征在所述图像坐标系下的第四像素位置;其中,所述第一预设窗口用于包括所述参考标定点对应的所述所有投影中心;基于所述所有投影中心的第三像素位置和所述所有点状特征的第四像素位置,确定所述参考标定点对应的弥散圆特征;基于所述所有参考标定点对应的弥散圆特征和所述所有参考标定点对应的三维物理坐标,得到所述目标位姿变换关系。6.根据权利要求5所述的手眼标定方法,其特征在于,所述光场图像是经过灰度处理的图像,所述基于获得的第一预设窗口,确定每一光场图像中任一参考标定点在所述传感器平面中,对应所述第三像素位置的点状特征的第四像素位置,包括:在所述光场图像中框定以所述第三像素位置为中心,确定具有所述第一预设窗口的第一区域;从所述第一区域的所有像素中,确定像素特征满足特征选择条件的像素为第一目标点;在所述光场图像中框定以所述第一目标点为中心,确定具有第二预设窗口的第二区域;其中,所述第二预设窗口的大小小于所述第一预设窗口的大小;基于对所述第二区域的所有像素的像素位置进行灰度加权平均,得到所述点状特征的第四像素位置。7.根据权利要求6所述的手眼标定方法,其特征在于,所述像素特征满足特征选择条件,包括:所述第一区域内像素的亮度值大于亮度阈值且所述像素的亮度值大于或等于相邻像素的亮度值,以及所述像素与所述第三像素位置对应的投影中心之间的距离最短。8.根据权利要求5所述的手眼标定方法,其特征在于,所述基于所述所有参考标定点对应的弥散圆特征和所述所有参考标定点对应的三维物理坐标,得到所述目标位姿变换关系,包括:基于所述弥散圆特征和所述所有参考标定点对应的三维物理坐标,采用非线性方程组最小二乘法,确定所述标定物坐标系与所述相机坐标系之间的初始位姿变换关系和所述光场相机的内部参数初始值;构建非线性优化模型,将所述初始位姿变换关系和所述内部参数初始值输入至所述非线性优化模型中,得到所述非线性优化模型输出的目标位姿变换关系。9.一种视觉机器人,其特征在于,所述视觉机器人包括:光场相机,用于拍摄光场图像;机器人本体,所述机器人本体具有基座,以及设置在所述基座上的机械手,所述机械手用于固定待拍摄物体;控制装置,用于获得标定物中确定的参考点阵中的任一参考标定点,在标定物坐标系下的三维物理坐标;控制视觉机器人的机械手运动,获得所述机械手在至少两个位姿下,通过所述视觉机器人的光场相机拍摄所述参考点阵得到的光场图像;基于至少两个光场图像和所述参考点阵中所有参考标定点对应的三维物理坐标,得到所述标定物相对于所述光场相机的目标位姿变换关系;基于所述目标位姿变换关系对所述视觉机器人进行手眼标定。
10.一种手眼标定设备,其特征在于,所述手眼标定设备包括:存储器,用于存储手眼标定程序;处理器,用于执行所述存储器中存储的手眼标定程序,实现如权利要求1至8中任一项所述的手眼标定方法。11.一种存储介质,其特征在于,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如权利要求1至8中任一项所述的手眼标定方法。
技术总结本申请实施例公开了一种手眼标定方法,方法包括:获得标定物中确定的参考点阵中的任一参考标定点,在标定物坐标系下的三维物理坐标;控制视觉机器人的机械手运动,获得机械手在至少两个位姿下,通过视觉机器人的光场相机拍摄参考点阵得到的光场图像;基于至少两个光场图像和参考点阵中所有参考标定点对应的三维物理坐标,得到标定物相对于光场相机的目标位姿变换关系;基于目标位姿变换关系对视觉机器人进行手眼标定。本申请实施例同时还公开了一种视觉机器人、手眼标定设备和存储介质。手眼标定设备和存储介质。手眼标定设备和存储介质。
技术研发人员:李浩天 徐青岚
受保护的技术使用者:奕目(上海)科技有限公司
技术研发日:2022.07.22
技术公布日:2022/11/1