本发明涉及三维重建相关,尤其是涉及一种单视图的三维重建方法、系统、设备及存储介质。
背景技术:
1、三维重建是计算机领域的一个重要研究方向。利用计算机重建出物体的三维模型,已经成为众多领域进行深入研究前不可或缺的一部分;在医疗领域中,利用三维模型诊断身体状况;在历史文化领域中,将文物进行立体重建,共科学研究及游客参观。除此之外,在游戏开发、工业设计、航天航海等领域,三维重建技术具有重要的应用前景。单视角图像是日常中最容易获得且不需要额外进行数据处理,相比于多视角视图来说,如何从单视图重建对应的三维模型有更大的研究和实用价值。三维模型的表示形式有三种:体素模型、网格模型和点云模型。体素是三维空间中的正方体,相当于三维空间中的像素;网格是由多个三角形组成的多面体结构,可以表示复杂物体的表面形状;点云是坐标系中点的集合,包含了三维坐标、颜色、分类值等信息。而根据输入的图像,又可以分为单视图重建与多视图重建。
2、目前的三维重建方法分为主动式三维重建与被动式三维重建。主动式三维重建如结构光法、tof飞行时间发等已经在工业ct、数字化城市、文物修复等工程中得到一定的应用,但其时常受到光、距离局限等因素干扰,不仅计算量大还受限于整体数据采集设备的精密性和收集条件的好坏,例如三维扫描设备在采集目标对象信息时要求被采集物体在一定的背景、光照和角度下保持一段时间的相对稳定性。而利用相机运动和几何原理的被动式三维重建方法往往被约束与复杂的相机标定和立体匹配,并且计算量较大,重建过程较为复杂,如明暗恢复结构法、运动恢复结构法和多视图立体匹配等。被动式传统三维重建方法需要的条件比较简单,不像主动式三维重建那样依赖硬件,主要靠视觉算法完成,其需要图像序列或多视角图像作为输入,由于单视图信息太少,这种方法很难适用于单视图的三维重建,而且目前的跨领域检索在三维体素重建中的应用需要基于一个提前定义好的预测的最终三维体素数据库。
3、综上,目前的三维重建方法通常需要图像序列或多视角图像作为输入,由于单视图的信息量较少,所以针对单视图的三维图像的重建较为复杂,而且重建的效果不佳。
技术实现思路
1、本发明旨在至少解决现有技术中存在的技术问题。为此,本发明提出一种单视图的三维重建方法、系统、设备及存储介质,能够忽略对三维体素数据库的前置依赖,提升了重建最终三维体素的准确度。
2、本发明的第一方面,提供了一种单视图的三维重建方法,包括如下步骤:
3、获取由相机拍摄的单视图图像;
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、根据所述单视图图像中每个像素的像素坐标、所述单视图图像、所述相机参数和所述深度图进行反向投影,得到预测三维坐标;
50、根据所述预测三维坐标通过点云体素化进行体素转化,得到所述初始三维体素。
51、本发明的第二方面,提供一种单视图的三维重建系统,所述单视图的三维重建系统包括:
52、数据获取模块,用于获取由相机拍摄的单视图图像;
53、相机参数和深度值预测模块,用于将所述单视图图像输入第一卷积神经网络模型,得到所述第一卷积神经网络模型预测的相机参数和深度图;
54、反向投影模块,用于根据所述单视图图像、所述相机参数和所述深度图进行反向投影,得到初始三维体素;
55、特征提取模块,用于将所述初始三维体素输入第二卷积神经网络模型进行特征提取,得到所述第二卷积神经网络模型预测的三维特征;
56、三维体素重建模块,用于将所述三维特征输入第三卷积神经网络模型,得到所述第三卷积神经网络模型对所述单视图图像进行三维体素重建的最终三维体素;
57、建模模块,用于根据所述最终三维体素建模得到所述单视图图像的三维预测模型。
58、本系统通过深度学习提取单视图图像中的相机参数值和预测的深度值,进而利用相机参数值反向投影构建出一个估计的三维体素,然后从这个三维体素中提取一个初始三维特征,最后再根据初始三维特征重建成一个更加接近与真实体素的最终三维体素。本方法利用到了相机参数值这一关键信息反向投影构建出一个估计的三维体素,进而利用这一个估计的三维体素重建出了最终三维体素,不仅仅忽略了对三维体素数据库的前置依赖,实现了能基于单视图图像的三维重建;而且先估计一个三维体素,再优化得到更加接近与真实体素的最终三维体素,能提升重建最终三维体素的准确度。
59、本发明的第三方面,提供了一种单视图的三维重建电子设备,包括至少一个控制处理器和用于与所述至少一个控制处理器通信连接的存储器;所述存储器存储有可被所述至少一个控制处理器执行的指令,所述指令被所述至少一个控制处理器执行,以使所述至少一个控制处理器能够执行上述的单视图的三维重建方法。
60、本发明的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行上述的单视图的三维重建方法。
61、需要注意的是,本发明的第二方面至第四方面与现有技术之间的有益效果与上述的一种单视图的三维重建系统与现有技术之间的有益效果相同,此处不再细述。
62、本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。