首页> 中国专利> 基于可微渲染的振动液滴三维重建方法及装置

基于可微渲染的振动液滴三维重建方法及装置

摘要

本发明提供一种基于可微渲染的振动液滴三维重建方法及装置,该方法包括:根据输入的相机参数建立可微的渲染模型;将输入的多视角液滴振动视频转换为同一时刻的多视角图像,对所述多视角图像做边缘提取;初始化液滴的三维模型,通过可微渲染模型得到对应的渲染图像;计算所述渲染图像和所述多视角图像间的损失函数值,反向传播到液滴的三维模型参数中,进行模型参数更新。该方法考虑到了液滴特征点不明显和振动快速的特点,用可微渲染结合物理模型描述,能够使液滴的三维模型在多个视角下和拍摄图像一致,达到了较快的重建速度和准确的重建精度。

著录项

  • 公开/公告号CN113160296A

    专利类型发明专利

  • 公开/公告日2021-07-23

    原文格式PDF

  • 申请/专利权人 清华大学;

    申请/专利号CN202110348718.X

  • 申请日2021-03-31

  • 分类号G06T7/55(20170101);G06T15/00(20110101);G06T17/20(20060101);

  • 代理机构11002 北京路浩知识产权代理有限公司;

  • 代理人郭亮

  • 地址 100084 北京市海淀区双清路30号清华大学

  • 入库时间 2023-06-19 11:57:35

说明书

技术领域

本发明涉及计算机图形技术领域,尤其涉及一种基于可微渲染的振动液滴三维重建方法及装置。

背景技术

传统的针对物体的三维重建技术主要依赖多视角几何原理基于视差进行计算。运动恢复结构方法(Structure from Motion)主要利用多个相机得到的图像进行三维的恢复,首先提取多视角图像的特征点并进行匹配,根据几何原理恢复出不同视角间的空间对应关系,先重建相机参数,再将不同图像的统一特征点结合起来计算目标物体的点云信息。

这种方法对于动态物体的鲁棒性低,对于液滴这样纹理少、特征点不明确的物体效果差,并且需要消耗大量的时间,实时性较差,且只能恢复出目标物体的点云,如果需要三角网格表示,需要后处理过程。

发明内容

针对现有技术存在的无法有效实现实时的重建特征点少的高速振动液滴这一问题,本发明提供一种基于可微渲染的振动液滴三维重建方法及装置。

本发明提供一种基于可微渲染的振动液滴三维重建方法,包括:根据输入的相机参数建立可微的渲染模型;将输入的多视角液滴振动视频转换为同一时刻的多视角图像,对所述多视角图像做边缘提取;初始化液滴的三维模型,通过可微渲染模型得到对应的渲染图像;计算所述渲染图像和所述多视角图像间的损失函数值,反向传播到液滴的三维模型参数中,进行模型参数更新。

根据本发明一个实施例的基于可微渲染的振动液滴三维重建方法,所述进行模型参数更新之后,还包括:重复以上一帧更新的三维模型参数作为初始模型,通过可微渲染模型得到对应渲染图像,计算渲染图像和当前帧多视角图像间的损失函数值,以及进行模型参数更新的过程,直至满足预设条件。

根据本发明一个实施例的基于可微渲染的振动液滴三维重建方法,所述根据输入的相机参数建立可微的渲染模型,包括:用软光栅化渲染器建立渲染模型,用像素位置的概率分布替代实体三角面片,使用距离相关的聚合函数替代三角面片的前后遮挡关系。

根据本发明一个实施例的基于可微渲染的振动液滴三维重建方法,所述初始化液滴的三维模型,包括:构造单位球面的三角网格模型,计算各个顶点振动模态的位移总和,径向移动三角网格的顶点,生成液滴的三角网格模型。

根据本发明一个实施例的基于可微渲染的振动液滴三维重建方法,所述损失函数包括:

其中,I

根据本发明一个实施例的基于可微渲染的振动液滴三维重建方法,所述反向传播到液滴的三维模型参数中,进行模型参数更新,包括:根据拉普拉斯正则项、损失函数和平滑正则项确定目标函数,根据所述目标函数进行参数更新。

本发明还提供一种基于可微渲染的振动液滴三维重建装置,包括:模型构建模块,用于根据输入的相机参数建立可微的渲染模型;图像处理模块,用于将输入的多视角液滴振动视频转换为同一时刻的多视角图像,对所述多视角图像做边缘提取;渲染图生成模块,用于初始化液滴的三维模型,通过可微渲染模型得到对应的渲染图像;模型重建模块,用于计算所述渲染图像和所述多视角图像间的损失函数值,反向传播到液滴的三维模型参数中,进行模型参数更新。

根据本发明一个实施例的基于可微渲染的振动液滴三维重建装置,所述模型重建模块,还用于:重复以上一帧更新的三维模型参数作为初始模型,通过可微渲染模型得到对应渲染图像,计算渲染图像和当前帧多视角图像间的损失函数值,以及进行模型参数更新的过程,直至满足预设条件。

本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述基于可微渲染的振动液滴三维重建方法的步骤。

本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述基于可微渲染的振动液滴三维重建方法的步骤。

本发明提供的基于可微渲染的振动液滴三维重建方法及装置,考虑到了液滴特征点不明显和振动快速的特点,用可微渲染结合物理模型描述,能够使液滴的三维模型在多个视角下和拍摄图像一致,达到了较快的重建速度和准确的重建精度。

附图说明

为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明提供的基于可微渲染的振动液滴三维重建方法的流程示意图;

图2是本发明提供的输出结果图示意图;

图3是本发明提供的基于可微渲染的振动液滴三维重建装置的结构示意图;

图4是本发明提供的电子设备的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

渲染是和三维重建相反的过程,重建要求输入二维图像,推理三维结构,而渲染则是给定物体或者场景的三维信息,模拟相机拍摄二维图像。传统的渲染包括光栅化方法和光线追踪方法,前者实时性好,后者则能生成真实性强的图片。而深度学习的快速发展使得基于梯度的优化技术得到广泛的关注。传统的光栅化具有不可微的计算过程,软光栅化通过概率分布近似和聚合函数将这些不可微的部分用可微操作替代,这使得整个渲染管线完全地可微,也就能够计算输出图像相对于输入参数的梯度,进一步通过梯度下降进行参数优化,从而反转渲染管道,实现通过二维图像重建三维信息的过程。

针对传统的重建方法无法处理液滴的特征点少、振动快的问题,本发明提供一种基于可微渲染的振动液滴三维重建方法。该方法考虑到了液滴在无重力状态下振动的物理模型,以球谐函数为基础构建了一个参数化的液滴三维模型,并且使得整个渲染过程都在可微渲染框架中计算,为了优化渲染图像和拍摄图像的一致性,我们计算它们之间的损失函数,通过反向传播和梯度优化调整参数化的模型使得两者尽可能接近,从而完成振动液滴的重建。

下面结合图1-图4描述本发明的基于可微渲染的振动液滴三维重建方法及装置。图1是本发明提供的基于可微渲染的振动液滴三维重建方法的流程示意图,如图1所示,本发明提供基于可微渲染的振动液滴三维重建方法,包括:

101、根据输入的相机参数建立可微的渲染模型。

需要已知相机的参数,对相机进行标定后得到相机内参,固定相机相对于被拍摄物体的位姿,这里用距离、方位角、俯仰角的三元组表示。可微的渲染模型用软光栅化渲染器建立,该渲染框架将渲染描述为一个可微的聚合过程。

102、将输入的多视角液滴振动视频转换为同一时刻的多视角图像,对所述多视角图像做边缘提取。

首先将不同相机的视频流在时间上对齐,按照同一时刻下不同视角的图像进行组合,得到按时间序列的多视角图像,以供后续步骤进行逐帧的重建。对单张图像,应用边缘提取算子进行液滴的轮廓提取,结合亮度信息将液滴和背景分割开来。可用拉普拉斯算子进行图像提边,结合亮度信息,将图像分割为物体和液滴两部分,将液滴所在位置用掩膜表示,液体像素上为1,背景像素上为0。

103、初始化液滴的三维模型,通过可微渲染模型得到对应的渲染图像。

可通过球谐函数描述液滴的振动进行三维模型初始化,渲染的三维模型在任意方向上可得到对应的渲染图像。

104、计算所述渲染图像和所述多视角图像间的损失函数值,反向传播到液滴的三维模型参数中,进行模型参数更新。

多视角图像中的图像是滴液的真实状态,将多视角图像中的信息,通过三维模型参数的形式,学习到三维模型中,从而得到准确的液滴三维模型。

可用掩膜描述渲染图像和拍摄图像中液滴出现的位置,计算两者的交并比作为损失函数,并用拉普拉斯平滑项作为正则。通过可微渲染管线计算损失函数相对于输入的梯度,进行梯度下降优化。

本发明的基于可微渲染的振动液滴三维重建方法,考虑到了液滴特征点不明显和振动快速的特点,用可微渲染结合物理模型描述,能够使液滴的三维模型在多个视角下和拍摄图像一致,达到了较快的重建速度和准确的重建精度。

在一个实施例中,所述进行模型参数更新之后,还包括:重复以上一帧更新的三维模型参数作为初始模型,通过可微渲染模型得到对应渲染图像,计算渲染图像和当前帧多视角图像间的损失函数值,以及进行模型参数更新的过程,直至满足预设条件。

可以重复执行步骤103-104,对液滴的参数进行迭代更新,得到更加准确的液滴三维模型。初始帧下液滴的振动参数可能和实际的振动参数差距较大,因此需要多次的迭代更新。预设条件可以是设置的次数,或者其它终止条件。而对于第i+1帧,使用第n帧的优化结果初始化参数,由于时间上振动参数具有连续性,这样就减少了每次优化所需的迭代次数和时间,提高了重建精度和速度。

具体方法为:固定学习率,进行多次梯度下降优化参数,得到单帧的精确的重建结果。对于动态重建,考虑到时间上的连续性,每一帧的物理参数用前一帧的结果做初始化,缩短重建时间,提高重建的鲁棒性。

在一个实施例中,所述根据输入的相机参数建立可微的渲染模型,包括:用软光栅化渲染器建立渲染模型,用像素位置的概率分布替代实体三角面片,使用距离相关的聚合函数替代三角面片的前后遮挡关系。

用概率分布的方式描述不同三角面片对每一像素位置的颜色贡献,并按照距离有关的权重将它们融合起来。用在屏幕空间上的概率图可微地描述三角面片的位置,使得梯度能够流动到所有的网格三角形上,从而让监督信号能够控制模型中不同的参数。

首先需要已知相机的内参,固定相机相对于被拍摄液滴的位姿,用三元组距离、方位角、俯仰角表示,第k个相机的位姿记为

其中d(i,j)为该像素和面元的边的最小距离;

在一个实施例中,所述初始化液滴的三维模型,包括:构造单位球面的三角网格模型,计算各个顶点振动模态的位移总和,径向移动三角网格的顶点,生成液滴的三角网格模型。

无重力状态下的不可压缩无粘流体的无穷小振动数学上有封闭形式的解析解。液滴的径向位移为不同本征模态l,m径向位移的叠加:

其中Y

其中α为表面张力系数,ρ为液体密度,R为静止状态下液滴的半径,l为球谐函数的阶数。

可以看到,每一振动模态的系数只和同一模态的系数相关,不同模态的振动系数完全解耦,因此可以用不同模态的振动系数作为物理参数进行液滴三维模型的构建。在实际渲染中需要使用三角网格表示形状,由于液滴的形状接近球形,可先构造单位球面的三角网格模型,通过计算各个顶点的位移,径向移动三角网格的顶点,从而生成液滴的三角网格模型。

在一个实施例中,所述损失函数包括:

其中,I

在一个实施例中,所述反向传播到液滴的三维模型参数中,进行模型参数更新,包括:根据拉普拉斯正则项、损失函数和平滑正则项确定目标函数,根据所述目标函数进行参数更新。

记拉普拉斯正则项为

其中,

图2是本发明提供的输出结果图示意图,如图2所示,第一、二行分别为输入图像的掩膜和当前优化时渲染图像的掩膜,第三行为某帧重建出的液滴模型。

下面对本发明提供的基于可微渲染的振动液滴三维重建装置进行描述,下文描述的基于可微渲染的振动液滴三维重建装置与上文描述的基于可微渲染的振动液滴三维重建方法可相互对应参照。

图3是本发明提供的基于可微渲染的振动液滴三维重建装置的结构示意图,如图3所示,该基于可微渲染的振动液滴三维重建装置包括:模型构建模块301、图像处理模块302、渲染图生成模块303和模型重建模块304。其中,模型构建模块301用于根据输入的相机参数建立可微的渲染模型;图像处理模块302用于将输入的多视角液滴振动视频转换为同一时刻的多视角图像,对所述多视角图像做边缘提取;渲染图生成模块303用于初始化液滴的三维模型,通过可微渲染模型得到对应的渲染图像;模型重建模块304用于计算所述渲染图像和所述多视角图像间的损失函数值,反向传播到液滴的三维模型参数中,进行模型参数更新。

在一个实施例中,所述模型重建模块,还用于:重复以上一帧更新的三维模型参数作为初始模型,通过可微渲染模型得到对应渲染图像,计算渲染图像和当前帧多视角图像间的损失函数值,以及进行模型参数更新的过程,直至满足预设条件。

本发明实施例提供的装置实施例是为了实现上述各方法实施例的,具体流程和详细内容请参照上述方法实施例,此处不再赘述。

本发明实施例提供的基于可微渲染的振动液滴三维重建装置,考虑到了液滴特征点不明显和振动快速的特点,用可微渲染结合物理模型描述,能够使液滴的三维模型在多个视角下和拍摄图像一致,达到了较快的重建速度和准确的重建精度。

图4是本发明提供的电子设备的结构示意图,如图4所示,该电子设备可以包括:处理器(processor)401、通信接口(Communications Interface)402、存储器(memory)403和通信总线404,其中,处理器401,通信接口402,存储器403通过通信总线404完成相互间的通信。处理器401可以调用存储器403中的逻辑指令,以执行基于可微渲染的振动液滴三维重建方法,该方法包括:根据输入的相机参数建立可微的渲染模型;将输入的多视角液滴振动视频转换为同一时刻的多视角图像,对所述多视角图像做边缘提取;初始化液滴的三维模型,通过可微渲染模型得到对应的渲染图像;计算所述渲染图像和所述多视角图像间的损失函数值,反向传播到液滴的三维模型参数中,进行模型参数更新。

此外,上述的存储器403中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的基于可微渲染的振动液滴三维重建方法,该方法包括:根据输入的相机参数建立可微的渲染模型;将输入的多视角液滴振动视频转换为同一时刻的多视角图像,对所述多视角图像做边缘提取;初始化液滴的三维模型,通过可微渲染模型得到对应的渲染图像;计算所述渲染图像和所述多视角图像间的损失函数值,反向传播到液滴的三维模型参数中,进行模型参数更新。

又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的基于可微渲染的振动液滴三维重建方法,该方法包括:根据输入的相机参数建立可微的渲染模型;将输入的多视角液滴振动视频转换为同一时刻的多视角图像,对所述多视角图像做边缘提取;初始化液滴的三维模型,通过可微渲染模型得到对应的渲染图像;计算所述渲染图像和所述多视角图像间的损失函数值,反向传播到液滴的三维模型参数中,进行模型参数更新。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号