基于图像级联生成稠密点云的三维模型生成方法及系统与流程

文档序号:23711794发布日期:2021-01-23 21:14阅读:183来源:国知局
基于图像级联生成稠密点云的三维模型生成方法及系统与流程

[0001]
本发明涉及立体设计技术领域,特别是涉及一种基于图像级联生成稠密点云的三维模型生成方法及系统。


背景技术:

[0002]
本部分的陈述仅仅是提供了与本发明相关的背景技术信息,不必然构成在先技术。
[0003]
基于图像重建三维模型是指利用一个或多个图像生成与其相匹配的具有真实感的三维模型,从给定的图像中生成高分辨率模型对于某些实际应用是非常重要的,例如机器人技术、计算机视觉和自动驾驶等,尤其在计算机视觉领域中需重建目标对象的高分辨率三维模型。
[0004]
人类视觉系统能够处理目标对象的视网膜图像以提取其底层的三维结构,人类视觉系统的三维感知能力不仅限于整体形状的重构,而且能够捕获对象表面的局部细节。
[0005]
类似于人类视觉系统,机器同样可以学习并感知三维世界中各种目标对象,其中,点云是机器学习和感知目标对象的一种表现形式,与几何图形和简单网格表示的三维模型相比,点云在表示底层几何结构方面可能不够高效,但是由于其无需定义多种基本单元或连接方式,因此点云也具有许多优势,如具有简单统一、易于学习的三维结构,易于进行几何变换和变形,充分捕获模型的表面信息。
[0006]
点云由于其矢量化和信息紧凑而被广泛使用,但是无序和离散的几何特征降低了从图像中重建点云的准确性;本发明的发明人发现,从单个图像重建三维对象存在以下问题:早期的三维模型重建方法主要基于几何特征的研究,一种是通过在模型投影和输入图像之间寻找最佳拟合参数来进行重构;另一种是根据图像的三维信息,如阴影、纹理、轮廓等恢复几何形状;这些方法需要大量的先验信息,并且对光照和环境有很高的要求,因此通常很难重建高质量的对象模型。


技术实现要素:

[0007]
为了解决上述问题,本发明提出了一种基于图像级联生成稠密点云的三维模型生成方法及系统,通过图像预重构和双重点云均匀上采样重建高分辨率目标点云,并利用分阶段训练和网络微调实现联合优化,使生成的稠密点云具有均匀分布的特点,增强稠密点云模型的视觉真实性,并采用图像再描述机制,使得稠密点云与原始的单幅图像关联程度更高。
[0008]
为了实现上述目的,本发明采用如下技术方案:
[0009]
第一方面,本发明提供一种基于图像级联生成稠密点云的三维模型生成方法,包括:
[0010]
对获取的图像采用预重构处理后得到对应的稀疏点云模型;
[0011]
对稀疏点云模型依次进行双重均匀上采样后得到稠密点云模型,所述双重均匀上
采样包括特征提取、残差图卷积以及上采样处理;
[0012]
对稠密点云模型进行重构,输出与图像相关联的三维图模型。
[0013]
第二方面,本发明提供一种基于图像级联生成稠密点云的三维模型生成系统,包括:
[0014]
预重构模块,用于对获取的图像采用预重构处理后得到对应的稀疏点云模型;
[0015]
稠密点云模型生成模块,用于对稀疏点云模型依次进行双重均匀上采样后得到稠密点云模型,所述双重均匀上采样包括特征提取、残差图卷积以及上采样处理;
[0016]
三维模型模块,用于对稠密点云模型进行重构,输出与图像相关联的三维图模型。
[0017]
第三方面,本发明提供一种电子设备,包括存储器和处理器以及存储在存储器上并在处理器上运行的计算机指令,所述计算机指令被处理器运行时,完成第一方面所述的方法。
[0018]
第四方面,本发明提供一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时,完成第一方面所述的方法。
[0019]
与现有技术相比,本发明的有益效果为:
[0020]
本发明通过图像预重构和点云上采样重建高分辨率目标点云,首先将预重构和均匀上采样结合以生成高分辨率的点云,并通过分阶段训练实现联合优化;继而通过图像再描述机制实现双向关联并增强图像与点云之间的语义一致性。
[0021]
本发明通过预重构、均匀上采样和图像再描述的协同作用,提高生成的稠密点云的精确度,并且生成的稠密点云具有均匀分布的特点,增强稠密点云模型的视觉真实性,使得生成的稠密点云与原始的单幅图像关联程度更高。
附图说明
[0022]
构成本发明的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。
[0023]
图1为本发明实施例1提供的基于图像级联生成稠密点云的三维模型生成方法流程图;
[0024]
图2为本发明实施例1提供的稠密点云的级联生成框架的结构示意图。
具体实施方式:
[0025]
下面结合附图与实施例对本发明做进一步说明。
[0026]
应该指出,以下详细说明都是示例性的,旨在对本发明提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本发明所属技术领域的普通技术人员通常理解的相同含义。
[0027]
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本发明的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0028]
在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
[0029]
实施例1
[0030]
如图1所示,本实施例提供一种基于图像级联生成稠密点云的三维模型生成方法,包括:
[0031]
s1:对获取的图像采用预重构处理后得到对应的稀疏点云模型;
[0032]
s2:对稀疏点云模型依次进行双重均匀上采样后得到稠密点云模型,所述双重均匀上采样包括特征提取、残差图卷积以及上采样处理;
[0033]
s3:对稠密点云模型进行重构,输出与图像相关联的三维图模型。
[0034]
实现在稠密点云生成过程中通过提取单幅图像的信息将视觉技术与三维模型技术融合,实现三维模型的预重构、均匀上采样和图像再描述,最终生成满足用户设计意图的三维模型,实现基于单幅图像重建三维模型。
[0035]
在本实施例中,三维设计对象以椅子为例,可以理解的是,在其他一些实施方式中,所述设计对象可以是一辆车,一个飞机,一张桌子或者一个房子,只要是可以提供视觉方面的图像即可。
[0036]
如图2所示为以该椅子的单幅图像生成稠密点云模型的生成过程,具体包括:
[0037]
所述步骤s1中,为了实现以给定的单幅图像为基础生成视觉真实性和语义一致性的稠密点云,提出预重构过程;
[0038]
所述预重构包括:
[0039]
s1-1:将单幅rgb图像输入到由多个卷积层和全连接层组成的编-解码器网络中;
[0040]
s1-2:通过该网络提取单幅rgb图像特征,输出稀疏点云;
[0041]
s1-3:为了更好的训练网络,预重构损失函数定义为:
[0042][0043]
其中,p
ipre
和分别表示第i个重构样本(pre)的点云和第i个真实样本(t)的点云,表示点云p
ipre
和之间的模型距离,模型距离可以是倒角距离(cd)或地球移动的距离(emd)。
[0044]
所述步骤s2中,稠密点云的级联生成过程旨在对预重构过程生成的稀疏点云进行双重均匀上采样,以实现稠密点云的均匀生成,并具有更高的视觉真实性和语义一致性,均匀上采样由特征提取网络、残差图卷积块和上采样块构成;
[0045]
其中,所述特征提取网络是为了使生成的点云具有更高的视觉真实性和语义一致性,通过获取点云的特征作为辅助信息,以指导稠密点云的生成;本实施例设计特征提取网络块,将点云作为输入,输出与其对应的特征f,具体为:
[0046]
对于形状为1
×
3的每个点p,获得其k个形状为z
×
3的最近邻居n,计算得到点p=n-p;经过对逐个点进行卷积的方式,将p转换为形状为1
×
c的特征f
p
;在本实施例中,将k设置为6,c设置为64,卷积层数设置为3。
[0047]
所述残差图卷积块将点云和对应的特征作为输入,进一步提取残余特征;
[0048]
残差图卷积块的核心是g-conv,g-conv被定义在图g=(v,ε)上,并计算如下:
[0049][0050]
其中,表示第j层顶点p的特征;w
i
是一个的超参数;v(p)是连接到p的所有顶点,由邻接矩阵ε所定义,q是属于v(p)中的一个点;因为无法获得点云的预定义邻接矩阵ε,所以将v(p)定义为欧几里得空间中p的k个最近邻居,其坐标由输入点云x
in
定义。
[0051]
为了更好的训练生成器g,提出残差图卷积损失函数:
[0052][0053]
其中,λ是超参数,用来控制距离损失项和生成损失项之间的平衡;x
i
是输入的稀疏点云;y
i
是与x
i
对应的真实稠密点云;g(x
i
)是点云上采样网络生成的稠密点云;另外,距离损失项和生成损失项的含义解释如下:
[0054]
用来测量y和之间的距离:
[0055][0056]
其中,表示生成的稠密点云;此外,被定义为:
[0057][0058]
为了使网络的训练达到更快的收敛和更好的结果,除了g-conv,本实施例引入残差网络,验证发现残差网络有助于发现低分辨率点云与相应的高分辨率点云之间的相似性。
[0059]
所述上采样块将点云x
in
和与其对应的特征f
in
作为输入,为了预测x
in
和x
out
之间的残差,并不是直接的回归x
out

[0060]
通过g-conv层将形状为的f
in
转换为形状为的张量;
[0061]
将张量重塑为并记为δ
x

[0062]
通过逐点添加x
in
和δ
x
获得上采样后的点云x
out
,点云中的每个点在经过上采样后被转换为两个点。
[0063]
输出点云p对应的输出特征f
out

[0064][0065]
其中,v[x
in
](p)表示点云x
in
中点p的k个最近邻点。
[0066]
在本实施例中,还包括将稀疏点云进行一次均匀上采样后得到较稠密点云,将较稠密点云与相同规模的真实点云进行判别,以判断生成的较稠密点云的真假性;继而将当前阶段的较稠密点云输入到下一个均匀上采样网络中,生成最终的稠密点云。
[0067]
在本实施例中,基于单幅图像重建稠密点云的级联生成网络结构采用端到端的生成方式,生成的稠密点云更具有均匀分布的特点。
[0068]
所述步骤s3中,基于单幅图像生成稠密点云模型后,提出图像再描述机制,提高点
云的视觉真实性,以实现双向关联并增强图像与点云之间的语义一致性;
[0069]
图像再描述模块将原始输入的单幅图像和最终生成的稠密点云映射到公共语义空间中的两个网络,即图像编码器和模型编码器,这两种编码器可以测量图像和点云之间的相似度,以计算用于目标点云重构的图像再生成损失。
[0070]
其中,所述图像编码器采用imagenet上预训练的inception-v3,用来将输入的图像映射到图像语义空间;输入的图像首先被重新缩放为299
×
299大小的像素点,然后再被输入到图像编码器中,经过图像编码器后,图像特征向量被从inception-v3的最后一个池化层中提取出来。
[0071]
所述模型编码器是一维cnn,用来将生成的点云映射到模型语义空间中;本实施例使用一维卷积和特征转换的方法提取模型特征向量并通过添加具有三个全连接层的特征投影网络,将模型特征转换到与图像特征的公共语义空间中;计算公式如下:
[0072][0073]
其中,f
p
表示特征投影网络,是图像语义空间中的模型特征向量。
[0074]
在本实施例中,基于单幅图像生成稠密点云模型以多模块为主体,在多个网络模块的协同作用下引入图像再生成损失,通过将原始的单幅图像和最终生成的稠密点云模型转换到公共的空间中计算出两者的损失,该损失可以表示生成的稠密点云的视觉真实性,并增强单幅图像与最终生成的稠密点云模型之间的关联;
[0075]
所述图像再生成损失用以增强重建的点云与给定图像之间的语义相关性,其损失函数如下:
[0076][0077]
其中,d
euc
(x,y)表示向量x和y之间的欧几里得距离;
[0078]
基于单幅图像重建稠密点云的级联生成网络中生成器的最终生成损失函数为:
[0079][0080]
其中,λ
1

2
是平衡各项损失的超参数,为重建稠密点云的级联生成网络中的预重构损失函数,为残差图卷积块中总的损失函数,为图像再描述模块的图像再生成损失函数。
[0081]
在本实施例中,为了生成视觉真实性更高的稠密点云,提出点云的判别过程,判别器d由特征提取网络、残差图卷积块和池化块三部分组成;
[0082]
采用最远点采样(fps)方法将形状为4n
×
3的输入点云x
in
转换成形状为n
×
3的输出点云x
out
,获得相应点p的特征:
[0083][0084]
其中,max表示逐点进行的最大化操作。
[0085]
在本实施例中,构建图生成对抗网络的局部判别器,代替之前方法中使用的全局判别器,具体地,局部判别器采用多次对输入进行下采样的方式,以使输出包含多于1个点。
[0086]
判别器d的损失函数旨在通过最小化损失来区分真实和生成的稠密点云:
[0087][0088]
本实施例以设计对象的视觉方面的单幅图像作为输入,首先采用预重构模块对单幅图像进行特征提取,预重构稀疏点云,然后采用均匀上采样在稀疏点云的基础上生成稠密点云,根据图像再描述模块,利用图像编码器与模型编码器分别对单幅图像和最终生成的稠密点云进行特征提取,转换到公共的空间之后计算出损失,以确保最终生成的稠密点云具有视觉真实性和语义一致性。
[0089]
实施例2
[0090]
本实施例提供一种基于图像级联生成稠密点云的三维模型生成系统,包括:
[0091]
预重构模块,用于对获取的图像采用预重构处理后得到对应的稀疏点云模型;
[0092]
稠密点云模型生成模块,用于对稀疏点云模型依次进行双重均匀上采样后得到稠密点云模型,所述双重均匀上采样包括特征提取、残差图卷积以及上采样处理;
[0093]
三维模型模块,用于对稠密点云模型进行重构,输出与图像相关联的三维图模型。
[0094]
此处需要说明的是,上述模块对应于实施例1中的步骤s1至s3,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述模块作为系统的一部分可以在诸如一组计算机可执行指令的计算机系统中执行。
[0095]
在更多实施例中,还提供:
[0096]
一种电子设备,包括存储器和处理器以及存储在存储器上并在处理器上运行的计算机指令,所述计算机指令被处理器运行时,完成实施例1中所述的方法。为了简洁,在此不再赘述。
[0097]
应理解,本实施例中,处理器可以是中央处理单元cpu,处理器还可以是其他通用处理器、数字信号处理器dsp、专用集成电路asic,现成可编程门阵列fpga或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0098]
存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据、存储器的一部分还可以包括非易失性随机存储器。例如,存储器还可以存储设备类型的信息。
[0099]
一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时,完成实施例1中所述的方法。
[0100]
实施例1中的方法可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器、闪存、只读存储器、可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
[0101]
本领域普通技术人员可以意识到,结合本实施例描述的各示例的单元即算法步骤,能够以电子硬件或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
[0102]
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
[0103]
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1