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

一种增量式三维重建方法、装置以及计算机设备与流程

2022-03-05 05:42:24 来源:中国专利 TAG:


1.本发明涉及计算机视觉技术领域,具体涉及一种基于图像的三维重建方法。


背景技术:

2.随着计算机视觉的发展,三维重建,ar,自动驾驶,slam等技术逐渐走入我们的日常生活,其中,基于图像的三维重建一直是计算机视觉领域最重要的挑战之一。基于图像的三维重建方法能够根据图像恢复出场景的几何形状以及纹理信息,在现实生活中具有广泛的应用价值,例如,缺陷检测,数字遗迹,电子地图与导航等等。不同的应用方向,对三维重建有不同的要求。
3.目前的三维重建方法主要有基于深度相机的三维重建、基于结构光的三维重建以及基于多视图三维重建,其中基于深度相机的三维重建以及基于结构光的三维重建受限于硬件,基于多视图的三维重建要求拍摄特征点丰富,也有所限制。总体来说,大多操作较为复杂,且精度不够理想。


技术实现要素:

4.为此,本发明实施例提供一种增量式三维重建方法、装置以及计算机设备,以解决现有技术存在的操作较为复杂、精度不够理想等问题。
5.为了实现上述目的,本发明实施例提供如下技术方案:
6.第一方面,一种增量式三维重建方法,包括以下步骤:
7.s1:获取目标场景的图片序列;所述图片序列包括对目标场景多角度拍摄相应得到的多个图像;针对所述图片序列中的任一图像执行以下步骤s2至步骤s4;
8.s2:计算图像的每个像素点到相机中心位置的反向投影射线;
9.s3:设定所述反向投影射线的深度范围,在该深度范围的反向投影射线上离散采样一系列的3d点,通过多层感知器表征的神经网络模型求解,然后利用体积渲染原理对像素点进行可微渲染,得到像素点的渲染结果,可微渲染过程还得到梯度信息;
10.s4:在图像上随机采样像素点,进行模型的隐式重建,按照步骤s2、s3迭代计算及渲染后得到初始的重建结果;隐式重建过程中所述神经网络模型的参数和相机的姿态信息的更新,利用了所述可微渲染过程得到的梯度信息;
11.s5:依次取所述图片序列中的其他图像,基于前一图像的重建结果进行增量式重建;遍历所述图片序列,最终得到增量式重建的结果;
12.其中,每一次的增量式重建均包括:随机初始化当前图像对应的相机姿态,重复执行步骤s2、s3以及s4,但重复执行过程中仅更新相机的姿态,而保持所述神经网络模型的参数不变;然后,再次重复执行步骤s2、s3以及s4,重复执行过程中仅更新神经网络模型的参数。
13.可选地,所述相机的姿态信息包括相机位置和观测方向。
14.可选地,所述神经网络模型的输入是相机位置、观测方向以及被观测的3d坐标,输
出结果是3d点的颜色c以及体密度σ。
15.可选地,步骤s4中,所述神经网络模型的参数和相机的姿态信息的更新,具体是:使用所述可微渲染过程得到的梯度信息,计算出神经网络模型的梯度和相机参数的梯度,再使用adam算法更新神经网络模型的参数和相机的姿态信息。
16.可选地,在步骤s3与步骤s4之间,还计算渲染颜色与实际图片颜色的差异,作为重建的误差。
17.可选地,步骤s4中,所述在图像上随机采样像素点,具体是从每张图的兴趣区域中提取;所述兴趣区域的确定方法如下:使用blob和corner核对梯度图像(梯度信息)进行卷积,然后执行非极大抑制,得到图像兴趣点,再使用形态学膨胀算法生成兴趣区域。
18.可选地,步骤s5中所述的增量式重建,考虑到动态物体或者光照影响,还作以下处理:
19.首先,将步骤s3中可微渲染的渲染方程作为模型的静态部分,然后添加瞬态部分,渲染瞬态的颜色和密度,其中密度允许在训练图像中有变化;
20.其次,允许瞬态部分发射出不确定性场,使得模型能够调整重构损失,忽略不可靠的像素和3d位置;
21.再将每个像素的颜色建模为各向同性正态分布,并进行极大似然估计,然后使用体渲染,渲染出该分布的方差,作为瞬态颜色。
22.第二方面,一种增量式三维重建装置,包括:
23.图片序列获取模块,用于获取目标场景的图片序列;所述图片序列包括对目标场景多角度拍摄相应得到的多个图像;
24.投影射线计算模块,用于针对当前选取的图像,计算图像的每个像素点到相机中心位置的反向投影射线;
25.离散采样与渲染模块,用于设定所述反向投影射线的深度范围,在该深度范围的反向投影射线上离散采样一系列的3d点,通过多层感知器表征的神经网络模型求解,然后利用体积渲染原理对像素点进行可微渲染,得到像素点的渲染结果,可微渲染过程还得到梯度信息;
26.隐式重建模块,用于在图像上随机采样像素点,进行模型的隐式重建,通过迭代运行投影射线计算模块、离散采样与渲染模块得到初始的重建结果;隐式重建过程中所述神经网络模型的参数和相机的姿态信息的更新,利用了所述可微渲染过程得到的梯度信息;
27.增量式重建模块,用于依次取所述图片序列中的其他图像,基于前一图像的重建结果进行增量式重建;遍历所述图片序列,最终得到增量式重建的结果;
28.其中,每一次的增量式重建均包括:随机初始化当前图像对应的相机姿态,重复运行投影射线计算模块、离散采样与渲染模块以及隐式重建模块,但重复运行过程中仅更新相机的姿态,而保持所述神经网络模型的参数不变;然后,再次重复运行投影射线计算模块、离散采样与渲染模块以及隐式重建模块,重复运行过程中仅更新神经网络模型的参数。
29.第三方面,一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特殊之处在于,所述处理器执行所述计算机程序时实现上述方法的步骤。
30.第四方面,一种计算机可读存储介质,其上存储有计算机程序,其特殊之处在于,所述计算机程序被处理器执行时实现上述方法的步骤。
31.本发明至少具有以下有益效果:
32.本发明使用神经辐射场技术隐式地重建三维模型,输入数据为图片序列,待估参数是相机的姿态与三维模型;还利用体积渲染原理,使用可微渲染算法,实现了从3d体素模型到2d图像的渲染流程,使得三维模型可以利用微分进行非线性优化,从而实现了端到端的三维重建方法;基于此通过遍历对目标场景多角度拍摄相应得到的多个图像,最终得到增量式重建的结果,不仅操作简便,而且精度高。
附图说明
33.为了更清楚地说明现有技术以及本发明,下面将对现有技术以及本发明实施例描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引申获得其它的附图。
34.本说明书所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容能涵盖的范围内。
35.图1为本发明一个实施例提供的一种增量式三维重建方法的流程示意图;
36.图2为本发明一个实施例提供的一种增量式三维重建装置的虚拟模块架构示意图;
37.图3为本发明一个实施例的实际处理效果样例。
具体实施方式
38.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
39.在一个实施例中,如图1所示,提供了一种增量式三维重建方法,包括以下步骤:
40.s1:获取目标场景的图片序列;所述图片序列包括对目标场景多角度拍摄相应得到的多个图像;针对所述图片序列中的任一图像执行以下步骤s2至步骤s4;
41.s2:计算图像的每个像素点到相机中心位置的反向投影射线;
42.s3:设定所述反向投影射线的深度范围,在该深度范围的反向投影射线上离散采样一系列的3d点,通过多层感知器表征的神经网络模型求解,然后利用体积渲染原理对像素点进行可微渲染,得到像素点的渲染结果,可微渲染过程还得到梯度信息;
43.s4:在图像上随机采样像素点,进行模型的隐式重建,按照步骤s2、s3迭代计算及渲染后得到初始的重建结果;隐式重建过程中所述神经网络模型的参数和相机的姿态信息的更新,利用了所述可微渲染过程得到的梯度信息;
44.s5:依次取所述图片序列中的其他图像,基于前一图像的重建结果进行增量式重建;遍历所述图片序列,最终得到增量式重建的结果;
45.其中,每一次的增量式重建均包括:随机初始化当前图像对应的相机姿态,重复执行步骤s2、s3以及s4,但重复执行过程中仅更新相机的姿态,而保持所述神经网络模型的参
数不变;然后,再次重复执行步骤s2、s3以及s4,重复执行过程中仅更新神经网络模型的参数。
46.上述方法的关键步骤至少包括:
47.(1)计算每个视图每个像素点的反向投影射线;
48.(2)投影射线射线的离散采样与渲染;
49.(3)模型的隐式重建;
50.(4)相机参数的逆向求解(使用adam算法更新模型m的参数)。
51.上述方法是一种操作简便并且精度高的三维重建算法,使用神经辐射场技术隐式地重建三维模型;输入数据为图片序列,相机的姿态与三维模型是待估参数。该方法还利用体积渲染原理,使用可微渲染算法,实现了从3d体素模型到2d图像的渲染流程,使得三维模型可以利用微分进行非线性优化,从而实现了端到端的三维重建方法,最终得到增量式重建的结果,不仅操作简便,而且精度高。
52.示例性地,具体说明如下:
53.1.首先对场景或者物体进行多角度拍摄,并记录相机姿态信息;
54.2.相机内参使用k表示
[0055][0056]
相机外参使用可导的se(3)表示,
[0057][0058][0059]
3.模型m使用多层感知器表征。感知器的参数隐含了三维模型。该神经网络的输入是相机位置、观测方向以及被观测的3d坐标,输出结果是该3d点的颜色c以及体密度σ。
[0060]
4.根据图像的内外参数计算一个像素点的反向投影射线,相机中心位置是射线的起点。根据模型的大小设定射线的深度范围,然后在此深度范围内从射线上进行采样,得到一系列的3d点。将相机位置、投影射线、3d点坐标输入到模型m中,得到每个3d点的颜色和体密度。使用体积渲染公式求出此像素点的渲染结果。
[0061][0062]
5.计算渲染损失:计算渲染颜色与实际图片颜色的差异,作为重建的误差。
[0063]
6.使用可微渲染过程得到的梯度信息,计算出模型m的梯度、相机参数的梯度。使用adam算法更新模型m的参数、相机的参数。
[0064]
7.像素点随机采样。重建时,需要在图像上随机采样像素点。使用blob和corner核对梯度图像进行卷积,然后执行非极大抑制,得到图像兴趣点。然后使用形态学膨胀算法生
成兴趣区域。随机采样时,从每张图的兴趣区域中提取。这能显著提升训练速度和精度。
[0065]
8.重复4-7步,得到初始的重建结果。
[0066]
9.后续拍摄到新的场景图片i,进行增量式重建。由于动态物体或者光照影响,图像可能与模型不一致,因而还作如下处理:
[0067]
1)首先,把步骤4中的渲染方程作为我们模型的静态部分,然后我们添加瞬态部分,渲染瞬态的颜色和密度,其中密度允许在训练图像中有变化。这使得可以重建包含遮挡物的图像,而没有把动态模糊成分引入到静态场景表示。
[0068]
2)其次,不假设所有观测像素颜色都是同样可靠的,允许我们的瞬态部分发射出不确定性场(颜色和密度),可以让模型调整重构损失,忽略不可靠的像素和3d位置,这些位置很可能包含瞬态的遮挡物。
[0069]
3)将每个像素的颜色建模为各向同性正态分布,并且进行极大似然估计,然后使用体渲染,渲染出该分布的方差,作为瞬态颜色。
[0070]
10.初始化该图片的相机姿态,重复4-7步骤,不过仅更新相机的姿态,保持模型m的参数不变。
[0071]
再次执行4-7步,使用adam算法更新模型m的参数,得到增量式重建的结果。
[0072]
在一个实施例中,提供了一种增量式三维重建装置,如图2所示,包括:
[0073]
图片序列获取模块,用于获取目标场景的图片序列;所述图片序列包括对目标场景多角度拍摄相应得到的多个图像;
[0074]
投影射线计算模块,用于针对当前选取的图像,计算图像的每个像素点到相机中心位置的反向投影射线;
[0075]
离散采样与渲染模块,用于设定所述反向投影射线的深度范围,在该深度范围的反向投影射线上离散采样一系列的3d点,通过多层感知器表征的神经网络模型求解,然后利用体积渲染原理对像素点进行可微渲染,得到像素点的渲染结果,可微渲染过程还得到梯度信息;
[0076]
隐式重建模块,用于在图像上随机采样像素点,进行模型的隐式重建,通过迭代运行投影射线计算模块、离散采样与渲染模块得到初始的重建结果;隐式重建过程中所述神经网络模型的参数和相机的姿态信息的更新,利用了所述可微渲染过程得到的梯度信息;
[0077]
增量式重建模块,用于依次取所述图片序列中的其他图像,基于前一图像的重建结果进行增量式重建;遍历所述图片序列,最终得到增量式重建的结果;
[0078]
其中,每一次的增量式重建均包括:随机初始化当前图像对应的相机姿态,重复运行投影射线计算模块、离散采样与渲染模块以及隐式重建模块,但重复运行过程中仅更新相机的姿态,而保持所述神经网络模型的参数不变;然后,再次重复运行投影射线计算模块、离散采样与渲染模块以及隐式重建模块,重复运行过程中仅更新神经网络模型的参数。
[0079]
关于上述装置的具体限定可以参见上文中对于增量式三维重建方法的限定,在此不再赘述。上述装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0080]
该装置使用神经辐射场技术隐式地重建三维模型,输入数据为图片序列,待估参数是相机的姿态与三维模型;还利用体积渲染原理,使用可微渲染算法,实现了从3d体素模
型到2d图像的渲染流程,使得三维模型可以利用微分进行非线性优化,从而实现了端到端的三维重建;基于此通过遍历对目标场景多角度拍摄相应得到的多个图像,最终得到增量式重建的结果,不仅操作简便,而且精度高。
[0081]
图3所示为应用上述示例的方案增量式重建的效果。
[0082]
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,涉及上述实施例方法中的全部或部分流程。
[0083]
在一个实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,涉及上述实施例方法中的全部或部分流程。
[0084]
以上几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
[0085]
以上实施例的各技术特征可以进行任意的组合(只要这些技术特征的组合不存在矛盾),为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述;这些未明确写出的实施例,也都应当认为是本说明书记载的范围。
[0086]
上文中通过一般性说明及具体实施例对本发明作了较为具体和详细的描述。应当指出的是,在不脱离本发明构思的前提下,显然还可以对这些具体实施例作出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
再多了解一些

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

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

相关文献