一种三维场景重建方法、装置、电子设备和存储介质与流程

文档序号:27254454发布日期:2021-11-05 17:24阅读:77来源:国知局
一种三维场景重建方法、装置、电子设备和存储介质与流程

1.本发明实施例涉及视觉图像处理技术领域,尤其涉及一种三维场景重建方法、三维场景重建装置、设备和存储介质。


背景技术:

2.在无人机领域中,可通过无人机获取测绘区域的多张航拍图像,通过多张航拍图像重建测绘区域的三维场景,以通过该三维场景为其他业务提供诸如导航、航线规划、避障等服务器。
3.目前,常用的三维场景重建采用sfm(structure from motion,运动恢复结构)算法,对具有共视区域的多张图像,sfm算法利用特征匹配和几何估计等方式重建出稀疏三维点云,sfm算法后需要做全局优化,以减少点云的重投影误差,另外,为了得到真实世界坐标系下的三维场景,通常会在全局优化过程中加入gps数据约束。
4.目前的三维场景重建方法,如果sfm算法后直接做全局优化,造成sfm算法中仅依靠视觉信息重建,难以恢复出三维场景的尺度,该三维场景也没有对齐到世界坐标系上的绝对位置,如果直接在全局优化中增加gps数据约束,则会造成优化过程全程依赖gps数据,在gps数据存在一定误差的情况下,导致全局优化失败。因此,目前三维场景重建过程中存在gps数据约束不当,无法获得准确的三维场景的问题。


技术实现要素:

5.本发明提供了一种三维场景重建方法、三维场景重建装置、设备和存储介质,以解决三维场景重建存在gps数据约束不当,无法获得准确的三维场景的问题。
6.第一方面,本发明实施例提供了一种三维场景重建方法,包括:
7.获取目标区域的、具有共视区域的多张图像,所述图像具有拍摄所述图像的相机的gps数据;
8.基于预设的三维场景重建算法对所述图像进行三维场景重建获得所述目标区域的第一三维场景;
9.根据所述gps数据将所述第一三维场景变换为世界坐标系下的第二三维场景;
10.以所述gps数据为约束来对所述第二三维场景进行优化得到所述目标区域的最终三维场景。
11.可选地,所述基于预设的三维场景重建算法对所述图像进行三维场景重建获得所述目标区域的第一三维场景,包括:
12.利用运动恢复结构sfm算法对所述图像进行三维场景重建得到初始三维点云数据和所述相机的初始位姿数据;
13.对所述初始位姿数据和所述初始三维点云数据进行光束法平差优化得到第一三维场景,所述第一三维场景包括第一三维点云数据、所述相机的第一位姿数据和第一相机内参。
14.可选地,所述对所述初始位姿数据和所述初始三维点云数据进行光束法平差优化得到第一三维场景,包括:
15.获取所述相机的初始相机内参;
16.基于所述光束法平差优化算法,采用所述初始相机内参、所述初始位姿数据以及所述初始三维点云数据建立第一重投影误差函数;
17.对所述第一重投影误差函数求最小值得到第一相机内参、第一位姿数据以及第一三维点云数据以作为第一三维场景;
18.其中,所述初始相机内参包括所述相机的初始中心参数、初始畸变参数和初始焦距。
19.所述第一相机内参包括相机的第一中心参数和第一畸变参数。
20.可选地,所述根据所述gps数据将所述第一三维场景变换为世界坐标系下的第二三维场景,包括:
21.采用所述第一位姿数据和所述gps数据计算所述第一三维场景到世界坐标系的相似变换;
22.采用所述相似变换对所述第一位姿数据和所述第一三维点云数据进行变换得到的第二位姿数据和第二三维点云数据,以作为世界坐标系下的第二三维场景。
23.可选地,所述以所述gps数据为约束来对所述第二三维场景进行优化得到第三三维场景,包括:
24.采用所述gps数据和所述第二位姿数据建立gps损失函数;
25.基于所述光束法平差优化算法,采用所述第二三维场景中的第二位姿数据、第二三维点云数据以及第二相机内参建立第二重投影误差函数,所述第二相机内参包括初始相机焦距,以及所述第一相机内参的相机第一中心参数和第一畸变参数;
26.计算所述gps损失函数和所述第二重投影误差函数的和值;
27.对所述和值求最小值得到第三位姿数据、第三三维点云数据和第三相机内参以作为所述目标区域的最终三维场景。
28.可选地,所述采用所述gps数据和所述第二位姿数据建立gps损失函数,包括:
29.获取所述相机拍摄每张图像时的gps测量精度;
30.采用所述gps测量精度和第一重投影误差值计算每张图像的惩罚对角矩阵;
31.采用预设gps数据权值、所述gps数据、所述第二位姿数据以及所述惩罚对角矩阵建立gps损失函数。
32.可选地,在以所述gps数据为约束来对所述第二三维场景进行优化得到第三三维场景之前,还包括:
33.获取每张图像的地面控制点gcp数据;
34.所述以所述gps数据为约束来对所述第二三维场景进行优化得到所述目标区域的最终三维场景,包括:
35.以所述gps数据和所述地面控制点gcp数据为约束来对所述第二三维场景进行优化得到所述目标区域的最终三维场景。
36.可选地,在以所述gps数据为约束来对所述第二三维场景进行优化得到所述目标区域的最终三维场景之后,还包括:
37.获取每张图像的地面控制点gcp数据;
38.以所述gps数据和所述地面控制点gcp数据为约束来对所述最终三维场景进行优化得到第三三维场景。
39.第二方面,本发明实施例提供了一种三维场景重建装置,包括:
40.图像获取模块,用于获取目标区域的、具有共视区域的多张图像,所述图像具有拍摄所述图像的相机的gps数据;
41.三维场景重建模块,用于基于预设的三维场景重建算法对所述图像进行三维场景重建获得所述目标区域的第一三维场景;
42.坐标转换模块,用于根据所述gps数据将所述第一三维场景变换为世界坐标系下的第二三维场景;
43.三维场景优化模块,用于以所述gps数据为约束来对所述第二三维场景进行优化得到所述目标区域的最终三维场景。
44.可选地,所述三维场景重建模块包括:
45.sfm算法子模块,用于利用运动恢复结构sfm算法对所述图像进行三维场景重建得到初始三维点云数据和所述相机的初始位姿数据;
46.第一优化子模块,用于对所述初始位姿数据和所述初始三维点云数据进行光束法平差优化得到第一三维场景,所述第一三维场景包括第一三维点云数据、所述相机的第一位姿数据和第一相机内参。
47.可选地,所述第一优化子模块包括:
48.相机内参获取单元,用于获取所述相机的初始相机内参;
49.第一重投影误差函数建立单元,用于基于所述光束法平差优化算法,采用所述初始相机内参、所述初始位姿数据以及所述初始三维点云数据建立第一重投影误差函数;
50.第一优化单元,用于对所述第一重投影误差函数求最小值得到第一相机内参、第一位姿数据以及第一三维点云数据以作为第一三维场景;
51.其中,所述初始相机内参包括所述相机的初始中心参数、初始畸变参数和初始焦距;
52.所述第一相机内参包括所述相机的第一中心参数和第一畸变参数。
53.可选地,所述坐标转换模块包括:
54.相似变换计算子模块,用于采用所述第一位姿数据和所述gps数据计算所述第一三维场景到世界坐标系的相似变换;
55.转换子模块,用于采用所述相似变换对所述第一位姿数据和所述第一三维点云数据进行变换得到的第二位姿数据和第二三维点云数据,以作为世界坐标系下的第二三维场景。
56.可选地,所述三维场景优化模块包括:
57.gps损失函数建立子模块,用于采用所述gps数据和所述第二位姿数据建立gps损失函数;
58.第二重投影误差函数建立子模块,用于基于所述光束法平差优化算法,采用所述第二三维场景中的第二位姿数据、第二三维点云数据以及第二相机内参建立第二重投影误差函数,所述第二相机内参包括初始相机焦距,以及所述第一相机内参的相机第一中心参
数和第一畸变参数;
59.和值计算子模块,用于计算所述gps损失函数和所述第二重投影误差函数的和值;
60.第二优化子模块,用于对所述和值求最小值得到第三位姿数据、第三三维点云数据和第三相机内参以作为第三三维场景。
61.可选地,所述gps损失函数建立子模块包括:
62.测量精度获取单元,用于获取所述相机拍摄每张图像时的gps测量精度;
63.惩罚对角矩阵计算单元,用于采用所述gps测量精度和第一重投影误差值计算每张图像的惩罚对角矩阵;
64.gps损失函数建立单元,用于采用预设gps数据权值、所述gps数据、所述第二位姿数据以及所述惩罚对角矩阵建立gps损失函数。
65.可选地,还包括:
66.地面控制点gcp数据获取模块,用于获取每张图像的地面控制点gcp数据;
67.所述三维场景优化模块包括:
68.第三优化子模块,用于以所述gps数据和所述地面控制点gcp数据为约束来对所述第二三维场景进行优化得到所述目标区域的最终三维场景。
69.可选地,还包括:
70.地面控制点gcp数据获取模块,用于获取每张图像的地面控制点gcp数据;
71.第三三维场景优化模块,用于以所述gps数据和所述地面控制点gcp数据为约束来对所述最终三维场景进行优化得到第三三维场景。
72.第三方面,本发明实施例提供了一种电子设备,所述电子设备包括:
73.一个或多个处理器;
74.存储装置,用于存储一个或多个程序;
75.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任一实施例中所述的三维场景重建方法。
76.第四方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任一实施例中所述的三维场景重建方法。
77.本发明实施例在获取目标区域的、具有共视区域的多张图像后,基于预设的三维场景重建算法对图像进行三维场景重建获得目标区域的第一三维场景,并根据相机拍摄每张图像时的gps数据将第一三维场景变换为世界坐标系下的第二三维场景,进一步以gps数据为约束来对第二三维场景进行优化得到目标区域的最终三维场景,避免了仅基于视觉图像重建三维场景和一次三维场景重建中使用gps数据约束造成重建后三维场景不准确的问题,即先根据视觉图像重建第一三维场景,通过gps数据将第一三维场景对齐到世界坐标系得到第二三维场景后,再通过gps数据约束优化第二三维场景得到最终三维场景,既使用了gps数据为约束,同时又避免了全程重建过程中使用gps数据为约束带入gps数据的误差,提高了最终获得的三维场景的准确度,并且该三维场景能够对齐到世界坐标系下的绝对位置。
附图说明
78.图1是本发明实施例一提供的一种三维场景重建方法的步骤流程图;
79.图2是本发明实施例二提供的一种三维场景重建方法的步骤流程图;
80.图3是本发明实施例三提供的一种三维场景重建方法的步骤流程图;
81.图4是本发明实施例四提供的一种三维场景重建方法的步骤流程图;
82.图5是本发明实施例五提供的一种三维场景重建装置的结构示意图。
具体实施方式
83.为使本发明解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面将结合附图对本发明实施例的技术方案作进一步的详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
84.实施例一
85.图1为本发明实施例一提供的一种三维场景重建方法的步骤流程图,本发明实施例可适用于基于图像进行三维场景重建的情况,该方法可以由本发明实施例中的三维场景重建装置来执行,该装置可采用软件和/或硬件的方式实现,并集成于电子设备中,如图1所示,该方法具体包括如下步骤:
86.s101,获取目标区域的、具有共视区域的多张图像,所述图像具有拍摄所述图像的相机的gps数据。
87.本发明实施例中,目标区域可以为需要进行三维场景重建的区域,例如,目标区域可以为某一区域的农田、森林、山地、城市等区域,三维场景可以为目标区域上包含的所有物体的场景,其可以为实体三维模型,优选地,可以为网格三维模型或者是三维点云模型。
88.在实际应用中,可以通过无人机携带相机对目标区域拍摄多张图像,多张图像具有共视区域,同时通过无人机上的gps定位传感器获得相机拍摄每张图像时的gps数据,该gps数据可以为相机的经纬度数据和海拔高度。gps定位信息也可以通过rtk或ppk等方式获取。。
89.s102,基于预设的三维场景重建算法对所述图像进行三维场景重建获得所述目标区域的第一三维场景。
90.具体地,三维场景重建算法可以为根据多张图像能够重建图像的三维场景的算法,可选地,可以采用运动恢复结构sfm算法对多张图像进行三维场景重建,获得拍摄每张图像时相机的位姿数据以及获得三维点云数据,该三维点云数据和相机的位姿数据经优化后,三维点云数据即为第一三维场景。
91.s103,根据所述gps数据将所述第一三维场景变换为世界坐标系下的第二三维场景。
92.具体地,可以通过第一三维场景中预估的拍摄每张图像时相机的位姿数据、gps传感器获得的相机的gps数据计算第一三维场景转换到世界坐标系下的相似变换,通过该相似变换将相机的位姿数据和三维点云数据转换到世界坐标系下的相机的位姿数据和三维点云数据,世界坐标系下的三维点云数据即为第二三维场景。
93.s104,以所述gps数据为约束来对所述第二三维场景进行优化得到所述目标区域的最终三维场景。
94.通过世界坐标系转换得到世界坐标系下的第二三维场景后,可以采用第二三维场
景中的相机的位姿数据和三维点云数据结合相机内参数建立重投影误差函数,同时通过第二三维场景中相机的位姿数据和gps数据建立gps数据损失函数,通过对重投影误差函数和gps数据损失函数的和值求最小值获得最优的相机位姿数据和三维点云数据,该三维点云数据即为目标区域的最终三维场景。
95.本发明实施例先根据视觉图像重建第一三维场景,通过gps数据将第一三维场景对齐到世界坐标系得到第二三维场景后,再通过gps数据约束优化第二三维场景得到目标区域的最终三维场景,避免了仅基于视觉图像重建三维场景和一次三维场景重建中使用gps数据约束造成重建后三维场景不准确的问题,既使用了gps数据为约束,同时又避免了全程重建过程中使用gps数据为约束带入gps数据的误差,提高了最终获得的三维场景的准确度,并且该三维场景能够对齐到世界坐标系下的绝对位置。
96.实施例二
97.图2为本发明实施例二提供的一种三维场景重建方法的步骤流程图,本发明实施例以前述实施例一为基础进行优化,具体地,如图2所示,本发明实施例的三维场景重建方法可以包括如下步骤:
98.s201、获取目标区域的、具有共视区域的多张图像,所述图像具有拍摄所述图像的相机的gps数据。
99.本发明实施例中可以通过无人机携带相机按照预设周期或者在人工控制下对目标区域拍摄多张图像,多张图像具有共视区域,同时通过无人机上的gps定位传感器获得相机拍摄每张图像时的gps数据,该gps数据可以为相机的经纬度数据和海拔高度。
100.s202、利用运动恢复结构sfm算法对所述图像进行三维场景重建得到初始三维点云数据和所述相机的初始位姿数据。
101.在本发明实施例中可以记重建的三维场景为s{ε,p,i},其包括拍摄每张图像时相机的位姿数据ε={e
i
(r
i
,c
i
)|i=1,2,3.....n}和目标区域所恢复的三维点云数据p={p
j
|j=1,2,3.....m},其中,e
i
(r
i
,c
i
)为n张图像中第i张图像的相机的位姿,r
i
为旋转矩阵,c
i
为相机位置中心向量,p
j
为m个三维点云中的第j个三维点云。i为相机内参,相机内参包括焦距,相机中心和畸变参数,同时记所有图像的观测点为q={q
ij
∈q
i
|p
j

q
i
},其中,q
ij
表示第j个三维点被第i张图像所观测到的观测点像素坐标,q
i
表示第i张图像的观测点集,p
j

q
i
为第j个三维点被第i张图像所观测到。
102.具体地,可以对具有共视区域的多张图像进行预处理,例如,调整图像分辨率,对图像提取sift特征,进行特征匹配等,然后在特征匹配基础上,利用运动恢复结构sfm算法得到初始三维场景s0{ε0,p0,i0},其中,ε0为相机的初始位姿数据,p0为初始三维点云数据,i0为初始相机内参,初始相机内参包括相机的初始中心参数、初始畸变参数和初始焦距。
103.s203、对所述初始位姿数据和所述初始三维点云数据进行光束法平差优化得到第一三维场景,所述第一三维场景包括第一三维点云数据、所述相机的第一位姿数据和第一相机内参。
104.在本发明的可选实施例中,可以获取相机的初始相机内参i0,该初始相机内参可以包括相机的中心参数和畸变参数,然后基于光束法平差优化算法,采用初始三维场景s0{ε0,p0,i0}中的初始相机内参i0、初始位姿数据ε0以及初始三维点云数据p0建立第一重投影误差函数,并对第一重投影误差函数求最小值得到第一三维场景s1{ε1,p1,i1},第一三维场
景s1{ε1,p1,i1}包括第一相机内参i1、第一位姿数据ε1以及第一三维点云数据p1,具体地如下公式(1)和(2):
[0105][0106][0107]
上述公式中,l
reproj
(ε,p,i)为重投影误差函数,π(e,p,i)为重投影函数,ε为位姿数据,p为三维点云数据,i为相机内参,为除了相机焦距以外的相机内参,q
i
为第i张图像的观测点集,q
ij
表示第j个三维点云被第i张图像观测到的观测点像素坐标,s1{ε1,p1,i1}为第一三维场景,ε1,p1,i1分别为第一三维场景下每张图像的相机的位姿数据、第一三维点云数据以及第一相机内参,第一相机内参包括相机的第一中心参数和第一畸变参数,其中,第一中心参数为初始中心参数优化的结果,第一畸变参数为初始畸变参数优化的结果。
[0108]
s204、采用所述第一位姿数据和所述gps数据计算所述第一三维场景到世界坐标系的相似变换。
[0109]
具体地,每张图像都有相应的地理信息,包括gps经纬度,高度和测量精度等信息,若所记录的gps坐标为wgs84坐标系,则转换成世界坐标系utm,当然,还可以是其他的坐标系,本发明实施例对所使用的坐标系不加以限制,在本发明实施例中可以记每张图像在世界坐标系的gps数据为t={t
i
|i=1,2,3.....n}。
[0110]
第一三维场景s1{ε1,p1,i1}中包含有第一位姿数据ε1,该第一位姿数据ε1包含了相机位置中心向量c
i
,由以下公式(3)将相机位置中心向量通过相似变换矩阵变换到世界坐标系中与gps坐标对齐:
[0111][0112]
其中,相似变换包括尺度变换因子s、旋转矩阵r
s
和位移向量t
s
,通过ransac方式随机选择一定数量的图像来解算相似变换矩阵,解算方法可用umeyama算法求解。
[0113]
s205、采用所述相似变换对所述第一位姿数据和所述第一三维点云数据进行变换得到的第二位姿数据和第二三维点云数据,以作为世界坐标系下的第二三维场景。
[0114]
具体地,求解出相似变换矩阵后,将第一重建场景变换为第二重建场景s2{ε2,p2,i2},具体如下:
[0115]
第一三维点云数据变换为第二三维点云数据,三维点云数据的变换公式为:
[0116][0117]
第一位姿数据变换到第二位姿数据,位姿数据的变换公式为:
[0118][0119]
第二相机内参i2=i1∪i
f
,即第二相机内参i2包括第一相机内参i1的第一中心参数和第一畸变参数以及初始相机焦距i
f

[0120]
s206、采用所述gps数据和所述第二位姿数据建立gps损失函数。
[0121]
在本发明的可选实施例中,可以获取相机拍摄每张图像时的gps测量精度采用gps测量精度、第一重投影误差值e
reproj
计算每张图像的惩罚对角矩阵并采用预设gps数据权值、gps数据、第二位姿数据以及惩罚对角矩阵建立gps损失函数。
[0122]
具体地,如下公式(4)、(5)和(6)所示:
[0123][0124][0125]
l=λ
gps
l
gps
(ε2,t)
ꢀꢀꢀ
(6)
[0126]
上述公式中l
gps
(ε,t)为损失函数,gps数据权值λ
gps
∈[0,1]。
[0127]
s207、基于所述光束法平差优化算法,采用所述第二三维场景中的第二位姿数据、第二三维点云数据以及第二相机内参建立第二重投影误差函数,所述第二相机内参包括初始相机焦距,以及所述第一相机内参的相机第一中心参数和第一畸变参数。
[0128]
具体地,可以参考s203中的公式(1)建立第二三维场景的第二重投影误差函数l
reproj
(s2),在此不再详述。
[0129]
s208、计算所述gps损失函数和所述第二重投影误差函数的和值。
[0130]
可选地,如下公式(7)所示:
[0131][0132]
s209、对所述和值求最小值得到第三位姿数据、第三三维点云数据和第三相机内参以作为所述目标区域的最终三维场景。
[0133]
具体地,对上述公式(7)迭代优化求最小值即可以得到最终三维场景s3{ε3,p3,i3}。
[0134]
本发明实施例利用运动恢复结构sfm算法对图像进行三维场景重建得到相机的初始位姿数据以及初始三维点云数据后,对初始位姿数据和初始三维点云数据进行光束法平差优化得到第一三维场景,并采用gps数据将第一三维场景转换为世界坐标系下的第二三维场景,然后采用gps数据和第二三维场景中的第二位姿数据建立gps损失函数以及基于光束法平差优化算法建立第二三维场景的投影误差函数,进一步对gps损失函数和第二三维场景的投影误差函数的和值做最小值优化得到最终三维场景,避免了仅基于视觉图像重建三维场景和一次三维场景重建中使用gps数据约束造成重建后三维场景不准确的问题,既使用了gps数据为约束,同时又避免了全程重建过程中使用gps数据为约束带入gps数据的误差,提高了最终获得的三维场景的准确度,并且该三维场景能够对齐到世界坐标系下的绝对位置。
[0135]
进一步地,在计算gps损失函数时考虑了每张图像的惩罚对角矩阵,使得每张图像的gps约束更加精细,提高了目标区域的三维场景的准确度。
[0136]
更进一步地,在基于光束法平差优化算法结合gps数据对第二三维场景进行优化时优化相机的焦距,避免了仅通过视觉信息所优化出来的焦距不稳定的问题,能够得到准
确的焦距数据,能够得到目标区域的准确尺度的三维场景。
[0137]
实施例三
[0138]
图3为本发明实施例三提供的一种三维场景重建方法的步骤流程图,本发明实施例以前述实施例一为基础进行优化,具体地,如图3所示,本发明实施例的方法可以包括如下步骤:
[0139]
s301,获取目标区域的、具有共视区域的多张图像,所述图像具有拍摄所述图像的相机的gps数据。
[0140]
s302,基于预设的三维场景重建算法对所述图像进行三维场景重建获得所述目标区域的第一三维场景。
[0141]
s303,根据所述gps数据将所述第一三维场景变换为世界坐标系下的第二三维场景。
[0142]
步骤s301-s303可参考实施例一中的s101-s103,或者参考实施例二中的s201-s205,本发明实施例在此不再详述。
[0143]
s304、获取每张图像的地面控制点gcp数据。
[0144]
具体地,地面控制点gcp(ground control point)是表达地理空间位置的信息数据,归结为空间位置坐标、点位局部影像、点位特征描述及说明(点之记)、辅助信息。本发明实施例可以通过各种类型的地面控制点(rtk等传感器)获得每张图像对应的地面区域的地面控制点gcp数据。
[0145]
记存在个gcp三维点存在gcp观测点gcp误差函数可由下式表达:
[0146][0147]
其中,w
gcp
为gcp点的重投影误差的权值,为gcp观测点数量。
[0148]
s305、以所述gps数据和所述地面控制点gcp数据为约束来对所述第二三维场景进行优化得到所述目标区域的最终三维场景。
[0149]
具体地,可以将gps数据和地面控制点gcp数据作为约束数量来优化第二三维场景,即在实施例二中的s208的公式(7)中增加地面控制点gcp数据的约束项,得到如下公式(8):
[0150][0151]
上述公式(8)中,gcp数据权值λ
gcp
∈[0,1],为gcp损失函数,具体地可参考实施例二中的s210-s211,在此不再详述。
[0152]
本发明实施例先根据视觉图像重建第一三维场景,通过gps数据将第一三维场景对齐到世界坐标系得到第二三维场景后,获取每张图像的地面控制点gcp数据,再通过gps
数据和地面控制点gcp数据约束优化第二三维场景得到目标区域的最终三维场景,避免了仅基于视觉图像重建三维场景和一次三维场景重建中使用gps数据约束造成重建后三维场景不准确的问题,既使用了gps数据为约束,同时又避免了全程重建过程中使用gps数据为约束带入gps数据的误差,提高了最终获得的三维场景的准确度,并且该三维场景能够对齐到世界坐标系下的绝对位置。
[0153]
进一步地,同时采用gps数据和所述地面控制点gcp数据为约束优化第二三维场景,采用了多种定位传感器融合约束来重建三维场景,进一步提高了三维场景的准确度。
[0154]
实施例四
[0155]
图4为本发明实施例四提供的一种三维场景重建方法的步骤流程图,本发明实施例以前述实施例一为基础进行优化,具体地,如图4所示,本发明实施例的方法可以包括如下步骤:
[0156]
s401,获取目标区域的、具有共视区域的多张图像,所述图像具有拍摄所述图像的相机的gps数据。
[0157]
s402,基于预设的三维场景重建算法对所述图像进行三维场景重建获得所述目标区域的第一三维场景。
[0158]
s403,根据所述gps数据将所述第一三维场景变换为世界坐标系下的第二三维场景。
[0159]
s404,以所述gps数据为约束来对所述第二三维场景进行优化得到所述目标区域的最终三维场景。
[0160]
步骤s401-s404可参考实施例一中的s101-s104,或者参考实施例二中的s201-s210,本发明实施例在此不再详述。
[0161]
s405、获取每张图像的地面控制点gcp数据。
[0162]
具体地,地面控制点gcp(ground control point)是表达地理空间位置的信息数据,归结为空间位置坐标、点位局部影像、点位特征描述及说明(点之记)、辅助信息。本发明实施例可以通过各种类型的地面控制点(rtk等传感器)获得每张图像对应的地面区域的地面控制点gcp数据。
[0163]
s406、以所述gps数据和所述地面控制点gcp数据为约束来对所述最终三维场景进行优化得到第三三维场景。
[0164]
具体地,在以gps数据为约束对第二三维场景进行优化得到目标区域的最终三维场景后,再次以gps数据和地面控制点gcp数据为约束来对该最终三维场景进行优化得到第三三维场景,具体地,可以参考实施例三中的s304-s305,在此不再详述。
[0165]
本发明实施例先根据视觉图像重建第一三维场景,通过gps数据将第一三维场景对齐到世界坐标系得到第二三维场景后,以gps数据为约束来对第二三维场景进行优化得到目标区域的最终三维场景,进一步获取每张图像的地面控制点gcp数据,再通过gps数据和地面控制点gcp数据约束优化最终三维场景得到第三三维场景,避免了仅基于视觉图像重建三维场景和一次三维场景重建中使用gps数据约束造成重建后三维场景不准确的问题,既使用了gps数据为约束,同时又避免了全程重建过程中使用gps数据为约束带入gps数据的误差,提高了最终获得的三维场景的准确度,并且该三维场景能够对齐到世界坐标系下的绝对位置。
[0166]
进一步地,在以gps数据为约束优化得到最终三维场景后,再次采用gps数据和地面控制点gcp数据为约束优化最终三维场景得到第三三维场景,采用了多种定位传感器融合约束以及多次优化来重建三维场景,进一步提高了三维场景的准确度。
[0167]
实施例五
[0168]
图5为本发明实施例五提供的一种三维场景重建装置的结构示意图,如图5所示,本发明实施例的三维场景重建装置具体可以包括:
[0169]
图像获取模块501,用于获取目标区域的、具有共视区域的多张图像,所述图像具有拍摄所述图像的相机的gps数据;
[0170]
三维场景重建模块502,用于基于预设的三维场景重建算法对所述图像进行三维场景重建获得所述目标区域的第一三维场景;
[0171]
坐标转换模块503,用于根据所述gps数据将所述第一三维场景变换为世界坐标系下的第二三维场景;
[0172]
三维场景优化模块504,用于以所述gps数据为约束来对所述第二三维场景进行优化得到所述目标区域的最终三维场景。
[0173]
可选地,所述三维场景重建模块502包括:
[0174]
sfm算法子模块,用于利用运动恢复结构sfm算法对所述图像进行三维场景重建得到初始三维点云数据和所述相机的初始位姿数据;
[0175]
第一优化子模块,用于对所述初始位姿数据和所述初始三维点云数据进行光束法平差优化得到第一三维场景,所述第一三维场景包括第一三维点云数据、所述相机的第一位姿数据和第一相机内参。
[0176]
可选地,所述第一优化子模块包括:
[0177]
相机内参获取单元,用于获取所述相机的初始相机内参;
[0178]
第一重投影误差函数建立单元,用于基于所述光束法平差优化算法,采用所述初始相机内参、所述初始位姿数据以及所述初始三维点云数据建立第一重投影误差函数;
[0179]
第一优化单元,用于对所述第一重投影误差函数求最小值得到第一相机内参、第一位姿数据以及第一三维点云数据以作为第一三维场景;
[0180]
其中,所述初始相机内参包括所述相机的初始中心参数、初始畸变参数和初始焦距;
[0181]
所述第一相机内参包括相机的第一中心参数和第一畸变参数。
[0182]
可选地,所述坐标转换模块503包括:
[0183]
相似变换计算子模块,用于采用所述第一位姿数据和所述gps数据计算所述第一三维场景到世界坐标系的相似变换;
[0184]
转换子模块,用于采用所述相似变换对所述第一位姿数据和所述第一三维点云数据进行变换得到的第二位姿数据和第二三维点云数据,以作为世界坐标系下的第二三维场景。
[0185]
可选地,所述三维场景优化模块504包括:
[0186]
gps损失函数建立子模块,用于采用所述gps数据和所述第二位姿数据建立gps损失函数;
[0187]
第二重投影误差函数建立子模块,用于基于所述光束法平差优化算法,采用所述
第二三维场景中的第二位姿数据、第二三维点云数据以及第二相机内参建立第二重投影误差函数,所述第二相机内参包括初始相机焦距,以及所述第一相机内参的相机第一中心参数和第一畸变参数;
[0188]
和值计算子模块,用于计算所述gps损失函数和所述第二重投影误差函数的和值;
[0189]
第二优化子模块,用于对所述和值求最小值得到第三位姿数据、第三三维点云数据和第三相机内参以作为第三三维场景。
[0190]
可选地,所述gps损失函数建立子模块包括:
[0191]
测量精度获取单元,用于获取所述相机拍摄每张图像时的gps测量精度;
[0192]
惩罚对角矩阵计算单元,用于采用所述gps测量精度和第一重投影误差值计算每张图像的惩罚对角矩阵;
[0193]
gps损失函数建立单元,用于采用预设gps数据权值、所述gps数据、所述第二位姿数据以及所述惩罚对角矩阵建立gps损失函数。
[0194]
可选地,还包括:
[0195]
地面控制点gcp数据获取模块,用于获取每张图像的地面控制点gcp数据;
[0196]
所述三维场景优化模块504包括:
[0197]
第三优化子模块,用于以所述gps数据和所述地面控制点gcp数据为约束来对所述第二三维场景进行优化得到所述目标区域的最终三维场景。
[0198]
可选地,还包括:
[0199]
地面控制点gcp数据获取模块,用于获取每张图像的地面控制点gcp数据;
[0200]
第三三维场景优化模块,用于以所述gps数据和所述地面控制点gcp数据为约束来对所述最终三维场景进行优化得到第三三维场景。
[0201]
上述三维场景重建装置可执行本发明任意实施例所提供的三维场景重建方法,具备执行方法相应的功能模块和有益效果。
[0202]
本发明实施例还提供一种设备,所述设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任一实施例所述的三维场景重建方法。
[0203]
本发明实施例还提供一种计算机可读存储介质,所述存储介质中的指令由设备的处理器执行时,使得无人机能够执行如上述方法实施例所述的三维场景重建方法。
[0204]
需要说明的是,对于装置、设备和存储介质实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0205]
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是机器人,个人计算机,服务器,或者网络设备等)执行本发明任意实施例所述的三维场景重建方法。
[0206]
值得注意的是,上述三维场景重建装置中,所包括的各个单元和模块只是按照功
能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
[0207]
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行装置执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
[0208]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
[0209]
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1