一种三维线条的生成方法、存储介质及系统
技术领域
本发明涉及三维线条
技术领域
,特别涉及一种三维线条的生成方法、存储介质及系统。背景技术
线条艺术是一种通过使用现实中的线条结构(常见的有金属线)来表现二维或者三维形状的艺术形式。在过去几十年中,研究人员对于通过线条形式表达不同形状已经有了很多工作,例如使用网格状的致密线条密绕三维模型表面,或者是艺术家通过高度抽象,从现实的三维物体中抽象出高层次的语义信息,进而将这些语义信息提取成三维线条的形式。
但是,对于能够同时表现出物体信息和具有简洁性的线条结构没有相应的研究工作进行探索。因此,现有技术还有待于改进。
发明内容
鉴于上述现有技术的不足,本发明的目的在于提供一种三维线条的生成方法、存储介质及系统,旨在解决现有技术不能够以简洁性的线条结构表现出物体信息的问题。
本发明的技术方案如下:
一种三维线条的生成方法,其中,包括步骤:
对输入的三维模型进行特征检索,根据检索的特征在所述三维模型表面生成三维曲线结构;
采用交互方式对所述三维曲线结构进行编辑处理,得到三维线条。
所述三维线条的生成方法,其中,对输入的三维模型进行特征检索,根据检索的特征在所述三维模型表面生成三维曲线结构的步骤包括:
对输入的三维模型进行特征检索,获取所述三维模型的所有极值点;
以若干个极值点为起点分别向其它极值点延伸曲线,直至所有的极值点都被曲线访问到,在所述三维模型表面构成三维曲线结构。
所述三维线条的生成方法,其中,以若干个极值点为起点分别向其它极值点延伸曲线,直至所有的极值点都被曲线访问到,在所述三维模型表面构成三维曲线结构的步骤包括:
将三维模型上的极值点连接关系定义为图的边关系,对图中边的权值定义为:其中,lij是三维模型上对应邻接两极值点之间的距离,Lr是已生成曲线对新延伸曲线的影响作用,在没有生成曲线时统一为1,La是三维模型固有的几何特征对新延伸曲线的引导作用;
所述Lr和La的定义为:其中,l是三维模型边的平均长度;a,b是参数;对于La,x是三维模型上某一极值点与给定的三维几何特征之间的测地距离;对于Lr,x是三维模型上某一极值点与已经生成的曲线之间的测地距离。
所述三维线条的生成方法,其中,当所述x为三维模型上某一极值点与给定的三维几何特征之间的测地距离时,a=1.8,b=0.5。
所述三维线条的生成方法,其中,当所述x为三维模型上某一极值点与已经生成的曲线之间的测地距离时,a=1.1.98,b=0.5。
所述三维线条的生成方法,其中,以若干个极值点为起点分别向其它极值点延伸曲线,直至所有的极值点都被曲线访问到,在所述三维模型表面构成三维曲线结构的步骤还包括:
在每次延伸曲线结束之后,对新延伸出的曲线段部分进行如下的判定:若新延伸出的曲线段的∑eij值小于第一预设值或新延伸出的曲线段的c值小于第二预设值,则保留所述新延伸出的曲线段。
所述三维线条的生成方法,其中,对输入的三维模型进行特征检索,根据检索的特征在所述三维模型表面生成三维曲线结构之后,还包括步骤:
通过计算公式:E=EC+αEr对生成的三维曲线结构进行分数统计并按分数高低排序,其中,α为常数,EC=||Fp-Ff||,其中,为三维模型上每个极值点计算其到最近的几何特征的测地距离x,对于每一个计算出的x,再通过一个高斯函数g(x)对其进行变换,Ff是三维模型上包含所有点的g(x)值的一个向量;Fp计算的是三维模型上每个极值点到最近的路径上的点的测地距离;Fpi为计算每个模型上的点到每一小段路径pi的距离,经过高斯函数变换后,对所有得到的向量Fpi进行相加操作,得到
所述三维线条的生成方法,其中,采用交互方式对所述三维曲线结构进行编辑处理的步骤包括:
通过交互式工具修改三维曲线结构的空间形态或者预先在三维模型表面绘制路径,指定曲线延伸时按照所述路径的形态进行。
一种存储介质,其中,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现本发明所述三维线条的生成方法的步骤。
一种三维线条的生成系统,其中,包括处理器,适于实现各指令;以及存储介质,适于存储多条指令,所述指令适于由处理器加载并执行本发明所述三维线条的生成方法的步骤。
有益效果:本发明提供了一种三维线条的生成方法,通过在三维模型上自动检索特征并在三维模型表面构成三维曲线结构,而后通过交互式编辑的方法,用户可以修改三维曲线结构的空间形态。依据本发明提供的方法,能够快速地捕捉到三维模型的信息,并以简洁的三维线条高度还原三维物体的信息,用于后续的工艺品生产和艺术家创作。
附图说明
图1为本发明提供的一种三维线条的生成方法的步骤流程图。
图2为以图片作为输入形式,提取出其中的几何信息,并转换为几根长线条表现形式的示意图。
图3为对三维模型各个分段进行分解,通过构成网络状结构,来构成三维线结构的示意图。
图4为本发明延伸曲线的过程示意图。
图5为本发明提供的一种三维线条的生成系统结构框图。
具体实施方式
本发明提供一种三维线条的生成方法、存储介质及系统,为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
三维模型本身存在的深度信息的复杂性会为生成三维线条的简洁性和审美性提出较大挑战,虽然通过非真实渲染技术能够提取出表示三维模型内含的几何信息和语义信息,但是这些非真实渲染的结果通常只考虑审美结果,而通常由多根散乱的三维线条构成,如何从这些散碎的几何信息中提取出一根或几根线条在三维模型表面的线条来抽象信息,也是本发明解决的问题之一。
基于此,本发明提供了一种三维线条的生成方法,如图1所示,其包括步骤:
S10、对输入的三维模型进行特征检索,根据检索的特征在所述三维模型表面生成三维曲线结构;
S20、采用交互方式对所述三维曲线结构进行编辑处理,得到三维线条。
具体来讲,对于不同形式的线模型生成可采用以下实现方式,第一种是给定参考,例如图片或者三维模型等输入形式的参考,而后基于这些参考形式,在其上提取几何特征或语义信息,例如图2中以图片为输入形式,从中提取出相应的几何信息,从而实现将输入的图片转换为几根长线条的形式;例如图3中以三维模型为输入形式,通过对模型各个分段进行分解,通过构成网络状结构,来构成三维线结构。另一种则是使用交互方式,在二维或三维空间中通过设计出的不同交互形式,来让用户进行较为自由的创造过程。这些形式大多以笔触形式输入作为基本输入,通过在利用深度信息上的一定设计,使得用户能够以二维绘制的方式在三维空间中创造三维线条。
本发明提供的三维线条的生成方法一方面采用三维模型输入形式,从所述三维模型的几何信息之中提取出三维曲线结构;另一方面,本发明提供了以三维模型作为参考的交互工具,用户可以从零开始,通过交互操作来创建在三维模型表面上的三维线模型。用户还可以使用交互工具,对使用三维线条生成方法的结果进行编辑操作。这二者的结合能够大大降低用户创作的难度和所需要的操作数,加速用户创作的过程,并且在本发明提供的交互工具的帮助下,用户能够更好的将三维线条调整到目标形态。本实施例中,所述交互工具可以为AR工具或VR工具,但不限于此。
在一些实施方式中,对输入的三维模型进行特征检索,根据检索的特征在所述三维模型表面生成三维曲线结构的步骤包括:对输入的三维模型进行特征检索,获取所述三维模型的所有极值点;以若干个极值点为起点分别向其它极值点延伸曲线,直至所有的极值点都被曲线访问到,在所述三维模型表面构成三维曲线结构。
具体来讲,在本实施例中,三维模型上的极值点是指三维模型上的远端的点(例如人模型的头顶,手指尖等部位),获取方式为:首先选择三维模型上靠近重心位置的一点P0,而后计算出距离P0最远的点P1,而后以P1为源点,计算从P1出发到三维模型上所有点的测地距离,由此计算出的具有局部极值的点被称为极值点。本实施例从三维模型上的极值点和几何特征开始,极值点在几何结构上表现为三维模型的尖端点,从一个尖端点到另外一个尖端点之间,没有其它附近的点比这两个尖端点之间的距离更远。本实施例中的延伸曲线过程以极值点为单位,从若干个极值点同时开始分别向其它极值点延伸曲线,并在每次延伸后实现剪枝,即对那些延伸过长的曲线或者没有局部几何特征的曲线进行排除,这样经过多次延伸后,直到所有的极值点都被曲线访问到,这样能够在一定程度上保证曲线对三维模型上大部分几何特征进行合理的描述。
在一些实施方式中,如图4所示,将三维模型的几何特征以模型上的点集表示,为了生成兼顾稀疏性和特征描述程度的曲线,本实施例将三维模型看作一个抽象的图结构,三维模型上的尖端点对应图上的点,将三维模型上的极值点连接关系定义为图的边关系,对图中边的权值定义为: 其中,lij是三维模型上对应邻接两极值点之间的距离,Lr是已生成曲线对新延伸曲线的影响作用,在没有生成曲线时统一为1,La是三维模型固有的几何特征对新延伸曲线的引导作用。
本实施例中,所述Lr和La的定义为:其中,l是三维模型边的平均长度;a,b是参数;对于La,x是三维模型上某一极值点距离给定的三维几何特征;对于Lr,x是三维模型上某一极值点距离已经生成的曲线。
在一些具体的实施方式中,当所述x为三维模型上某一极值点与给定的三维几何特征之间的测地距离时,a=1.8,b=0.5。当所述x为三维模型上某一极值点与已经生成的曲线之间的测地距离时,a=1.1.98,b=0.5。这样的设置能够保证生成的曲线能够在合理描述模型几何特征的同时保证一定的稀疏性,不会出现曲线不同部分过于靠近的情况。
在一些实施方式中,在每次延伸曲线结束之后,对新延伸出的曲线段部分进行如下的判定:若新延伸出的曲线段的∑eij值小于第一预设值,则保留所述新延伸出的曲线段,这表明本实施例希望曲线能够先描述较近的特征再描述较远的特征;而后若新延伸出的曲线段的c值小于第二预设值,则保留所述新延伸出的曲线段,这表明本实施例希望曲线能够较好描述特征同时也不会有过多冗余。
在一些实施方式中,经过本发明提供的方法可以得到多个三维曲线结构,为了方便用户从这些三维曲线结构中进行选择,本实施例设计了一个分数计算公式对生成的三维曲线结构进行分数统计并按分数高低排序。本实施例对三维曲线结构的考量主要集中在两个方面:曲线是否较好的描述了三维模型本身的信息,以及曲线在描述三维模型时是否存在重复冗余的现象。这两个方面存在一定的冲突:能够将三维模型表面所有信息描述完整的曲线会在一定程度上存在冗余,而一条结构过于简单的曲线则可能无法完整描述较多的信息。因而本实施例分别为这两项设计考量标准,使得用户渴望的结果能够在这二者之间得到一定的平衡,本实施例设计的分数计算公式为:E=EC+αEr,其中,α为常数,作为举例,设α=0.1。本实施例中,分别基于三维模型这样的标量场:模型上的每个点都会被赋予一个值,表示该点距离生成的三维曲线/几何特征的最近距离,而后这个值会通过一个正态分布的密度函数(取μ=0,σ=4l)。本实施例分别基于整条三维曲线,模型表面的几何特征,以及基于极值点分段的三维曲线,分别设为Fp,Ff,(表示分段曲线构成的场的叠加),则有:EC=||Fp-Ff||,本实施例中,Ff的计算方式如下:为三维模型上每个极值点计算其到最近的几何特征的测地距离x,而后,对于每一个计算出的x,再通过一个高斯函数g(x)对其进行变换,Ff即是模型上包含所有点的g(x)值的一个向量。类似的,Fp计算的是三维模型上每个极值点到最近的路径上的点的测地距离。Fpi首先为每一小段路径pi(段与段之间的路径由极值点分割)计算每个模型上的点到pi的距离,经过高斯函数变换后,对所有得到的向量Fpi进行相加操作,得到
在一些实施方式中,采用交互方式对所述三维曲线结构进行编辑处理的步骤包括:通过交互式工具修改三维曲线结构的空间形态或者预先在三维模型表面绘制路径,指定曲线延伸时按照所述路径的形态进行。
具体来讲,本实施例提供的交互步骤可实现两种功能,第一,允许用户通过交互式工具快捷地修改曲线的空间形态;第二,允许用户指定生成曲线的部分路径,用户可以通过在生成曲线之前在三维模型表面绘制路径,指定曲线在该区域附近延伸时必须按照指定路径的形态进行。这两个交互系统大大加强了用户创作的能力,间接加强了系统的健壮性。
在一些实施方式中,还提供一种存储介质,其中,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现本发明一种三维线条的生成方法中的步骤。
在一些实施方式中,还提供一种一种三维线条的生成系统,如图5所示,其包括至少一个处理器(processor)20;显示屏21;以及存储器(memory)22,还可以包括通信接口(Communications Interface)23和总线24。其中,处理器20、显示屏21、存储器22和通信接口23可以通过总线24完成相互间的通信。显示屏21设置为显示初始设置模式中预设的用户引导界面。通信接口23可以传输信息。处理器20可以调用存储器22中的逻辑指令,以执行上述实施例中的方法。
此外,上述的存储器22中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器22作为一种计算机可读存储介质,可设置为存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令或模块。处理器20通过运行存储在存储器22中的软件程序、指令或模块,从而执行功能应用以及数据处理,即实现上述实施例中的方法。
存储器22可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器22可以包括高速随机存取存储器,还可以包括非易失性存储器。例如,U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。
此外,上述存储介质以及终端设备中的多条指令处理器加载并执行的具体过程在上述方法中已经详细说明,在这里就不再一一陈述。
包括处理器,适于实现各指令;以及存储介质,适于存储多条指令,所述指令适于由处理器加载并执行本发明所述一种三维线条的生成方法中的步骤。
其中,包括处理器,适于实现各指令;以及存储介质,适于存储多条指令,所述指令适于由处理器加载并执行本发明所述一种三维线条的生成方法中的步骤。
综上所述,本发明提供的三维线条的生成方法一方面采用三维模型输入形式,从所述三维模型的几何信息之中提取出三维曲线结构;另一方面,本发明提供了以三维模型作为参考的交互工具,用户可以从零开始,通过交互操作来创建在三维模型表面上的三维线模型;用户还可以使用交互工具,对使用三维线条生成方法的结果进行编辑操作。这二者的结合能够大大降低用户创作的难度和所需要的操作数,加速用户创作的过程,并且在本发明提供的交互工具的帮助下,用户能够更好的将三维线条调整到目标形态。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
- 上一篇:石墨接头机器人自动装卡簧、装栓机
- 下一篇:工艺产品的展示方法及展示装置、电子设备