一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

相机外参标定方法、装置、电子设备及存储介质与流程

2022-03-14 04:28:56 来源:中国专利 TAG:


1.本公开涉及计算机技术领域,尤其涉及一种相机外参标定方法、装置、电子设备及存储介质。


背景技术:

2.增强现实(augmentedreality,ar)是将虚拟物体叠加在真实场景中并加以显示、交互的系统。目前的ar技术已经成为虚拟现实研究中的一个重要领域,也是人机界面技术发展的一个重要方向。
3.现有技术往往采用利用外部标记物对多相机外参进行人工标定方案:首先需要人工设计并搭建外部标记物;在确定多相机系统的安装配置后,需要操作员或机械臂带动外部标记物在拍摄场景范围内移动,并同步拍摄相机数据;接着在离线处理阶段,在采集到的各视角标定数据中检测标记物中的特征点,并利用光束平差法(bundleadjustment)对各相机的外参进行求解。
4.可以看出,采集额外的标定数据过程繁琐、耗时耗力,且离线处理流程耗时较长,导致在每次改变相机配置后对多相机外参进行标定时的存在标定效率不高的问题。


技术实现要素:

5.本公开提供一种相机外参标定方法、装置、电子设备及存储介质,以至少解决相关技术中对多相机外参进行标定时的存在标定效率不高的问题。本公开的技术方案如下:
6.根据本公开实施例的第一方面,提供一种相机外参标定方法,所述方法包括:
7.对目标对象进行多相机拍摄,以获得不同相机视角下的多张目标对象图像;每个所述相机视角对应于所述多相机中的一个相机;
8.将多张所述目标对象图像输入预训练的三维重建网络,生成所述目标对象在每张所述目标对象图像中的三维网格模型;
9.确定各个所述相机视角下的所述三维网格模型在对应的相机坐标系中的顶点坐标集合;
10.根据各个所述相机视角对应的顶点坐标集合在同一坐标系中的相对位置关系,确定各个所述相机视角对应相机的外参标定值。
11.在一种可能实现方式中,所述根据各个所述相机视角对应的顶点坐标集合在同一坐标系中的相对位置关系,确定各个所述相机视角对应相机的外参标定值,包括;
12.将各个所述相机视角中的其中一个相机视角作为基准相机视角;
13.基于所述基准相机视角对应的顶点坐标集合与各个所述相机视角对应的顶点坐标集合之间的顶点位置差异,确定各个所述相机视角对应相机的外参标定值。
14.在一种可能实现方式中,所述基于所述基准相机视角对应的顶点坐标集合与各个所述相机视角对应的顶点坐标集合之间的顶点位置差异,确定各个所述相机视角对应相机的外参标定值,包括;
15.分别求解将各个所述相机视角对应的顶点坐标集合对齐到所述基准相机视角对应的顶点坐标集合所在坐标系上时所需的刚体变换;
16.将求解得到的各个所述相机视角对应的刚体变换,作为各个所述相机视角对应相机的外参标定值。
17.在一种可能实现方式中,所述根据各个所述相机视角对应的顶点坐标集合在同一坐标系中的相对位置关系,确定各个所述相机视角对应相机的外参标定值的步骤之后,还包括;
18.将多张所述目标对象图像输入预训练的关键点检测网络,得到所述目标对象在每张所述目标对象图像中的二维关键点;
19.基于各个所述相机视角对应的所述二维关键点的位置信息,对各个所述相机视角对应相机的外参标定值进行优化,得到各个所述相机视角对应相机的优化外参标定值。
20.在一种可能实现方式中,所述基于各个所述相机视角对应的所述二维关键点的位置信息,对各个所述相机视角对应相机的外参标定值进行优化,得到各个所述相机视角对应相机的优化外参标定值,包括;
21.基于多张所述目标对象图像,确定各个所述相机视角下的所述二维关键点在对应的图像坐标系中的关键点二维坐标;
22.在各个所述相机视角对应的顶点坐标集合中,确定各个所述相机视角下的所述二维关键点在对应的相机坐标系中的关键点三维坐标;
23.根据各个所述相机视角对应的所述关键点三维坐标和各个所述相机视角下对应的所述关键点二维坐标,对各个所述相机视角对应相机的外参标定值进行优化,得到各个所述相机视角对应相机的优化外参标定值。
24.在一种可能实现方式中,所述根据各个所述相机视角对应的所述关键点三维坐标和各个所述相机视角下对应的所述关键点二维坐标,对各个所述相机视角对应相机的外参标定值进行优化,得到各个所述相机视角对应相机的优化外参标定值,包括;
25.根据各个所述相机视角对应的所述关键点三维坐标和各个所述相机视角下对应的所述关键点二维坐标,确定各个所述相机视角对应的相机在采用所述外参标定值时的投影误差;所述投影误差为所述相机视角对应的相机将所述关键点三维坐标投影至所述相机的像平面而得到的二维坐标与所述关键点二维坐标之间的误差;
26.基于各个所述相机视角对应的相机在采用所述外参标定值时的投影误差,对各个所述相机视角对应相机的所述外参标定值进行调整,得到各个所述相机视角对应相机的调整后外参标定值,作为各个所述相机视角对应相机的优化外参标定值;
27.其中,所述相机视角对应的相机在采用所述优化外参标定值时的投影误差满足预设条件。
28.在一种可能实现方式中,所述根据各个所述相机视角对应的所述关键点三维坐标和各个所述相机视角下对应的所述关键点二维坐标,确定各个所述相机视角对应的相机的投影误差,包括:
29.通过预设的投影函数和各个所述相机视角对应相机的外参标定值,分别将各个所述相机视角对应的所述关键点三维坐标投影至对应相机的像平面上,得到各个所述相机视角对应的所述二维关键点在对应所述相机的像平面上的投影点;
30.确定各个所述相机视角对应的所述投影点在对应的图像坐标系中的投影点二维坐标;
31.根据每个所述相机视角对应的所述投影点二维坐标和对应的所述关键点二维坐标之间的差异,确定各个所述相机视角对应的相机的投影误差。
32.根据本公开实施例的第二方面,提供一种相机外参标定装置,包括:
33.获取单元,被配置为执行对目标对象进行多相机拍摄,以获得不同相机视角下的多张目标对象图像;每个所述相机视角对应于所述多相机中的一个相机;
34.重建单元,被配置为执行将多张所述目标对象图像输入预训练的三维重建网络,生成所述目标对象在每张所述目标对象图像中的三维网格模型;
35.确定单元,被配置为确定各个所述相机视角下的所述三维网格模型在对应的相机坐标系中的顶点坐标集合;
36.标定单元,被配置为执行根据各个所述相机视角对应的顶点坐标集合在同一坐标系中的相对位置关系,确定各个所述相机视角对应相机的外参标定值。
37.在一种可能实现方式中,所述标定单元,具体被配置为执行将各个所述相机视角中的其中一个相机视角作为基准相机视角;基于所述基准相机视角对应的顶点坐标集合与各个所述相机视角对应的顶点坐标集合之间的顶点位置差异,确定各个所述相机视角对应相机的外参标定值。
38.在一种可能实现方式中,所述标定单元,具体被配置为执行分别求解将各个所述相机视角对应的顶点坐标集合对齐到所述基准相机视角对应的顶点坐标集合所在坐标系上时所需的刚体变换;将求解得到的各个所述相机视角对应的刚体变换,作为各个所述相机视角对应相机的外参标定值。
39.在一种可能实现方式中,所述装置还包括;关键点检测单元,被配置为执行将多张所述目标对象图像输入预训练的关键点检测网络,得到所述目标对象在每张所述目标对象图像中的二维关键点;优化单元,被配置为执行基于各个所述相机视角对应的所述二维关键点的位置信息,对各个所述相机视角对应相机的外参标定值进行优化,得到各个所述相机视角对应相机的优化外参标定值。
40.在一种可能实现方式中,所述优化单元,具体被配置为执行基于多张所述目标对象图像,确定各个所述相机视角下的所述二维关键点在对应的图像坐标系中的关键点二维坐标;在各个所述相机视角对应的顶点坐标集合中,确定各个所述相机视角下的所述二维关键点在对应的相机坐标系中的关键点三维坐标;根据各个所述相机视角对应的所述关键点三维坐标和各个所述相机视角下对应的所述关键点二维坐标,对各个所述相机视角对应相机的外参标定值进行优化,得到各个所述相机视角对应相机的优化外参标定值。
41.在一种可能实现方式中,所述优化单元,具体被配置为执行根据各个所述相机视角对应的所述关键点三维坐标和各个所述相机视角下对应的所述关键点二维坐标,确定各个所述相机视角对应的相机在采用所述外参标定值时的投影误差;所述投影误差为所述相机视角对应的相机将所述关键点三维坐标投影至所述相机的像平面而得到的二维坐标与所述关键点二维坐标之间的误差;基于各个所述相机视角对应的相机在采用所述外参标定值时的投影误差,对各个所述相机视角对应相机的所述外参标定值进行调整,得到各个所述相机视角对应相机的调整后外参标定值,作为各个所述相机视角对应相机的优化外参标
定值;其中,所述相机视角对应的相机在采用所述优化外参标定值时的投影误差满足预设条件。
42.在一种可能实现方式中,所述优化单元,具体被配置为执行通过预设的投影函数和各个所述相机视角对应相机的外参标定值,分别将各个所述相机视角对应的所述关键点三维坐标投影至对应相机的像平面上,得到各个所述相机视角对应的所述二维关键点在对应所述相机的像平面上的投影点;确定各个所述相机视角对应的所述投影点在对应的图像坐标系中的投影点二维坐标;根据每个所述相机视角对应的所述投影点二维坐标和对应的所述关键点二维坐标之间的差异,确定各个所述相机视角对应的相机的投影误差。
43.根据本公开实施例的第三方面,提供一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如第一方面或第一方面的任一种可能实现方式所述的相机外参标定方法。
44.根据本公开实施例的第四方面,提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面或第一方面的任一种可能实现方式所述的相机外参标定方法。
45.根据本公开实施例的第五方面,提供一种计算机程序产品,所述程序产品包括计算机程序,所述计算机程序存储在可读存储介质中,设备的至少一个处理器从所述可读存储介质读取并执行所述计算机程序,使得设备执行第一方面的任一项实施例中所述的相机外参标定方法。
46.本公开的实施例提供的技术方案至少带来以下有益效果:通过对目标对象进行多相机拍摄,以获得不同相机视角下的多张目标对象图像;并通过预训练的三维重构网络,生成所述目标对象在每张所述目标对象图像中的三维网格模型;再确定各个所述相机视角下的所述三维网格模型在对应的相机坐标系中的顶点坐标集合;最后,根据各个所述相机视角对应的顶点坐标集合在同一坐标系中的相对位置关系,即可确定出各个所述相机视角对应相机的外参标定值;如此,无需额外设计并搭建外部标记物,并无需在确定多相机系统的安装配置后,带动外部标记物在拍摄场景范围内移动,并同步拍摄相机数据;并进行一系列地离线标定处理,避免了传统对多相机系统进行标定时的一系列繁琐且耗时耗力的操作,提高了在每次改变相机配置后对多相机外参进行标定时的标定效率。
47.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
48.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
49.图1是根据一示例性实施例示出的一种相机外参标定方法的应用环境图。
50.图2是根据一示例性实施例示出的一种相机外参标定方法的流程图。
51.图3是根据一示例性实施例示出的另一种相机外参标定方法的流程图。
52.图4是根据一示例性实施例示出的一种相机外参标定方法的流程框图。
53.图5是根据一示例性实施例示出的一种相机外参标定装置的框图。
54.图6是根据一示例性实施例示出的一种电子设备的内部结构图。
具体实施方式
55.为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
56.需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
57.本公开所提供的相机外参标定方法,可以应用于如图1所示的应用环境中。其中,多相机120通过网络与电子设备110进行通信。其中,电子设备110可以是但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。
58.图2是根据一示例性实施例示出的一种相机外参标定方法的流程图,如图2所示,该相机外参标定方法用于图1的电子设备110中,包括以下步骤。
59.在步骤s210中,对目标对象进行多相机拍摄,以获得不同相机视角下的多张目标对象图像。
60.其中,目标对象可以是指需要进行多视角动作捕捉的运动物体。例如,动物、人体等运动物体。
61.其中,目标对象图像可以是指包含有目标对象的彩色图像。
62.具体实现中,以目标对象为人体为例,当被采集人员进入多视角动作捕捉系统的采集区域后,电子设备控制多视角动作捕捉系统的多个拍摄相机开始对被采集人员进行多相机拍摄,进而供电子设备获得被采集人员在不同相机视角下的多张彩色图像即目标对象图像。其中,每个相机视角对应于多相机中的一个拍摄相机。
63.在步骤s220中,通过预训练的三维重构网络,生成目标对象在每张目标对象图像中的三维网格模型。
64.其中,预训练的三维重构网络可以是指基于深度学习训练得到的用于对输入图像中的物体进行三维网格模型重构的神经网络。实际应用中,电子设备通过预训练的三维重构网络对输入彩色图像中人体的三维形状及姿态进行估计与重建,得到图像中人体在相机坐标系下的三维空间表示。
65.具体实现中,当电子设备获得被采集人员在不同相机视角下的多张彩色图像即目标对象图像后,电子设备则将各张目标对象图像输入至预训练的三维重构网络,通过预训练的三维重构网络,对被采集人员的三维形状及姿态进行估计与重建,得到被采集人员在每张目标对象图像中的三维网格模型。
66.在步骤s230中,确定各个相机视角下的三维网格模型在对应的相机坐标系中的顶点坐标集合。
67.具体实现中,当电子设备得到被采集人员在每张目标对象图像中的三维网格模型后,电子设备则确定各个相机视角下的三维网格模型在对应的相机坐标系中的顶点坐标集合。
68.其中,各个相机视角下的三维网格模型在对应的相机坐标系中的顶点坐标集合可
以表示为{m0,m1,...,mi}:
69.其中,mi表示第i个相机坐标系(或相机视角)下的三维网格模型的顶点坐标集合。
70.在步骤s240中,根据各个相机视角对应的顶点坐标集合在同一坐标系中的相对位置关系,确定各个相机视角对应相机的外参标定值。
71.其中,相机外参可以是指与对应相机视角对应的相机的外参数,即相机位姿(r,t)。
72.具体实现中,当电子设备在获取到各个相机视角下的三维网格模型在对应的相机坐标系中的顶点坐标集合后,电子设备则确定各个相机视角对应的顶点坐标集合在同一坐标系中的相对位置关系,并基于各个相机视角对应的顶点坐标集合在同一坐标系中的相对位置关系,确定各个相机视角对应相机的外参标定值。
73.具体来说,电子设备可以将各个相机视角对应的顶点坐标集合统一至同一坐标系下,然后,电子设备在基于各个相机视角对应的顶点坐标集合在同一坐标系中的相对位置关系,确定出各个相机视角对应的相机之间的相对位姿关系,进而确定各个相机视角对应相机的外参标定值。
74.实际应用中,电子设备利用计算机图形处理器(gpu)可实时在线完成,如此,在每次改变多视角动作捕捉系统的相机配置后,被采集人员可直接进入采集区域拍摄,而无需进行繁琐的预标定过程。
75.本实施例的技术方案,通过对目标对象进行多相机拍摄,以获得不同相机视角下的多张目标对象图像;并通过预训练的三维重构网络,生成所述目标对象在每张所述目标对象图像中的三维网格模型;再确定各个所述相机视角下的所述三维网格模型在对应的相机坐标系中的顶点坐标集合;最后,根据各个所述相机视角对应的顶点坐标集合在同一坐标系中的相对位置关系,即可确定出各个所述相机视角对应相机的外参标定值;如此,无需额外设计并搭建外部标记物,并无需在确定多相机系统的安装配置后,带动外部标记物在拍摄场景范围内移动,并同步拍摄相机数据;并进行一系列地离线标定处理,避免了传统对多相机系统进行标定时的一系列繁琐且耗时耗力的操作,提高了在每次改变相机配置后对多相机外参进行标定时的标定效率。
76.在一示例性实施例中,根据各个相机视角对应的顶点坐标集合在同一坐标系中的相对位置关系,确定各个相机视角对应相机的外参标定值,包括;将各个相机视角中的其中一个相机视角作为基准相机视角;基于基准相机视角对应的顶点坐标集合与各个相机视角对应的顶点坐标集合之间的顶点位置差异,确定各个相机视角对应相机的外参标定值。
77.具体实现中,电子设备在根据各个相机视角对应的顶点坐标集合在同一坐标系中的相对位置关系,确定各个相机视角对应相机的外参标定值的过程中,具体包括:电子设备可以将各个相机视角中的其中一个相机视角作为基准相机视角。具体来说,电子设备可以将各个相机视角中第0个相机视角作为基准相机视角。
78.然后,电子设备再根据各个相机视角对应的顶点坐标集合在同一坐标系中的相对位置关系,确定各个相机视角对应相机的外参标定值。具体来说,电子设备可以将各个相机视角对应的顶点坐标集合统一至基准相机视角对应的顶点坐标集合所在的坐标系中,并基于基准相机视角对应的顶点坐标集合与各个相机视角对应的顶点坐标集合在基准相机视角对应的坐标系中的顶点位置差异,确定出各个相机视角对应的相机之间的相对位姿关
系,进而初步确定各个相机视角对应相机的外参标定值。
79.本实施例的技术方案,通过将各个相机视角中的其中一个相机视角作为基准相机视角;并基于基准相机视角对应的顶点坐标集合与各个相机视角对应的顶点坐标集合之间的顶点位置差异,确定各个相机视角对应相机的外参标定值,从而实现了准确地确定出各个相机视角对应的顶点坐标集合在同一坐标系中的相对位置关系,进而便于后续确定出各个相机视角对应的外参标定值。
80.在一示例性实施例中,基于基准相机视角对应的顶点坐标集合与各个相机视角对应的顶点坐标集合之间的顶点位置差异,确定各个相机视角对应相机的外参标定值,包括;分别求解将各个相机视角对应的顶点坐标集合对齐到基准相机视角对应的顶点坐标集合所在坐标系上时所需的刚体变换;将求解得到的各个相机视角对应的刚体变换,作为各个相机视角对应相机的外参标定值。
81.具体实现中,在电子设备基于基准相机视角对应的顶点坐标集合与各个相机视角对应的顶点坐标集合之间的顶点位置差异,确定各个相机视角对应相机的外参标定值的过程中,电子设备需要分别求解将各个相机视角对应的顶点坐标集合对齐到基准相机视角对应的顶点坐标集合坐标系上时所需的刚体变换;将求解得到的各个相机视角对应的刚体变换,作为各个相机视角对应相机的外参标定值。具体来说,电子设备可以采用svd法(奇异值分解算法),计算出基准相机视角对应的顶点坐标集合对齐到基准相机视角对应的顶点坐标集合所在坐标系上时所需的刚体变换,得到各个相机视角对应的刚体变换。更具体地,第i个相机视角对应的刚体变换(相机外参标定值)可以表示为ti={ri,ti},即第i个相机视角对应的相机外参标定值可以相当于将mi对齐至m0所在坐标系所需的刚体变换。
82.其中,ri=v
it
·
ui,ti=c
i-(ri·
c0),
83.其中,ci为第i个相机视角下的三维网格模型在对应的相机坐标系中的中心点。
84.其中,svd求解刚体变换的中间变量li=m0·
mi。
85.电子设备将求解得到的各个相机视角对应的刚体变换,作为各个相机视角对应相机的外参标定值。
86.本实施例的技术方案,通过将各个相机视角中的其中一个相机视角作为基准相机视角,并分别求解将各个相机视角对应的顶点坐标集合对齐到基准相机视角对应的顶点坐标集合所在坐标系上时所需的刚体变换;使得求解得到的各个相机视角对应的刚体变换可以准确地表征各个相机视角对应的顶点坐标集合在同一坐标系中的相对位置关系。
87.在一示例性实施例中,根据各个相机视角对应的顶点坐标集合在同一坐标系中的相对位置关系,确定各个相机视角对应相机的外参标定值的步骤之后,还包括;将多张目标对象图像输入预训练的关键点检测网络,得到目标对象在每张目标对象图像中的二维关键点;基于各个相机视角对应的二维关键点的位置信息,对各个相机视角对应相机的外参标定值进行优化,得到各个相机视角对应相机的优化外参标定值。
88.其中,当目标对象为人体时,目标对象图像中的二维关键点可以是目标对象在目标对象图像中的关节点。
89.其中,预训练的关键点检测网络可以是指基于深度学习训练并利用海量标注数据训练得到的用于对输入图像中的物体关键点识别的神经网络。实际应用中,电子设备通过
预训练的关键点检测网络对输入彩色图片中人体各个关节在图像中的位置进行检测与定位。
90.具体实现中,电子设备在根据各个相机视角对应的顶点坐标集合在同一坐标系中的相对位置关系,确定各个相机视角对应相机的外参标定值的步骤之后,具体还包括:电子设备可以将各张目标对象图像输入至预训练的关键点检测网络,通过预训练的关键点检测网络,确定目标对象在每张目标对象图像中的二维关键点。电子设备在基于各个相机视角对应的二维关键点的位置信息,对各个相机视角对应相机的外参标定值进行优化,得到各个相机视角对应相机的优化外参标定值。
91.本实施例的技术方案,当电子设备根据各个相机视角对应的顶点坐标集合在同一坐标系中的相对位置关系,确定各个相机视角对应相机的外参标定值之后,通过进一步地将多张目标对象图像输入预训练的关键点检测网络,得到目标对象在每张目标对象图像中的二维关键点;基于各个相机视角对应的二维关键点的位置信息,对各个相机视角对应相机的外参标定值进行进一步地优化,使得得到的各个相机视角对应相机的优化外参标定值可以更为准确地描述出各个相机视角对应相机的实际相机位姿。
92.在一示例性实施例中,基于各个相机视角对应的二维关键点的位置信息,对各个相机视角对应相机的外参标定值进行优化,得到各个相机视角对应相机的优化外参标定值,包括;基于多张目标对象图像,确定各个相机视角下的二维关键点在对应的图像坐标系中的关键点二维坐标;在各个相机视角对应的顶点坐标集合中,确定各个相机视角下的二维关键点在对应的相机坐标系中的关键点三维坐标;根据各个相机视角对应的关键点三维坐标和各个相机视角下对应的关键点二维坐标,对各个相机视角对应相机的外参标定值进行优化,得到各个相机视角对应相机的优化外参标定值。
93.具体实现中,电子设备基于各个所述相机视角对应的所述二维关键点的位置信息,对各个所述相机视角对应相机的外参标定值进行优化,得到各个所述相机视角对应相机的优化外参标定值的过程中,具体包括;基于多张目标对象图像,确定各个相机视角下的二维关键点在对应的图像坐标系中的关键点二维坐标。其中,各个相机视角下的关键点在对应的图像坐标系中的关键点二维坐标可以表示为{p0,p1,...,pi}:
94.其中,pi表示第i个相机坐标系(或相机视角)下的二维关键点在对应的图像坐标系中的关键点二维坐标。
95.同时,电子设备在各个相机视角对应的顶点坐标集合中,确定各个相机视角下的二维关键点在对应的相机坐标系中的关键点三维坐标;将关键点二维坐标和关键点三维坐标,作为关键点位置信息。其中,各个相机视角下的关键点在对应的相机坐标系中的关键点三维坐标可以表示为{x0,x1,...,xi}:
96.其中,xi表示第i个相机坐标系(或相机视角)下的二维关键点在对应的相机坐标系中的关键点三维坐标。
97.最后,电子设备再基于各个相机视角对应的关键点位置信息即根据各个相机视角对应的关键点三维坐标和各个相机视角下对应的关键点二维坐标,对各个相机视角对应相机的外参标定值进行优化,得到各个相机视角对应相机的优化外参标定值。
98.本实施例的技术方案,在对各个相机视角对应相机的外参标定值进行优化的过程中,通过预训练的关键点检测网络,确定目标对象在每张目标对象图像中的关键点;分别确
定各个相机视角下的关键点在对应的相机坐标系和对应的图像坐标系中的关键点位置信息;基于各个相机视角对应的关键点位置信息,准确地对各个相机视角对应相机的外参标定值进行进一步优化,使得得到各个相机视角对应的相机的优化外参标定值具有较高的精度。
99.在一示例性实施例中,根据各个相机视角对应的关键点三维坐标和各个相机视角下对应的关键点二维坐标,对各个相机视角对应相机的外参标定值进行优化,得到各个相机视角对应相机的优化外参标定值,包括;根据各个相机视角对应的关键点三维坐标和各个相机视角下对应的关键点二维坐标,确定各个相机视角对应的相机在采用外参标定值时的投影误差;基于各个相机视角对应的相机在采用外参标定值时的投影误差,对各个相机视角对应相机的外参标定值进行调整,得到各个相机视角对应相机的调整后外参标定值,作为各个相机视角对应相机的优化外参标定值。其中,相机视角对应的相机在采用优化外参标定值时的投影误差满足预设条件。
100.其中,投影误差为相机视角对应的相机将关键点三维坐标投影至相机的像平面而得到的二维坐标与关键点二维坐标之间的误差。
101.具体实现中,电子设备在根据各个相机视角对应的关键点三维坐标和各个相机视角下对应的关键点二维坐标,对各个相机视角对应相机的外参标定值进行优化,得到各个相机视角对应相机的优化外参标定值的过程中,具体包括:电子设备通过根据各个相机视角对应的关键点三维坐标和各个相机视角下对应的关键点二维坐标,确定各个相机视角对应的相机在采用该外参标定值时,将关键点三维坐标投影至相机的像平面而得到的二维坐标与关键点二维坐标之间的误差。
102.在一示例性实施例中,根据各个相机视角对应的关键点三维坐标和各个相机视角下对应的关键点二维坐标,确定各个相机视角对应的相机的投影误差,具体包括:通过预设的投影函数,基于各个相机视角对应相机的外参标定值和各个相机视角对应的关键点三维坐标,将各个相机视角对应的关键点投影至对应相机的像平面上,得到各个相机视角对应的关键点在对应相机的像平面上的投影点;确定各个相机视角对应的投影点在对应的图像坐标系中的投影点二维坐标;根据每个相机视角对应的投影点二维坐标和对应的关键点二维坐标之间的差异,确定各个相机视角对应的相机的投影误差。
103.换句话说,电子设备可以通过预设的投影函数,基于各个相机视角对应相机的外参标定值和各个相机视角对应的关键点三维坐标,将各个相机视角对应的关键点在对应相机坐标系的关键点三维坐标转换为各个相机视角对应的关键点在对应图像坐标系的关键点三维坐标,作为各个相机视角对应的投影点二维坐标。
104.最后,电子设备基于各个相机视角对应的相机在采用外参标定值时的投影误差,对各个相机视角对应相机的外参标定值进行调整,得到各个相机视角对应相机的调整后外参标定值,作为各个相机视角对应相机的优化外参标定值。
105.其中,相机视角对应的相机在采用优化外参标定值时的投影误差满足预设条。
106.实际应用中,电子设备在基于各个相机视角对应的投影误差,对各个相机视角对应相机的外参标定值进行调整,得到各个相机视角对应的优化外参标定值的过程中,可以采用将各个相机视角对应的关键点三维坐标和各个相机视角下对应的关键点二维坐标作为约束,以待标定的各相机外参作为目标变量,建立非线性最小二乘问题,并利用最优化数
学方法对其进行求解,最终得到多视角动作捕捉系统中的各个相机的优化外参标定值。具体来说,电子设备可以将第i个相机视角对应相机的外参标定值ti={ri,ti},同时结合各个相机视角下的关键点在对应的图像坐标系中的关键点二维坐标{p0,p1,...,pi}:可建立如下最小二乘问题:
[0107][0108]
其中,πi为各相机内参所对应的投影函数。
[0109]
最后,电子设备通过使用最优化数学方法对上述非线性最小二乘问题进行求解,求解得出的{ri,ti}即为各相机外参的最终结果。实际应用中,可以使用高斯-牛顿法、levenberg

marquardt算法、牛顿法等进行求解。本方案不对具体的求解方法进行约束。
[0110]
本实施例的技术方案,通过根据各个相机视角对应的关键点三维坐标和各个相机视角下对应的关键点二维坐标,确定各个相机视角对应的相机的投影误差;并基于各个相机视角对应的投影误差,对各个相机视角对应相机的外参标定值进行调整,得到各个相机视角对应的调整后外参标定值,作为各个相机视角对应相机的优化外参标定值,使得各个相机视角对应的相机在采用优化外参标定值时将该二维关键点投影至相机的像平面时产生的误差满足预设条件。
[0111]
图3是根据一示例性实施例示出的另一种相机外参标定方法的流程图,如图3所示,该相机外参标定方法用于图1的电子设备110中,包括以下步骤。在步骤s302中,对目标对象进行多相机拍摄,以获得不同相机视角下的多张目标对象图像。在步骤s304中,通过预训练的三维重构网络,生成所述目标对象在每张所述目标对象图像中的三维网格模型。在步骤s306中,确定各个所述相机视角下的所述三维网格模型在对应的相机坐标系中的顶点坐标集合。在步骤s308中,将各个所述相机视角中的其中一个相机视角作为基准相机视角。在步骤s310中,分别求解将各个所述相机视角对应的顶点坐标集合对齐到所述基准相机视角对应的顶点坐标集合所在坐标系上时所需的刚体变换。在步骤s312中,将求解得到的各个所述相机视角对应的刚体变换,作为各个所述相机视角对应相机的外参标定值。在步骤s314中,通过预训练的关键点检测网络,确定所述目标对象在每张所述目标对象图像中的二维关键点。在步骤s316中,基于多张所述目标对象图像,确定各个所述相机视角下的所述二维关键点在对应的图像坐标系中的关键点二维坐标。在步骤s318中,在各个所述相机视角对应的顶点坐标集合中,确定各个所述相机视角下的所述二维关键点在对应的相机坐标系中的关键点三维坐标。在步骤s320中,根据各个所述相机视角对应的所述关键点三维坐标和各个所述相机视角下对应的所述关键点二维坐标,确定各个所述相机视角对应的相机在采用所述外参标定值时的投影误差。在步骤s322中,基于各个所述相机视角对应的相机在采用所述外参标定值时的投影误差,对各个所述相机视角对应相机的所述外参标定值进行调整,得到各个所述相机视角对应相机的调整后外参标定值,作为各个所述相机视角对应相机的优化外参标定值。需要说明的是,上述步骤的具体限定可以参见上文对一种相机外参标定方法的具体限定,在此不再赘述。
[0112]
应该理解的是,虽然图2和图3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2和图3中的
至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0113]
为了便于本领域技术人员的逻辑,图4提供了一种相机外参标定方法的流程框图;其中,对目标对象进行多相机拍摄,以获得不同相机视角下的多张目标对象图像;然后,将多张目标对象图像输入至人体二维关键点检测模块,对输入彩色图片中人体各个关节在图像中的位置进行检测与定位。同时,将多张目标对象图像输入至人体三维网格模型估计模块对输入彩色图像中人体的三维形状及姿态进行估计与重建,得到图像中人体在相机坐标系下的三维空间表示。再然后,将各相机各帧中检测到的人体关键点及三维网格模型数据输入至多帧多视角联合优化模块。该模块利用多帧多视角下的对应二维及三维关键点位置作为约束,以待标定的各相机外参作为目标变量,建立非线性最小二乘问题,并利用最优化数学方法对其进行求解,最终得到多视角动补系统中各相机的外参标定值。
[0114]
图5是根据一示例性实施例示出的一种相机外参标定装置框图。参照图5,该装置包括:
[0115]
获取单元510,被配置为执行对目标对象进行多相机拍摄,以获得不同相机视角下的多张目标对象图像;每个所述相机视角对应于所述多相机中的一个相机;
[0116]
重建单元520,被配置为执行将多张所述目标对象图像输入预训练的三维重建网络,生成所述目标对象在每张所述目标对象图像中的三维网格模型;
[0117]
确定单元530,被配置为确定各个所述相机视角下的所述三维网格模型在对应的相机坐标系中的顶点坐标集合;
[0118]
标定单元540,被配置为执行根据各个所述相机视角对应的顶点坐标集合在同一坐标系中的相对位置关系,确定各个所述相机视角对应相机的外参标定值。
[0119]
在一示例性实施例中,所述标定单元540,具体被配置为执行将各个所述相机视角中的其中一个相机视角作为基准相机视角;基于所述基准相机视角对应的顶点坐标集合与各个所述相机视角对应的顶点坐标集合之间的顶点位置差异,确定各个所述相机视角对应相机的外参标定值。
[0120]
在一示例性实施例中,所述标定单元540,具体被配置为执行分别求解将各个所述相机视角对应的顶点坐标集合对齐到所述基准相机视角对应的顶点坐标集合所在坐标系上时所需的刚体变换;将求解得到的各个所述相机视角对应的刚体变换,作为各个所述相机视角对应相机的外参标定值。
[0121]
在一示例性实施例中,所述装置还包括;关键点检测单元,被配置为执行将多张所述目标对象图像输入预训练的关键点检测网络,得到所述目标对象在每张所述目标对象图像中的二维关键点;优化单元,被配置为执行基于各个所述相机视角对应的所述二维关键点的位置信息,对各个所述相机视角对应相机的外参标定值进行优化,得到各个所述相机视角对应相机的优化外参标定值。
[0122]
在一示例性实施例中,所述优化单元,具体被配置为执行基于多张所述目标对象图像,确定各个所述相机视角下的所述二维关键点在对应的图像坐标系中的关键点二维坐标;在各个所述相机视角对应的顶点坐标集合中,确定各个所述相机视角下的所述二维关
键点在对应的相机坐标系中的关键点三维坐标;根据各个所述相机视角对应的所述关键点三维坐标和各个所述相机视角下对应的所述关键点二维坐标,对各个所述相机视角对应相机的外参标定值进行优化,得到各个所述相机视角对应相机的优化外参标定值。
[0123]
在一示例性实施例中,所述优化单元,具体被配置为执行根据各个所述相机视角对应的所述关键点三维坐标和各个所述相机视角下对应的所述关键点二维坐标,确定各个所述相机视角对应的相机在采用所述外参标定值时的投影误差;所述投影误差为所述相机视角对应的相机将所述关键点三维坐标投影至所述相机的像平面而得到的二维坐标与所述关键点二维坐标之间的误差;基于各个所述相机视角对应的相机在采用所述外参标定值时的投影误差,对各个所述相机视角对应相机的所述外参标定值进行调整,得到各个所述相机视角对应相机的调整后外参标定值,作为各个所述相机视角对应相机的优化外参标定值;其中,所述相机视角对应的相机在采用所述优化外参标定值时的投影误差满足预设条件。
[0124]
在一示例性实施例中,所述优化单元,具体被配置为执行通过预设的投影函数和各个所述相机视角对应相机的外参标定值,分别将各个所述相机视角对应的所述关键点三维坐标投影至对应相机的像平面上,得到各个所述相机视角对应的所述二维关键点在对应所述相机的像平面上的投影点;确定各个所述相机视角对应的所述投影点在对应的图像坐标系中的投影点二维坐标;根据每个所述相机视角对应的所述投影点二维坐标和对应的所述关键点二维坐标之间的差异,确定各个所述相机视角对应的相机的投影误差
[0125]
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0126]
图6是根据一示例性实施例示出的一种用于执行相机外参标定方法的设备600的框图。例如,设备600可以是移动电话、计算机、数字广播终端、消息收发设备、游戏控制台、平板设备、医疗设备、健身设备、个人数字助理等。
[0127]
参照图6,设备600可以包括以下一个或多个组件:处理组件602、存储器604、电力组件606、多媒体组件608、音频组件610、输入/输出(i/o)的接口612、传感器组件614以及通信组件616。
[0128]
处理组件602通常控制设备600的整体操作,诸如与显示、电话呼叫、数据通信、相机操作和记录操作相关联的操作。处理组件602可以包括一个或多个处理器620来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理组件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。
[0129]
存储器604被配置为存储各种类型的数据以支持在设备600的操作。这些数据的示例包括用于在设备600上操作的任何应用程序或方法的指令、联系人数据、电话簿数据、消息、图片、视频等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram)、电可擦除可编程只读存储器(eeprom)、可擦除可编程只读存储器(eprom)、可编程只读存储器(prom)、只读存储器(rom)、磁存储器、快闪存储器、磁盘或光盘。
[0130]
电源组件606为设备600的各种组件提供电力。电源组件606可以包括电源管理系统,一个或多个电源,及其他与为设备600生成、管理和分配电力相关联的组件。
[0131]
多媒体组件608包括在所述设备600和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件608包括一个前置摄像头和/或后置摄像头。当设备600处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
[0132]
音频组件610被配置为输出和/或输入音频信号。例如,音频组件610包括一个麦克风(mic),当设备600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件616发送。在一些实施例中,音频组件610还包括一个扬声器,用于输出音频信号。
[0133]
i/o接口612为处理组件602和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
[0134]
传感器组件614包括一个或多个传感器,用于为设备600提供各个方面的状态评估。例如,传感器组件614可以检测到设备600的打开/关闭状态,组件的相对定位,例如所述组件为设备600的显示器和小键盘,传感器组件614还可以检测设备600或设备600一个组件的位置改变,用户与设备600接触的存在或不存在,设备600方位或加速/减速和设备600的温度变化。传感器组件614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件614还可以包括光传感器,如cmos或ccd图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件614还可以包括加速度传感器、陀螺仪传感器、磁传感器、压力传感器或温度传感器。
[0135]
通信组件616被配置为便于设备600和其他设备之间有线或无线方式的通信。设备600可以接入基于通信标准的无线网络,如wifi,运营商网络(如2g、3g、4g或5g),或它们的组合。在一个示例性实施例中,通信组件616经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件616还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。
[0136]
在示例性实施例中,设备600可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
[0137]
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器604,上述指令可由设备600的处理器620执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
[0138]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本技术旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识
或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
[0139]
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献