CN113436314A - 一种基于结构的计算机三维网格模型重建方法 - Google Patents

一种基于结构的计算机三维网格模型重建方法 Download PDF

Info

Publication number
CN113436314A
CN113436314A CN202110712031.XA CN202110712031A CN113436314A CN 113436314 A CN113436314 A CN 113436314A CN 202110712031 A CN202110712031 A CN 202110712031A CN 113436314 A CN113436314 A CN 113436314A
Authority
CN
China
Prior art keywords
encoder
component
sequence
model
self
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110712031.XA
Other languages
English (en)
Other versions
CN113436314B (zh
Inventor
余月
李营
张靖宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN202110712031.XA priority Critical patent/CN113436314B/zh
Publication of CN113436314A publication Critical patent/CN113436314A/zh
Application granted granted Critical
Publication of CN113436314B publication Critical patent/CN113436314B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

本发明涉及一种基于结构的计算机三维网格模型重建方法,属于计算机图形学及视觉技术领域。首先,将网格模型的各个部件分别编码。然后,将部件编码序列,利用序列到序列的结构进行编码和解码,重建部件编码序列,再将重建的部件编码序列利用网格变形的方法进行解码重建出各个网格部件,从而得到整个网格模型。之后,让神经网络学习从图像到上述过程中学到的编码潜在空间的映射,从而实现从图像到结构化网格模型的重建。与现有的网格模型重建方法相比,本方法能够重建模型的结构信息,保留有关结构的细节,与一些其他的结构化模型重建方法相比,又能够得到整体形状更优的网格模型。

Description

一种基于结构的计算机三维网格模型重建方法
技术领域
本发明涉及一种计算机三维网格模型的重建方法,尤其涉及一种能够重建结构化网格模型的方法,属于计算机图形学及视觉技术领域。
背景技术
在计算机图形学领域中,三维网格模型是三维模型的一种表示形式。与体素和点云等其它表示形式的三维模型相比,网格模型具有更好的几何细节和视觉效果。目前,三维网格模型已经被应用到虚拟现实、工业制造等多个领域。
三维网格模型,是一种使用一系列的点和面来表示三维模型的形式。使用传统方法进行三维建模获得网格模型,往往需要大量的人力来逐点构建模型的诸多细节。
近年来,随着深度学习技术的发展,利用深度神经网络来重建包括三维网格模型在内的各种三维模型,能够实现快速的三维建模。例如,Groueix等人提出的AtlasNet,是使用深度神经网络重建网格模型的代表性工作,该工作通过利用对已有的网格模板的顶点进行位移来实现网格变形,从而实现网格模型的重建。一些其他工作也采用了类似的方法。
但是,现有的使用深度神经网络进行三维网格模型重建的工作,都是让神经网络学习并重建整体化的模型,这样的模型缺少部件结构的细节,没有对模型中各个部件的划分。如何重建带有部件划分的结构化网格模型,是一个有待研究的技术问题。
对于重建非网格的结构化模型,Niu等人提出了Im2Struct及其前置的GRASS等工作,使用一个树形结构来储存模型的部件结构及其相邻和对称等信息。但是,该过程使用长方体来表示模型的部件,不关注模型的具体形状,所使用的数据集也较小。此外,Wu等人提出了PQ-Net,使用序列到序列的线性结构来储存并重建体素化模型,但是体素模型的表达效果不佳。
发明内容
本发明的目的是针对目前三维网络模型重建工作缺少结构化网格模型重建的技术问题,提出了一种重建结构化网格模型的方法。
首先,将网格模型的各个部件分别编码。
然后,将部件编码序列,利用序列到序列的结构进行编码和解码,重建部件编码序列,再将重建的部件编码序列利用网格变形的方法进行解码重建出各个网格部件,从而得到整个网格模型。
之后,让神经网络学习从图像到上述过程中学到的编码潜在空间的映射,从而实现从图像到结构化网格模型的重建。
有益效果
与现有的网格模型重建方法相比,本方法能够重建模型的结构信息,保留有关结构的细节,与一些其他的结构化模型重建方法相比,又能够得到整体形状更优的网格模型。
1.本发明方法,使用部件网格的表面采样点来进行编码,然后通过使用模板网格变形的方法来解码,从而实现对部件网格的重建。
2.本发明方法,使用了一个序列到序列的编码器-解码器结构,可以实现从网格模型部件序列到部件序列的重建。
3.本发明方法,通过训练一个ResNet-18编码器,可以实现图像到结构化模型所对应的特征向量的编码。
4.本发明方法,通过将图像编码成结构化模型对应的特征向量,然后解码成部件序列,最后将序列中的每一个部件解码成对应的部件网格,从而实现从图像到结构化网格模型的重建。
附图说明
图1是本发明中的部件形状自编码器的结构图;
图2是本发明中实现从模型到模型的重建的整体网络的结构图;
图3是本发明中实现从图像到模型的重建的整体网络的结构图;
图4是本发明公开的三维网格模型重建方法的流程图;
图5是本发明和对比方法在从模型到模型的重建工作的重建结果,其中(a)列是对比方法的重建结果,(b)列是本发明的方法的重建结果,(c)列是真实模型;
图6是本发明和对比方法在从图像到模型的重建工作的重建结果,其中(a)列是输入图像,(b)列是对比方法的重建结果,(c)列是本发明的方法的重建结果,(d)列是真实模型。
具体实施方式
下面结合附图对发明的具体实施内容做进一步详细说明。
图2和图3分别展示了从模型到模型的重建和从图像到模型的重建所使用的网络结构。
如图4所示,一种基于结构的计算机三维网格模型重建方法,包括以下步骤:
步骤1:构建部件形状自编码器网络并进行训练。
其中,部件形状自编码器网络如图1所示,包括编码器和解码器两部分。
对于每一个网格部件gi,为了方便编码,在其表面采样2500个点,得到表面采样点p(gi)。将表面采样点会输入到编码器E当中(编码器E可以使用Qi等人的PointNet工作当中的点云编码器),编码器E将表面采样点p(gi)编码成一个1024维的形状特征向量xi,即:
xi=E(p(gi)) (1)
解码器D是一个四层的大小分别为1024、512、256、128的多层感知机,其中,前三层使用激活函数ReLU,第四层(最终输出层)使用tanh。将形状特征向量xi和初始模板网格M0的顶点V0输入到解码器D中进行解码,解码过程是:通过移动顶点坐标对网格进行变形,该过程中,M0的面F0保持不变。解码后,得到当前部件所对应的网格模型的顶点Vi,Vi与F0共同组成当前部件的网格模型Mi,即:
M0={F0,V0} (2)
Vi=D(xi,V0) (3)
Mi={F0,Vi} (4)
上述网络使用倒角距离(Chamfer Distance,CD)损失进行训练,损失函数Lcd如下:
Figure BDA0003134145760000041
其中,M是重建的部件网格,N是真实部件网格,x∈M和y∈N,x、y分别是重建的部件网格和真实的部件网格采样的点集。该损失对这两个点集中的每一个点,分别寻找另一个点集中的最近点,并计算点间距离。利用该损失对部件形状自编码器网络训练(如训练120代),得到一个训练好的部件形状自编码器。
步骤2:训练部件序列自编码器。
部件序列自编码器实现对一个向量序列的编码和解码,它是一个基于序列到序列结构的编码器-解码器结构,这个结构中的编码器和解码器都使用循环神经网络来实现。
其中,编码器部分是一个双向堆叠循环神经网络Er,分别由两个循环神经网络Er1和Er2组成,每个循环神经网络均使用门控循环单元(GRU)作为基础单元。步骤1中的部件形状自编码器的编码器对各个部件进行编码得到的向量序列X=[x1,x2,…,xn]首先补充每个部件的六维边界框信息bi(位置和尺寸各三维)和标识部件总数的one-hot向量,得到最终的向量序列S=[s1,s2,…,sn]。该序列及其反向序列S’=[sn,sn-1,…,s1]分别被输送给Er1和Er2,然后分别编码得到h1和h2,h1、h2共同构成了该模型的特征向量h。Er的整个过程由下面的公式所示:
h=[h1,h2]=Er(S,S′)=[Er1(S),Er2(S′)] (6)
解码器部分是一个能够在每个时间步之内输出多个向量的堆叠循环神经网络Dr。编码器Er编码得到的最终特征向量h被输入给Dr,之后Dr在每个时间步i分别输出一个形状特征向量x′i、一个边界框信息b′i和一个停止标识符stop′i。其中,用于判断序列是否该停止的停止标识符stop′i的值在0到1之间,当这个标识符大于0.5时,认为部件数量已经足够,解码迭代过程停止。上述过程由下式表示:
[x′1,x′2,…;b′1,b′2,…;stop′1,stop′2,…]=Dr(h) (7)
此处解码出的形状特征x′i通过部件形状自编码器的解码器部分,重建出部件的网格模型,同时,对于位置有偏差的部件,使用边界框信息b′i调整其位置。包括部件形状自编码器和部件序列自编码器在内的整个网络结构如图2所示。
上述的部件序列自编码器在训练的过程中,需要使用三个损失函数来进行监督,分别使自编码器得到的形状特征、边界框信息和停止标识符这三项保持正确。这三个损失函数分别定义如下:
Figure BDA0003134145760000051
Figure BDA0003134145760000052
Figure BDA0003134145760000053
其中,Lx用于判断部件序列自编码前后形状特征的差异,Lb用于判断部件序列自编码前后边界框信息的差异,Lstop用于判断每一步得到的停止符是否正确。利用上述损失对部件序列自编码器训练(如训练2000代),得到训练好的部件序列自编码器。
此时,利用步骤1中训练的部件形状自编码器和本步骤中训练的部件序列自编码器可以用于从模型到模型的重建。将模型的每个部件网格使用部件形状自编码器进行编码,再将部件编码序列使用部件序列自编码器重建,最后将重建的部件序列使用部件形状自编码器的解码器部分进行解码得到对应的部件网格。即可实现从模型到模型的重建,图5展示了本方法的重建结果和用于对比的方法的重建结果。
步骤3:训练图像编码器。
对于步骤1和步骤2中学到的模型的特征向量h,需要学习图像到它的映射,以实现从图像出发的重建。
对于每一个模型所对应的图像I,使用ResNet-18结构的编码器e将其编码成1024维的特征向量h′,即:
h′=e(I) (11)
其中,e(I)表示使用编码器e对图像I编码的过程。
训练该图像编码器使其编码得到的特征向量h′与模型对应的特征向量h尽可能接近,这个过程使用如下损失函数进行监督:
Limage=||h′-h||2 (12)
当训练完成后(如120代)之后,得到一个训练好的图像编码器。
步骤4:获得图像对应的结构化网格模型。
对于每个模型图像,输入到步骤3中训练的图像编码器当中,编码成一个特征向量。
然后,将该特征向量输入给步骤2中训练的部件序列自编码器的解码器部分,解码得到分别表示每个部件的特征的向量序列。
之后,将序列中的每一个向量分别和一个模板网格输入到步骤1训练的部件形状自编码器的解码器部分,得到各个部件网格。
最后,拼接所有的部件网格,得到图像对应的结构化网格模型。
图6中展示了本方法的重建结果和对比方法的重建结果。

Claims (2)

1.一种基于结构的计算机三维网格模型重建方法,其特征在于,包括以下步骤:
步骤1:构建部件形状自编码器网络并进行训练;其中,部件形状自编码器网络包括编码器和解码器两部分;
对于每一个网格部件gi,在其表面进行采样,得到表面采样点p(gi);
将表面采样点会输入到编码器E当中,编码器E将表面采样点p(gi)编码成一个1024维的形状特征向量xi,即:
xi=E(p(gi)) (1)
解码器D是一个四层的大小分别为1024、512、256、128的多层感知机,其中,前三层使用激活函数ReLU,第四层使用tanh;将形状特征向量xi和初始模板网格M0的顶点V0输入到解码器D中进行解码,解码过程是:通过移动顶点坐标对网格进行变形,该过程中,M0的面F0保持不变;
解码后,得到当前部件所对应的网格模型的顶点Vi,Vi与F0共同组成当前部件的网格模型Mi,即:
M0={F0,V0} (2)
Vi=D(xi,V0) (3)
Mi={F0,Vi} (4)
上述网络使用倒角距离损失进行训练,损失函数Lcd如下:
Figure FDA0003134145750000011
其中,M是重建的部件网格,N是真实部件网格,x∈M和y∈N,x、y分别是重建的部件网格和真实的部件网格采样的点集;该损失对这两个点集中的每一个点,分别寻找另一个点集中的最近点,并计算点间距离;利用该损失对部件形状自编码器网络进行训练,得到一个训练好的部件形状自编码器;
步骤2:训练部件序列自编码器;
部件序列自编码器实现对一个向量序列的编码和解码,它是一个基于序列到序列结构的编码器-解码器结构,这个结构中的编码器和解码器都使用循环神经网络来实现;
其中,编码器部分是一个双向堆叠循环神经网络Er,分别由两个循环神经网络Er1和Er2组成,每个循环神经网络均使用门控循环单元作为基础单元;
步骤1中的部件形状自编码器的编码器对各个部件进行编码得到的向量序列X=[x1,x2,…,xn]首先补充每个部件的六维边界框信息bi和标识部件总数的one-hot向量,得到最终的向量序列S=[s1,s2,…,sn];该序列及其反向序列S’=[sn,sn-1,…,s1]分别被输送给Er1和Er2,然后分别编码得到h1和h2,h1、h2共同构成了该模型的特征向量h;Er的整个过程如式6所示:
h=[h1,h2]=Er(S,S′)=[Er1(S),Er2(S′)] (6)
解码器部分是一个能够在每个时间步之内输出多个向量的堆叠循环神经网络Dr;编码器Er编码得到的最终特征向量h被输入给Dr,之后Dr在每个时间步i分别输出一个形状特征向量x′i、一个边界框信息b′i和一个停止标识符stop′i;其中,用于判断序列是否该停止的停止标识符stop′i的值在0到1之间,当这个标识符大于0.5时,认为部件数量已经足够,解码迭代过程停止;上述过程由下式表示:
[x′1,x′2,…;b′1,b′2,…;stop′1,stop′2,…]=Dr(h) (7)
此处解码出的形状特征x′i通过部件形状自编码器的解码器部分,重建出部件的网格模型,同时,对于位置有偏差的部件,使用边界框信息b′i调整其位置;
上述的部件序列自编码器在训练的过程中,需要使用三个损失函数来进行监督,分别使自编码器得到的形状特征、边界框信息和停止标识符这三项保持正确;三个损失函数分别定义如下:
Figure FDA0003134145750000021
Figure FDA0003134145750000022
Figure FDA0003134145750000023
其中,Lx用于判断部件序列自编码前后形状特征的差异,Lb用于判断部件序列自编码前后边界框信息的差异,Lstop用于判断每一步得到的停止符是否正确;利用上述损失对部件序列自编码器训练,得到训练好的部件序列自编码器;
此时,利用步骤1中训练的部件形状自编码器和本步骤中训练的部件序列自编码器用于从模型到模型的重建;将模型的每个部件网格使用部件形状自编码器进行编码,再将部件编码序列使用部件序列自编码器重建,最后将重建的部件序列使用部件形状自编码器的解码器部分进行解码得到对应的部件网格;
步骤3:训练图像编码器;
对于步骤1和步骤2中学到的模型的特征向量h,需要学习图像到它的映射,以实现从图像出发的重建;
对于每一个模型所对应的图像I,使用ResNet-18结构的编码器e将其编码成1024维的特征向量h′,即:
h′=e(I) (11)
其中,e(I)表示使用编码器e对图像I编码的过程;
训练该图像编码器使其编码得到的特征向量h′与模型对应的特征向量h尽可能接近,这个过程使用如下损失函数进行监督:
Limage=||h′-h||2 (12)
当训练完成之后,得到一个训练好的图像编码器;
步骤4:获得图像对应的结构化网格模型。
2.如权利要求1所述的一种基于结构的计算机三维网格模型重建方法,其特征在于,步骤4包括以下步骤:
对于每个模型图像,输入到步骤3中训练的图像编码器当中,编码成一个特征向量;
然后,将该特征向量输入给步骤2中训练的部件序列自编码器的解码器部分,解码得到分别表示每个部件的特征的向量序列;
之后,将序列中的每一个向量分别和一个模板网格输入到步骤1训练的部件形状自编码器的解码器部分,得到各个部件网格;
最后,拼接所有的部件网格,得到图像对应的结构化网格模型。
CN202110712031.XA 2021-06-25 2021-06-25 一种基于结构的计算机三维网格模型重建方法 Active CN113436314B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110712031.XA CN113436314B (zh) 2021-06-25 2021-06-25 一种基于结构的计算机三维网格模型重建方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110712031.XA CN113436314B (zh) 2021-06-25 2021-06-25 一种基于结构的计算机三维网格模型重建方法

Publications (2)

Publication Number Publication Date
CN113436314A true CN113436314A (zh) 2021-09-24
CN113436314B CN113436314B (zh) 2022-10-04

Family

ID=77754552

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110712031.XA Active CN113436314B (zh) 2021-06-25 2021-06-25 一种基于结构的计算机三维网格模型重建方法

Country Status (1)

Country Link
CN (1) CN113436314B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109543667A (zh) * 2018-11-14 2019-03-29 北京工业大学 一种基于注意力机制的文本识别方法
CN111160467A (zh) * 2019-05-31 2020-05-15 北京理工大学 一种基于条件随机场和内部语义注意力的图像描述方法
US10769848B1 (en) * 2019-05-24 2020-09-08 Adobe, Inc. 3D object reconstruction using photometric mesh representation
US20200294309A1 (en) * 2019-03-11 2020-09-17 Beijing University Of Technology 3D Reconstruction Method Based on Deep Learning
CN112396703A (zh) * 2020-11-18 2021-02-23 北京工商大学 一种单图像三维点云模型重建方法
CN112967373A (zh) * 2021-02-03 2021-06-15 重庆邮电大学 一种基于非线性3dmm的人脸图像特征编码方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109543667A (zh) * 2018-11-14 2019-03-29 北京工业大学 一种基于注意力机制的文本识别方法
US20200294309A1 (en) * 2019-03-11 2020-09-17 Beijing University Of Technology 3D Reconstruction Method Based on Deep Learning
US10769848B1 (en) * 2019-05-24 2020-09-08 Adobe, Inc. 3D object reconstruction using photometric mesh representation
CN111160467A (zh) * 2019-05-31 2020-05-15 北京理工大学 一种基于条件随机场和内部语义注意力的图像描述方法
CN112396703A (zh) * 2020-11-18 2021-02-23 北京工商大学 一种单图像三维点云模型重建方法
CN112967373A (zh) * 2021-02-03 2021-06-15 重庆邮电大学 一种基于非线性3dmm的人脸图像特征编码方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
朱莉等: "基于深度学习的单幅图像三维重建算法", 《吉林化工学院学报》 *
董涛: "基于纹理图像与网格协同优化算法的三维模型压缩", 《科技资讯》 *

Also Published As

Publication number Publication date
CN113436314B (zh) 2022-10-04

Similar Documents

Publication Publication Date Title
CN109147048B (zh) 一种利用单张彩色图的三维网格重建方法
CN112396703B (zh) 一种单图像三维点云模型重建方法
CN108921926B (zh) 一种基于单张图像的端到端三维人脸重建方法
CN110728219B (zh) 基于多列多尺度图卷积神经网络的3d人脸生成方法
CN110288695B (zh) 基于深度学习的单帧图像三维模型表面重建方法
CN111862101A (zh) 一种鸟瞰图编码视角下的3d点云语义分割方法
Zhou et al. Digital preservation technology for cultural heritage
CN110570522B (zh) 一种多视图三维重建方法
CN111161364B (zh) 一种针对单视角深度图的实时形状补全和姿态估计方法
CN109410321A (zh) 基于卷积神经网络的三维重建方法
CN114359509B (zh) 一种基于深度学习的多视图自然场景重建方法
CN110889893B (zh) 表达几何细节和复杂拓扑的三维模型表示方法和系统
Weissenberg et al. Is there a procedural logic to architecture?
Häne et al. Hierarchical surface prediction
Shi et al. Graph-guided deformation for point cloud completion
CN114140601A (zh) 深度学习框架下基于单幅图像的三维网格重建方法及系统
Sun et al. Ssl-net: Point-cloud generation network with self-supervised learning
CN110717978B (zh) 基于单张图像的三维头部重建方法
CN115512040A (zh) 面向数字孪生的三维室内场景快速高精度重建方法及系统
CN111932679B (zh) 一种基于隐式模板的三维模型表达方式
CN112488117B (zh) 一种基于方向诱导卷积的点云分析方法
CN116385667B (zh) 三维模型的重建方法、纹理重构模型的训练方法以及装置
CN113436314B (zh) 一种基于结构的计算机三维网格模型重建方法
CN113763539B (zh) 一种基于图像和三维输入的隐式函数三维重建方法
CN113593007B (zh) 一种基于变分自编码的单视图三维点云重建方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant