一种VR环境中基于卷积曲面逼近的建模方法与流程

文档序号:11678658阅读:631来源:国知局
一种VR环境中基于卷积曲面逼近的建模方法与流程

本发明涉及虚拟现实和计算机图形学建模领域,特别是涉及一种vr环境中基于卷积曲面逼近的建模方法。



背景技术:

3d建模技术主要就是在虚拟的三维空间中建立具有三维数据的模型,可应用于各种设计、建筑、工业和动画等领域。面向3d打印机的3d建模技术就可以使用户随时将所建模型打印出来,但是只有具有2d流形曲面的固体模型才能被物理制造或3d打印,也正是因为这个原因,即便3d打印机并不是非常昂贵,也很少有消费者愿意买。

专业的3d建模工具有3dmax、maya、zbrush等等,但是这些专业的3d建模工具对于没有专业技术的一般用户来说太复杂了,而且在这些软件里,很难保证模型有一个流形曲面。另一方面,近年来越来越多的消费者都愿意买vr头显(虚拟现实头戴式显示设备)用于看视频、玩游戏、虚拟仿真等等,但是这些操作仅限于一般的对象交互,所以google推出的一款建模app——tiltbrush吸引了很多人,因为你可以像一个画家一样在vr环境下用各种刷子进行一般的艺术创作。然而用tiltbrush所创造出的模型并不能用于生产实物,因为它们没有体积。

想要在vr环境下得到具有流形曲面的固体模型,可以使用基于骨架的卷积曲面方法进行建模来得到3d圆滑形状。因为骨架能以非常简洁的方式获取一个物体的基本拓扑结构,并且通过操纵骨架能更方便地编辑模型,参见x.zhu,x.jin,s.liu,andh.zhao.analyticalsolutionsforsketch-basedconvolutionsurfacemodelingonthegpu.thevisualcomputer,28(11):1115–1125,2012。卷积曲面定义为通过核函数卷积几何骨架得到的一个嵌入标量场的等值面,参见j.bloomenthalandk.shoemake.convolutionsurfaces.computergraphics,25(4):251–256,1991。它有平滑、流动多样性的拓扑结构、局部控制、不错的融合和实现简单等优点,可以应用于仿真具有复杂拓扑结构的可变形曲面,也可以应用于基于草图的模型建模,能使曲面自然地融合在一起,更能简单地设计具有复杂拓扑结构的光滑模型,参见c.tai,h.zhang,andc.fong.prototypemodelingfromsketchedsilhouettesbasedonconvolutionsurfaces.computergraphicsforum,23(4):71–83,2004。而且闭合形式解可以有效减少卷积积分产生的大计算量,参见e.hubert.convolutionsurfacesbasedonpolygonsforinfiniteandcompactsupportkernels.graphicalmodels,74(1):1–13,2012。



技术实现要素:

本发明的目的是提供一种vr环境中基于卷积曲面逼近的建模方法。该方法在vr环境下使用基于骨架的卷积曲面方法进行建模,得到具有流形曲面的固体模型,然后使用卷积曲面逼近的方法防止了点、线、多边形三种骨架的卷积曲面的缩减,尤其是线段骨架末端或多边形骨架边缘等值面的缩减,这样可以更简单直观地进行建模,增强用户体验。

为达到上述目的,本发明采用如下技术方案:

一种vr环境中基于卷积曲面逼近的建模方法,包括以下步骤:

1)用户选择点、线、多边形三种骨架的其中一种,并指定其大小和厚度;

2)用户通过vr手柄的按钮输入一个骨架;

3)使用卷积曲面对具有半径信息的点、线、多边形骨架进行逼近;

4)在系统得到输入的骨架后会把它们转到gpu上进行并行场计算,然后使用cuda引导之后的多线程等值面提取。

所述步骤3)中的点骨架的卷积曲面会退化成元球曲面,所以为了保证等值面到点骨架的距离为d且支持半径为ri,所设置的点骨架的场权重λi对应函数如下:

其中是等值面到点骨架的距离,ri为支持半径,t是等值面提取的全局阈值。

所述步骤3)中的线骨架根据给定支持半径ri得到的p点处场函数和场权重λi对应函数如下:

其中是等值面到线骨架内部的距离,ri为支持半径,t是等值面提取的全局阈值,为了防止线骨架末端等值面的崩塌从而产生比预期更短的圆柱形卷积曲面,将原线段进行延伸,得到延伸后p点的场函数对应如下:

其中v=di-u,其中u=0.4863ri为延伸的长度,ri为支持半径。

所述步骤3)中的多边形骨架根据给定支持半径ri得到的p点处场函数和场权重λi对应函数如下:

其中是等值面到多边形骨架内部的距离,ri为支持半径,t是等值面提取的全局阈值,为了防止多边形骨架末端等值面的崩塌,将原多边形边缘向外进行偏移,得到偏移后p点的场函数对应如下:

其中θ=2.99表示由偏移多边形与支持球面交叉得到的角,r0为支持球面对多边形面投影的圆的半径,r0=ri,ri为支持半径,最终得到边缘向外偏移的距离

与现有技术相比,本发明具有如下突出的实质性特点和显著的优点:

本发明方法改进了现有3d建模工具基本都是基于二维平面进行建模导致使用复杂和在vr中建模输入大小与输出模型大小不匹配的缺点,使用基于骨架的卷积曲面逼近的方法,为了接近在交互系统中用户输入的不同半径的骨架,分别针对线段骨架末端和多边形骨架边缘推导出了闭合形式的解决方案。此外,对各种复杂的形状,也提供了不同的人性化涂刷方案来简化输入。本发明算法明确,界面友好,结果鲁棒。

附图说明

图1是点骨架卷积曲面逼近对应的示意图。

图2(a)是线骨架内部卷积曲面逼近对应的示意图。

图2(b)是线骨架末端卷积曲面逼近对应的示意图。

图3(a)是多边形骨架内部卷积曲面逼近对应的示意图。

图3(b)是多边形骨架边缘卷积曲面逼近对应的示意图。

具体实施方式

下面结合附图对本发明方法通过实施例进行详细说明。

本发明一种vr环境中基于卷积曲面逼近的建模方法,包括选择点、线、面三种骨架中的一种并设置大小和厚度,通过vr手柄的按钮输入骨架,通过在手柄的触控板上进行x或y方向的滑动来改变刷子的大小、厚度和方向,使用卷积曲面对具有半径信息的点、线、多边形骨架进行逼近,系统把得到的输入骨架转到gpu上进行并行场计算并提取等值面;具体如下四个步骤:

1)用户选择点、线、多边形三种骨架的其中一种,并指定它的大小和厚度;

2)用户通过vr手柄的按钮输入一个骨架;

3)使用卷积曲面对具有半径信息的点、线、多边形骨架进行逼近;

如图1所示,基于点骨架的卷积曲面会退化成元球曲面,所以为了保证等值面到点骨架的距离为d且支持半径为ri,所设置的点骨架的场权重λi对应函数如下:

其中是等值面到点骨架的距离,ri为支持半径,t是等值面提取的全局阈值,可以推出

实际上只要使用足够多的点骨架就能对足够复杂的模型进行建模,但是用那么多的点骨架来近似一个圆柱形太浪费了,因此使用线段来替代一系列的点作为卷积骨架。如图2(a)所示,线骨架内部可以通过假设线段是无限长的来模拟,为了保证等值面能过p点,根据给定支持半径ri来推导得到的p点处场函数和场权重λi对应函数如下:

其中是等值面到线骨架内部的距离,ri为支持半径,t是等值面提取的全局阈值,推导出

但是上述假设对线段的两端是无意义的,因此线骨架的两端就会产生缩减,这就会导致用户得到一个比预期更短的圆柱形卷积曲面,所以为了防止线骨架末端等值面的缩减,可将原线段进行延伸,如图2(b)所示,得到延伸后p点的场函数对应如下:

其中v=di-u,u为延伸的长度,ri为支持半径,可计算出u=0.4863ri。

和线骨架类似,虽然通过积累大量的线骨架可以得到平面,但是多边形骨架更适合产生一些平面的圆滑形状。如图3(a)所示,为了保证等值面能过p点,根据给定支持半径ri得到的p点处场函数和场权重λi对应函数如下:

其中是等值面到多边形骨架内部的距离,ri为支持半径,t是等值面提取的全局阈值,推导出

为了防止多边形骨架末端等值面的缩减,可将原多边形边缘向外进行偏移,如图3(b)所示,得到偏移后p点的场函数对应如下:

其中θ=2.99表示由偏移多边形与支持球面交叉得到的角,r0为支持球面对多边形面投影的圆的半径,r0=ri,ri为支持半径,最终得到边缘向外偏移的距离

4)在系统得到输入的骨架后会把它们转到gpu上进行并行场计算,然后使用cuda引导之后的多线程等值面提取。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1