CN113221857B - 一种基于草图交互的模型变形方法及装置 - Google Patents
一种基于草图交互的模型变形方法及装置 Download PDFInfo
- Publication number
- CN113221857B CN113221857B CN202110667417.3A CN202110667417A CN113221857B CN 113221857 B CN113221857 B CN 113221857B CN 202110667417 A CN202110667417 A CN 202110667417A CN 113221857 B CN113221857 B CN 113221857B
- Authority
- CN
- China
- Prior art keywords
- sketch
- model
- wire frame
- matching
- original model
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 92
- 230000003993 interaction Effects 0.000 title claims abstract description 35
- 238000007781 pre-processing Methods 0.000 claims abstract description 27
- 230000000670 limiting effect Effects 0.000 claims description 17
- 238000012545 processing Methods 0.000 claims description 17
- 238000007670 refining Methods 0.000 claims description 9
- 238000005457 optimization Methods 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 32
- 230000008569 process Effects 0.000 description 22
- 239000013598 vector Substances 0.000 description 19
- 230000009466 transformation Effects 0.000 description 17
- 239000011159 matrix material Substances 0.000 description 14
- 230000008859 change Effects 0.000 description 11
- 230000002452 interceptive effect Effects 0.000 description 11
- 238000004590 computer program Methods 0.000 description 7
- 230000000007 visual effect Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000011160 research Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000002372 labelling Methods 0.000 description 3
- 238000012216 screening Methods 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000037237 body shape Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000001154 acute effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000001627 detrimental effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 238000012847 principal component analysis method Methods 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000000452 restraining effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/42—Document-oriented image-based pattern recognition based on the type of document
- G06V30/422—Technical drawings; Geographical maps
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
- G06F18/2135—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/10—Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2021—Shape modification
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Architecture (AREA)
- Computer Hardware Design (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种基于草图交互的模型变形方法及装置,其中,上述基于草图交互的模型变形方法包括:对原始模型进行数据预处理,获取原始模型的线框;获取上述线框中各线条之间的结构关系;获取草图,对上述草图和上述线框进行匹配,获取匹配对应信息;基于上述草图、上述匹配对应信息和上述结构关系控制上述原始模型变形。与现有技术中基于草图进行模型变形时,模型根据草图样式完全拟合的方案相比,本发明方案获取线框中各线条之间的结构关系,在对草图和原始模型的线框进行匹配后,基于草图、匹配对应信息和结构关系控制原始模型的变形,有利于保持模型的结构信息。
Description
技术领域
本发明涉及模型变形技术领域,尤其涉及的是一种基于草图交互的模型变形方法及装置。
背景技术
三维创作是计算机图形学中的基本任务之一,其最终目标是为了让创作者能够方便快捷地创作三维模型。目前,鉴于三维模型具有良好的可操作性,人们可以利用现有的模型进行简单的编辑操作来得到符合需求的模型,这种创作方式一方面可以减轻创作者的工作量,同时也能充分利用现有资源,因此针对三维模型变形技术的研究得到了广泛的关注。
目前,已经有部分对于基于草图交互进行模型变形的研究,但现有技术中的研究主要针对自然物体的模型进行变形,模型根据草图样式完全拟合。现有技术的问题在于,在进行模型变形的过程中,模型根据草图样式完全拟合,不利于保持模型(尤其是人造物体对应的模型)的高级结构信息。
因此,现有技术还有待改进和发展。
发明内容
本发明的主要目的在于提供一种基于草图交互的模型变形方法及装置,旨在解决现有技术中基于草图进行模型变形时,模型根据草图样式完全拟合,不利于保持模型的结构信息的问题。
为了实现上述目的,本发明第一方面提供一种基于草图交互的模型变形方法,其中,上述方法包括:
对原始模型进行数据预处理,获取原始模型的线框;
获取上述线框中各线条之间的结构关系;
获取草图,对上述草图和上述线框进行匹配,获取匹配对应信息;
基于上述草图、上述匹配对应信息和上述结构关系控制上述原始模型变形。
可选的,上述对原始模型进行数据预处理,获取原始模型的线框,包括:
提取上述原始模型中的目标线条,作为上述原始模型的线框,其中,上述目标线条为具有二面角的线或位于上述原始模型的边界上的网格边缘。
可选的,上述对原始模型进行数据预处理,获取原始模型的线框,包括:
将上述原始模型体素化,获取初始包络面;
通过正则细分迭代对上述初始包络面进行细化,获取细化包络面;
基于预设的迭代阈值,通过迭代的方式将上述细化包络面的各包络线拉向上述原始模型后作为上述原始模型的线框。
可选的,上述获取上述线框中各线条之间的结构关系,包括:
获取目标对象输入的标注数据;
基于上述标注数据获取上述线框中各线条之间的结构关系,其中,上述结构关系包括对称、平行、共面、垂直和连接。
可选的,上述获取草图,对上述草图和上述线框进行匹配,获取匹配对应信息,包括:
获取目标对象输入的草图,对上述草图中的各线条分别进行识别和处理,获取所有目标直线段和目标规则曲线,其中,上述目标直线段包括识别出的所有直线段和对识别出的所有折线段分别进行线条划分处理后获得的所有直线段;
将各上述目标直线段和各上述目标规则曲线分别与上述线框进行匹配,获取上述线框中的所有匹配线条,其中,各上述匹配线条分别与一条不同的目标直线段或目标规则曲线对应匹配;
分别基于各上述目标直线段和各上述目标规则曲线与各上述匹配线条之间的对应关系获取匹配对应信息。
可选的,上述匹配线条包括匹配直线段和匹配曲线,上述将各上述目标直线段和各上述目标规则曲线分别与上述线框进行匹配,获取上述线框中的所有匹配线条,包括:
对于各上述目标直线段,基于各上述目标直线段与上述线框的各线条之间的距离、各上述目标直线段的方向走势、各上述目标直线段之间的连接关系以及各上述目标直线段之间的距离,分别获取上述线框中与各上述目标直线段对应的匹配直线段;
对于各上述目标曲线,基于各上述目标曲线的曲线匹配信息和上述线框中所有规则曲线的曲线匹配信息,分别获取上述线框中与各上述目标曲线对应的匹配曲线,其中,上述曲线匹配信息包括长短轴和中心点。
可选的,上述基于上述草图、上述匹配对应信息和上述结构关系控制上述原始模型变形,包括:
基于上述草图、上述匹配对应信息和上述结构关系构建原始位置约束、几何约束和草图约束,其中,上述原始位置约束用于限制上述原始模型变形前后的点位置之间的距离,上述几何约束用于限制上述原始模型变形后线框的各线条之间的结构关系,上述草图约束用于限制上述原始模型的变形与上述草图匹配;
基于上述原始位置约束、上述结构约束和上述草图信息约束控制上述原始模型变形。
可选的,上述基于上述原始位置约束、上述结构约束和上述草图信息约束控制上述原始模型变形,包括:
基于上述原始位置约束、上述结构约束和上述草图信息约束对上述原始模型的线框进行全局优化,得到优化线框;
基于上述优化线框牵动上述原始模型的内部网格模型进行变形。
本发明第二方面提供一种基于草图交互的模型变形装置,其中,上述装置包括:
数据预处理模块,用于对原始模型进行数据预处理,获取原始模型的线框;
结构关系获取模块,用于获取上述线框中各线条之间的结构关系;
草图匹配模块,用于获取草图,对上述草图和上述线框进行匹配,获取匹配对应信息;
变形控制模块,用于基于上述草图、上述匹配对应信息和上述结构关系控制上述原始模型变形。
可选的,上述数据预处理模块包括:
包络面获取单元,用于将上述原始模型体素化,获取初始包络面;
包络面细化单元,用于通过正则细分迭代对上述初始包络面进行细化,获取细化包络面;
线框获取单元,用于基于预设的迭代阈值,通过迭代的方式将上述细化包络面的各包络线拉向上述原始模型后作为上述原始模型的线框。
由上可见,本发明方案对原始模型进行数据预处理,获取原始模型的线框;获取上述线框中各线条之间的结构关系;获取草图,对上述草图和上述线框进行匹配,获取匹配对应信息;基于上述草图、上述匹配对应信息和上述结构关系控制上述原始模型变形。与现有技术中基于草图进行模型变形时,模型根据草图样式完全拟合的方案相比,本发明方案获取线框中各线条之间的结构关系,在对草图和原始模型的线框进行匹配后,基于草图、匹配对应信息和结构关系控制原始模型的变形,有利于保持模型的结构信息。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1是本发明实施例提供的一种基于草图交互的模型变形方法的流程示意图;
图2是本发明实施例提供的一种基于草图对原始模型进行变形处理的流程示意图;
图3是本发明实施例提供的相邻三角面片形成的二面角的示意图;
图4是本发明实施例图1中步骤S100的具体流程示意图;
图5是本发明实施例图1中步骤S200的具体流程示意图;
图6是本发明实施例提供的一种标记***的主界面示意图;
图7是本发明实施例图1中步骤S300的具体流程示意图;
图8是本发明实施例提供的一段草图笔触的方向序列示意图;
图9是本发明实施例提供的一种笔触极端输入形式示意图;
图10是本发明实施例图7中步骤S302的具体流程示意图;
图11是本发明实施例提供的规则曲线与直线段接触情况示意图;
图12是本发明实施例图1中步骤S400的具体流程示意图;
图13是本发明实施例提供的一组对称线段示意图;
图14是本发明实施例提供的一组平行线段示意图;
图15是本发明实施例提供的一组垂直线段示意图;
图16是本发明实施例提供的一种模型线框中线接触的情况示意图;
图17是本发明实施例提供的一组线段间连接关系的示意图;
图18是本发明实施例图12中步骤S402的具体流程示意图;
图19是本发明实施例提供的一种线框的变形方程组设置示意图;
图20是本发明实施例提供的一种线条变换过程示意图;
图21是本发明实施例提供的测试中原始模型及其变形的目标样式示意图;
图22是本发明实施例提供的一种各操作***对应的操作时间统计示意图;
图23是本发明实施例提供的一种各操作***对应的操作次数统计示意图;
图24是本发明实施例提供的一种基于草图交互的模型变形装置的结构示意图;
图25是本发明实施例图24中数据预处理模块510的具体结构示意图;
图26是本发明实施例提供的一种交互***界面示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定***结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况下,省略对众所周知的***、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
下面结合本发明实施例的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其它不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
目前三维模型在游戏、模型创作、制造等领域得到广泛的应用。例如人们可以通过建模软件进行创作模拟真实的物体,用于游戏场景设计或者工业制造等。三维创作是计算机图形学中的基本任务之一,其最终目标是为了让创作者能够方便快捷地创作三维模型。目前,鉴于三维模型具有良好的可操作性,人们可以利用现有的模型进行简单的编辑操作来得到符合需求的模型,这种创作方式一方面可以减轻创作者的工作量,同时也能充分利用现有资源,因此针对三维模型变形技术的研究得到了广泛的关注。然而现有技术中,对现有模型的再创作同样需要创作者具有较高的艺术创造力和技术能力,在这个再创作过程中需要大量的手工处理,给每个从事图形和相关领域的研究人员造成不必要的负担。
对于三维模型形状编辑的目的是通过适度的用户交互,使得现有的形状向预期样式发生新的变化。关于模型变形,不同研究者从不同角度提出了自己的解决方案,比如在微分领域的模型编辑、操纵框架的自由变形的模型编辑等。但现有技术中的研究主要针对自然物体的模型进行变形,模型根据草图样式完全拟合。而人造物体的三维模型,例如汽车、建筑物、家具等,具有丰富结构信息。由于这些形状编辑的对象具有强烈而且丰富的几何特征,如何保持结构等高级特征(比如对称、共面、连接等强烈的几何相关性)受到越来越多的关注。交互式三维模型变形可以使用现有的模型,通过用户交互式输入一些简单的草图来引导模型向目标形状改变,相比手动调整现有模型的相关参数或者重新设计模型来说,这种通过草图引导三维模型变形的方法大大减少了创作者的工作量,提高了创作效率。但现有技术的问题在于,在进行模型变形的过程中,模型根据草图样式完全拟合,不利于保持模型(尤其是人造物体对应的模型)的高级结构信息。且对于大多数用户而言,制作足以准确地传达形状的草图是一项挑战,使得用户不能方便、快速地实现模型变形。
为了解决现有技术的问题,本发明方案对原始模型进行数据预处理,获取原始模型的线框;获取上述线框中各线条之间的结构关系;获取草图,对上述草图和上述线框进行匹配,获取匹配对应信息;基于上述草图、上述匹配对应信息和上述结构关系控制上述原始模型变形。与现有技术中基于草图进行模型变形时,模型根据草图样式完全拟合的方案相比,本发明方案获取线框中各线条之间的结构关系,在对草图和原始模型的线框进行匹配后,基于草图、匹配对应信息和结构关系控制原始模型的变形,有利于保持模型的结构信息。同时,也能降低对用户输入的草图的要求,有利于帮助用户方便、快速地实现模型变形。
示例性方法
如图1所示,本发明实施例提供一种基于草图交互的模型变形方法,具体的,上述方法包括如下步骤:
步骤S100,对原始模型进行数据预处理,获取原始模型的线框。
其中,上述原始模型是需要进行变形的三维模型。具体的,上述原始模型可以是三维模型处理***预先提供的标准三维模型,例如圆柱体、圆锥体等三维模型;也可以是用户预先制作的三维模型,例如,用户在之前的工作中已经制作了汽车的三维模型作为原始模型,现在需要对原始模型进行变形获得新的汽车样式。上述线框是上述原始模型的抽象的结构线条的集合,即框架线条的集合,是可以描述模型结构的抽象框架。
步骤S200,获取上述线框中各线条之间的结构关系。
其中,上述结构关系是上述原始模型的线框对应的线条之间的几何结构关系。在一种应用场景中,上述结构关系还可以包括上述原始模型的内部的线条之间的几何结构关系,以更好的体现原始模型的结构信息。几乎所有的人造物体都存在许多结构关系,在对这些模型进行提取抽象结构的时候,通常会产生大量的线条,这些线条之间的关系的保持可以引导着模型本身结构的保持。因此可以分析这些线条之间的关系,形成一些具有某些关系的线条组合,正确且丰富的结构关系可以指导后续变形步骤更好地推进,且在原始模型变形的过程中保持模型的结构信息。
步骤S300,获取草图,对上述草图和上述线框进行匹配,获取匹配对应信息。
其中,草图可以是用户绘制的线条组成的图案、用户提供的图片、照片等,在此不做具体限定。本实施例中,通过用户绘制线条生成草图,获取用户绘制的草图后,要对上述草图进行预处理,识别出草图中有效的线条,并将各有效的线条与上述线框对应的线条进行匹配,从而将草图中线条和线框对应的线条的匹配关系作为匹配对应信息。
步骤S400,基于上述草图、上述匹配对应信息和上述结构关系控制上述原始模型变形。
具体的,通过模型本身的框架结构线条的改变,执行一个全局的优化求解得到变形后的模型线框,将这些变形后的模型线框作为控制部件牵动着三维网格模型进行变形。本实施例中,基于上述草图中的线条与匹配对应信息控制原始模型的线框变形,同时在变形过程中控制线框的结构关系,从而有利于保持模型的高级结构信息。
由上可见,本发明实施例提供的基于草图交互的模型变形方法对原始模型进行数据预处理,获取原始模型的线框;获取上述线框中各线条之间的结构关系;获取草图,对上述草图和上述线框进行匹配,获取匹配对应信息;基于上述草图、上述匹配对应信息和上述结构关系控制上述原始模型变形。与现有技术中基于草图进行模型变形时,模型根据草图样式完全拟合的方案相比,本发明方案获取线框中各线条之间的结构关系,在对草图和原始模型的线框进行匹配后,基于草图、匹配对应信息和结构关系控制原始模型的变形,有利于保持模型的结构信息。
图2是本发明实施例提供的一种基于草图对原始模型进行变形处理的流程示意图,如图2所示,在一种应用场景中,上述步骤S100进行数据预处理的过程中,可以同时获取上述原始模型中线条的结构关系。具体的,获得原始模型,原始模型表面有丰富的网格信息,为实现对原始模型的编辑,对原始模型进行数据预处理,获得原始模型的线框,且获得原始模型中线框对应的线条之间的结构关系,图2中数据预处理所示的即为提取线条框架结构和框架结构关系的模型,其中,两条有球体标识选中的边具有对称关系,左边的球体标识选中的边的边角处直角符号标识存在垂直关系。图2中还依次示出了用户输入的草图、输入草图后进行草图和线框的匹配对应信息以及最终基于草图、匹配对应信息和结构关系控制原始模型变形的结果,图2中在参照草图进行变形的同时维持了原始模型中标记的边的对称关系和垂直关系,用户操作简单且有利于保持原始模型的结构信息。
在数据预处理阶段主要完成对模型结构层面的分析,考虑到原始三维模型具有比较繁多的细节信息,然而这些细节信息对于指导最终的变形没有举足轻重的作用,为了得到模型的抽象结构信息,需要对模型进行抽象化处理,把对变形约束不大的细节信息丢去,只留下可以描述模型结构的抽象框架。一般来说,人造物体对应的原始模型可以非常精细,足以捕捉到模型表面的细节。例如,图2中所示的原始模型,在轮子处存在比较多的细节,然而这些模型形状通常是通过一些定义特征来描述和识别的,基于这些特征的形状描述(通常涉及到一些特征曲线)潜在地模拟了人类可能存储和使用的用于推理需求的极简表示。这些紧凑、抽象的描述在视觉上比详细的原始描述更清晰,因此在对原始模型进行变形前可以将模型数据进行抽象化,获取原始模型的线框。
在一种应用场景中,上述步骤S100包括:提取上述原始模型中的目标线条,作为上述原始模型的线框,其中,上述目标线条为具有二面角的线或位于上述原始模型的边界上的网格边缘。
对于大多数人造物体,抽象的结构线条一般位于光滑表面的交界处,因此在提取这些线条时,可以确定边角锋利的网格边缘,即具有锐二面角的线或位于边界上的网格边缘。这类的线条可以用来描述具有棱角结构的人造物体的模型。具体的,求取两个相邻三角面片之间的夹角,夹角的角度越小则说明两个三角面片的公共边更有可能用来描述模型的抽象结构,当两个三角面片所形成的二面角是钝角则说明这两个三角面片所组成的模型表面接***滑,棱角结构不明显,具体的,可以设定一个角度范围阈值(如90°),当夹角角度小于上述角度范围阈值时,认为两个三角面片的公共边可以用来描述模型的抽象结构,通过这种筛选方法可以将符合条件的边逐个筛选出来简化模型。
图3是本发明实施例提供的相邻三角面片形成的二面角的示意图,如图3中所示,分别过两个相邻三角片不相邻的顶点向公共边做垂线,求三维空间中这两条垂线之间的夹角即为两个三角面片的夹角。由图3可知,形成钝二面角的两个三角面片过渡更为平滑,这类的面片可以用来描述模型的内部细节,不利于描述抽象结构。锐二面角则具有更锋利的边角信息,可以直观地描述模型抽象结构,所以选择提取形成锐二面角两个三角面片的公共边作为描述模型抽象结构的框架边。通过上述提取线框的方法,可以提取简单三维模型的线框,例如,原始模型是一个各个面上有三角网格的立方体模型,通过上述方法可以筛选出原始模型的位于棱角的边作为线框的线条,可以反映立方体的抽象结构。
具体的,本实施例中,如图4所示,上述步骤S100包括:
步骤S101,将上述原始模型体素化,获取初始包络面。
步骤S102,通过正则细分迭代对上述初始包络面进行细化,获取细化包络面。
步骤S103,基于预设的迭代阈值,通过迭代的方式将上述细化包络面的各包络线拉向上述原始模型后作为上述原始模型的线框。
对于结构复杂、细节繁多的模型,其特征线条可能位于一个平滑的弧度面上,可以通过上述步骤S101到步骤S103的方法更好的提取线框。本实施例中,先对原始模型进行初始化,将原始模型体素化后,其体素壳外部可见表面被提取为初始包络面。然后基于预设的正则细分迭代次数来进行细化,具体的,本实施例中,使用一次或两次正则细分迭代来细化初始的粗糙网格,其目的是实现后续拟合过程中更好的近似。得到细化后包络面对应的细化模型后,将包络线拉向原始模型,同时保持整体形状,基于获得的新包络面获取原始模型的线框。本实施例中,把包络线拉向模型这个步骤是通过迭代的步骤来实现的,迭代分为以下几步:首先求得包络线上的点距离原始的网格模型最近的点,得到包络线点到模型点的匹配对应;然后以模型上的点为约束点,作为包络面点变形后的位置信息,对包络面执行变形操作;最后正则化包络面的网格模型。迭代上述流程,达到最大迭代次数时流程终止。
具体的,线框上的每个顶点都可以匹配到输入的原始模型上最近的位置,将线框点到模型点的距离明显大于平均距离的匹配丢弃,即丢弃离群值匹配。在匹配过程中建立的对应关系提供的目标位置可能在后续迭代过程中存在不一致,为了避免这种问题,引入如公式(1)所示的变形公式,该公式提供了一个点之间强制匹配和保持当前包络形状和位置之间的一个权衡,通过公式(1)来实现权衡两者之间的关系:
其中,中vi表示线框上点的新坐标,v′i表示当前线框上顶点位置,下标i,j表示线框上点的索引值,e=(i,j)表示线框第i个点和第j个点组成的边e,其中Ii项是拉普拉斯算子坐标,根据所给的(v′i-∑e=(i,j)v′j|(i,j)|)计算当前线框的点坐标,wi为线框上点匹配到模型表面的点坐标。公式(1)的前两项用于保持外层线框的结构信息,能够有效地保证线框尽可能向模型表面贴合同时又保持了自身的结构。c1、c2、c3分别表示各项约束的权重系数,可以预先设置,还可以根据实际需求进行调整,在此不做具体限定,得到的线性方程组使用稀疏线性求解器求解。随着线框包络线的变形,网格三角形的质量可能会越来越差,因为初始连通性可能不能准确地反映拟合几何形状,因此这个迭代拟合通过在每次迭代后执行网格正则化来解决这个问题。通过上述步骤的迭代推进,可以得到一个近似原始模型的拓扑几何形状。
具体的,本实施例中,如图5所示,上述步骤S200包括:
步骤S201,获取目标对象输入的标注数据。
步骤S202,基于上述标注数据获取上述线框中各线条之间的结构关系,其中,上述结构关系包括对称、平行、共面、垂直和连接。
对模型抽象化处理后得到的是一些由三维点和线组成的抽象结构,这些描述模型的线之间又存在一些结构上的关系,比如:对称、共面、平行、垂直等。而在模型变形前后用户期望的是其原本的结构信息可以保持,即对称关系不被破坏、共面关系依然保持等等,所以需要对原始模型的结构进行分析。
本实施例中,通过用户(即目标对象)标注来获取原始模型的线框中各线条之间的结构关系。在一种应用场景中,还可以通过***自动识别分析各线条之间的结构关系,或者结合自动识别和用户标注的方式获取结构关系,在此不做具体限定。上述结构关系用于描述各线条之间的几何结构的关系,例如,两条线垂直、平行、共面等。图6是本发明实施例提供的一种标记***的主界面示意图,本实施例中,标记***加载原始模型的线框,用户可以对线框中各线条之间的关系进行标注并为后续模型处理提供正确的数据。如图6所示,标记***顶部工具栏中操作符涵盖以下操作:文件操作、线条选择操作、添加关系操作、优化模型框架结构线条操作;右侧下拉菜单栏用于显示模型的不同数据信息:点、线、面、结构关系等;中间操作区主要用于用户选取并标记模型的线条。将用户的选取和标记作为标注数据,最终可以导出标记结果或标注数据,从而获得各线条之间的结构关系。
具体的,本实施例中,如图7所示,上述步骤S300包括:
步骤S301,获取目标对象输入的草图,对上述草图中的各线条分别进行识别和处理,获取所有目标直线段和目标规则曲线,其中,上述目标直线段包括识别出的所有直线段和对识别出的所有折线段分别进行线条划分处理后获得的所有直线段。
步骤S302,将各上述目标直线段和各上述目标规则曲线分别与上述线框进行匹配,获取上述线框中的所有匹配线条,其中,各上述匹配线条分别与一条不同的目标直线段或目标规则曲线对应匹配。
步骤S303,分别基于各上述目标直线段和各上述目标规则曲线与各上述匹配线条之间的对应关系获取匹配对应信息。
本实施例中,用户可以基于交互式方法,通过一定的输入(草图)来引导原始模型的变形。例如,用户可以输入简单的笔触,通过筛选笔触到模型之间可能的匹配情况引导变形,同时,用户还可以交互式的修改当前的匹配情况。有了草图到模型线框之间的对应后,草图的信息作为框架变形的一项约束条件,在结构关系的约束限定,以及原始模型的结构限定下,通过执行二次优化,迭代地完成对各项约束的一个权衡。在得到变形后的框架结构后,根据变形前后同一条线的变换情况来对内部网格中的点执行线条相应的转换。
本实施例中,用户输入简单笔触构成草图,获取用户输入的草图后,对草图中的笔触进行识别和处理,然后自动计算各笔触邻近的线框线条,筛选出可能的对应情况,对于不符合用户预期的匹配,用户可以进行交互式调整。本实施例中,将用户输入的笔触识别并划分为单条直线段、折线段、规则曲线和普通曲线。具体的,获取用户输入的草图后,先判断各笔触的曲直情况,划分曲直后,对折线段进行线条划分处理,使其断裂为多条直线段,方便与线框进行匹配。对曲线笔触,进行拟合椭圆或圆的操作,判别其是否为规则曲线,对于非法输入的普通曲线(不规则曲线),将其作为误输入进行清除。进一步的,对于各笔触,还可以将长度小于预设的长度阈值的笔触作为误输入并清除。
本实施例操作的模型主要是人造物体的模型,人造物体基本上是由规则的几何图形构成的,对于这类模型提取的框架结构主要是由直线或是规则圆弧线构成,用户在使用草图来引导变形时一般会在保持模型原始线条的基础上进行模型再创作,因此输入的线条一般是接近直线的输入或是一些接近规则曲线(如椭圆或圆)的输入,所以在得到输入的线条后,需要对其曲直识别,针对一笔多折的输入,也需要对折线进行切割分段直线处理。具体的,用户输入的线条是由均匀的点序列构成的S=(p1,p2,…,pn),其中S表示输入的笔触,pn表示笔触上的第n个点。对草图笔触S上的点S=(p1,p2,…,pn),分别求取顶点pi到下一个顶点pi+1之间的方向向量具体的,可以根据如下公式(2)计算前后两个顶点之间的方向:
这个方向可以表示笔触的走势情况,对于直线来说前后的笔触走势的方向差别不大,可以具体判断笔触线条的类型。将草图逐个点到下一个点的方向进行计算得到一个草图笔触方向序列图8是本发明实施例提供的一段草图笔触的方向序列示意图。根据草图笔触方向序列,比较前后方向/>之间的夹角θi,具体的,可以通过如下公式(3)计算θi:
进一步的,可以输入或预先设置角度阈值,对于折线段,在前后方向变化幅度超过设定的角度阈值处进行切割处理,将一条折线段根据所述直线进行分段。在一种应用场景中,还对当前直线段首部笔触方向与当前笔触方向之间的角度误差进行判断,避免只计算前后两个笔触方向之间的角度误差来判断前后两个点是否位于同一条直线上时,出现误差逐步累积,导致分割的线条首尾两个方向之间的误差超过了实际允许的角度阈值的情况。在另一种应用场景中,进一步考虑笔触输入的极端情况(如图9所示),对笔触方向的条件再增加一层判断约束。具体的,首先比较当前方向与上一个方向/>是否接近;其次比较当前方向/>与所属直线首部的方向/>是否接近;最后再比较从所属直线首部到当前位置的中心部位的方向/>是否与当前方向/>接近,从而将输入的笔触直线部分筛选切割出来。
其中,上述目标规则曲线是用户输入的草图中的所有规则曲线,具体为可以拟合成圆或椭圆的曲线。当输入的笔触不是直线而是曲线时,判断该笔触是否为规则曲线。具体的,将输入的笔触均匀处理;使用主成分分析方法得到曲线长短轴方向及中心点;使用最小二乘法拟合椭圆方程;得到椭圆方程后根据规则椭圆点到曲线点进行误差拟合,根据其拟合误差来判别曲线是否为规则曲线。预先设置拟合误差阈值(可以根据实际需求进行设置和调整),当拟合误差小于上述拟合误差阈值时,认为该曲线为规则曲线,并作为目标规则曲线。
获得上述目标直线段和目标规则曲线后,分别与线框中的线条进行匹配,获取线框中匹配线条与目标直线段或目标规则曲线的匹配关系,作为匹配对应信息。本实施例中,上述匹配线条包括匹配直线段和匹配曲线,如图10所示,上述步骤S302包括:
步骤S3021,对于各上述目标直线段,基于各上述目标直线段与上述线框的各线条之间的距离、各上述目标直线段的方向走势、各上述目标直线段之间的连接关系以及各上述目标直线段之间的距离,分别获取上述线框中与各上述目标直线段对应的匹配直线段。
步骤S3022,对于各上述目标曲线,基于各上述目标曲线的曲线匹配信息和上述线框中所有规则曲线的曲线匹配信息,分别获取上述线框中与各上述目标曲线对应的匹配曲线,其中,上述曲线匹配信息包括长短轴和中心点。
具体的,每一笔的匹配对应都与草图线条到原始模型的线框线条之间的方向和距离有关,同时不同笔触之间的连接情况对于匹配情况也有一定的影响。第一笔的绘制没有可以参考的先前匹配情况,此时仅考虑当前笔触与模型线框的线条(即框架线条)之间的距离di以及线条方向的走势情况,通常用户期望变形前后的模型有变化,因此框架中每条线当前的方向不一定与输入笔触方向走势邻近,所以在做匹配时方向邻近这项比较项权重相对较小。计算笔触和框架线条之间的距离时,主要是针对输入笔触检测出来的直线部分与框架线条之间计算距离。具体的,计算笔触线条到框架直线之间的距离ds→l,同时计算对应框架直线与笔触线条之间的距离dl→s,然后求取这两个距离的平均值作为这两条线之间的距离di。绘制的笔触检测到的直线部分由这段草图上均匀散布的点组成,把这段笔触上的点序列记为S={p1,p2,…,pn},模型框架的某个线条是由两个顶点构成,在计算这个线条到草图直线之间的距离时,为了使结果更加准确,首先在框架线条上均匀散布一些点,记为L={q1,q2,…,qn}。此时分别计算草图上这些点到L的距离和框架线条上的点到草图S之间的距离。一种点到线段之间距离的计算公式如下公式(4)所示:
其中,上述d(pt,vivj)为点pt到vivj线段之间的距离,θi表示与/>之间的夹角,θj表示/>与/>之间的夹角,比较这两个角度与90°大小,当某个夹角大于90°时说明点与线段两端构成的三角形为钝角三角形,则点pt与直线段的距离就使用这个点与线段两个端点的最近距离。当点pt与直线段两端点连接形成锐角三角形,则直接通过计算点到直线段的垂直距离得到。利用这种计算点到直线段距离的方式,分别计算草图直线段上每个点到线框上的直线段的距离和在线框上的直线段上散布的所有点到草图直线段的距离,然后将对所有的距离求取平均当作这两个直线段之间的距离。这种计算两个线段之间距离的方式,能一定程度求得两个线段之间的相似性以及临近情况。
求得笔触到模型框架线条之间的距离,从框架线条中筛选出来距离较小的几条作为当前笔触可能的匹配线条。进一步的,匹配流程一方面参考当前笔触与框架线条之间的距离,同时也参考当前笔触与先前输入的笔触之间的距离,例如,当输入的笔触Si与先前输入的某条笔触Sj具有一个连接关系(即Si与Sj在某处距离为0),其中Si表示第i条笔触,Sj表示第j条笔触,那么Si和Sj对应的匹配线条也应当具有连接关系。从而通过当前笔触与先前输入的笔触之间的距离筛选可能的匹配线条。
对于输入笔触中的规则曲线部分,将笔触识别为规则曲线后,还可以根据该规则曲线是否与直线段接触,作为查找规则曲线的笔触与框架线条匹配的一个依据。进一步的,规则曲线与直线段的接触可能存在多种情况,例如,直线段穿过规则曲线内部,或者直线段与规则曲线相切。而人造物体模型中的规则曲线一般为圆柱或圆锥的底面,所以直接考虑规则曲线与直线是否相交不能作为判别依据,即规则曲线与直线的相交包括有效接触(即直线段与规则曲线相切接触)和非有效接触,如图11所示。本实施例中,将笔触中的规则曲线与直线段的有效接触作为匹配依据,有助于将规则曲线或者邻接规则曲线的直线段有效地匹配到线框中的正确位置。具体的,识别出笔触中的规则曲线后,根据拟合的椭圆或者圆得到曲线匹配信息,其中,上述曲线匹配信息包括长短轴及中心点,还可以包括其它体现曲线特征的信息,在此不做具体限定。然后与线框中所有规则曲线的中心点、长短轴的邻近情况得到距离最近的规则曲线进行匹配。进一步的,对于与规则曲线接触的直线,在匹配时会结合与规则曲线的距离关系进行匹配。本实施例中,草图的笔触与模型线框之间的匹配是自动计算比较得到的,进一步的,用户可以通过交互的方式根据实际情况对匹配后的各线条之间的匹配关系进行调整,提升匹配准确性。具体的,获得目标直线段对应的匹配直线段以及目标曲线对应的匹配曲线后,记录其匹配关系,作为匹配对应信息,以便引导原始模型的变形。
具体的,本实施例中,如图12所示,上述步骤S400包括:
步骤S401,基于上述草图、上述匹配对应信息和上述结构关系构建原始位置约束、几何约束和草图约束,其中,上述原始位置约束用于限制上述原始模型变形前后的点位置之间的距离,上述几何约束用于限制上述原始模型变形后线框的各线条之间的结构关系,上述草图约束用于限制上述原始模型的变形与上述草图匹配。
步骤S402,基于上述原始位置约束、上述结构约束和上述草图信息约束控制上述原始模型变形。
具体的,上述原始位置约束限制变形后的点与变形前的点的距离不超过预设的位置约束阈值。在控制原始模型变形的过程中,通过几何约束维持线框的线条之间的结构关系,例如对称关系、平行关系、垂直关系、共面关系、连接关系、几何体形状等。通过草图约束限制原始模型的变形趋势与草图中笔触相对应。本实施例中,可以分别为上述各约束设置权重值,从而进行加权约束。在一种应用场景中,设置几何约束的权重值大于草图约束的权重值,草图约束的权重值大于原始位置约束的权重值。具体的,各约束的权重值可以根据实际需求进行设置和调整,在此不做具体限定。
具体的,图13是本发明实施例提供的一组对称线段示意图,在得到两条线段具有对称关系的情况下,要保持这两条线段在变形后在相对位置上依然是对称。如图13所示,记框架线条Li={vi,vi+1}和框架线条Lj={vj,vj+1}具有对称关系,其中vi和vi+1表示构成这条线段的两个端点,要保持这组线段的对称关系,需要满足变形前后对称的两条线在对称面法向量上的投影长度保持一致,即图13中di和dj相等;其次关于对称面对称的两个点需要保证变形后这两个点构成的向量与对称面垂直。保证这两项约束即可确保这组线段在变形前后不受原始位置约束依然具有对称关系。在保持两个线段投影在对称面法向量方向的距离相等这个约束条件时,首先通过原始的对称情况计算出两条线段li,lj的对称面法向量通过/>和/>得到线段li和lj的方向向量,然后需要满足如下公式(5)和(6)同时成立,保证变形后对称的这两条线在对称面法线方向的投影距离相等:
在保持这组对称线的对称的点在变形后的连线构成的方向与对称面垂直的约束中,首先根据初始位置计算出对称面方程,然后得到对称面上相互垂直的两个向量接下来只要保证变形后/>这两个向量与对称面的两个向量垂直即可,这项约束可以通过满足如下公式(7)来实现:
图14是本发明实施例提供的一组平行线段示意图,如图14所示,对于具有平行关系的两条线段li,lj,在设置约束时引入一个标准方向这个标准方向根据初始两个平行向量的方向确定,变形的过程中,两条线段方向始终保持与标准方向平行即可保证具有平行关系的两个方向依旧保持平行。具体的,获取标准方向/>将这个标准方向作为一个已知项,根据公式(8)可知满足平行关系时,两个向量对应x、y、z上的分量比值相等,因此可以将这项比值等式拆分然后两两交叉相乘,转变成公式(9)给出的三组等式:
根据上述保持两向量平行的方法,依次对平行的一组直线与标准方向做同样的操作,对于变形后约束一组平行的标准方向与这组平行线段方向有细微的偏差,在每一次迭代变形后都做一次调整标准方向的操作。直接通过计算变形后的这组平行线段方向的平均值的方式来求得新的标准方向。
图15是本发明实施例提供的一组垂直线段示意图,具有垂直关系的两个方向向量满足如下公式(10):
直接通过将直线段li,lj的方向向量点乘等于0的方式来约束这两个直线的垂直关系是存在一些问题的,因为所得到的约束项是一个二次式,但是在变形矩阵中需要将这些约束使用线性关系来表达。为了解决这个问题,参考上述解决平行关系约束问题的方法,同样引入一个标准方向这个标准方向与这组垂直关系的线段中的一条线具有垂直关系,和另一条线段具有平行关系,通过这种方法可以将这个二次式约束项转化为线性关系。首先以这组垂直的线段方向中任选一个作为标准方向/>假设与标准方向平行的为直线段lj,与标准方向垂直的为直线段li,在设置约束项时需要满足这两项同时成立。可以参考公式(9)来实现lj与标准方向的平行,利用公式(10)来保证li与标准方向的垂直,公式中/>表示第i条线框线的方向单位向量,/>表示第j条线框线的方向单位向量。变形部分是迭代推进的,每一步变形都会引起顶点位置改变,相应的垂直关系中的标准方向也会随之有一定的偏移。为了解决这种问题,同样参考保持平行关系的方法中迭代更新标准方向,在垂直关系中,为了避免一组垂直线段中某一条对于标准方向影响过大,在迭代更新标准方向时,首先由两个垂直的方向向量进行叉乘运算得到一个与这组垂直的方向都垂直的方向/>随后由这个方向/>与标准方向垂直的线段li叉乘得到/>此时得到的/>是与标准方向平行的线段lj的方向向量进行求平均得到新的标准方向/>
对于存在共面关系的线段,可以通过预先求得所共面的面方程F(x,y,z)=Ax+By+Cz+D,然后确保线段顶点坐标满足面方程成立,当一组线段的端点都满足这个方程成立,则说明这组线的点都位于共面的这个面上。同样在变形过程中,由于算法是迭代推进方式逐步调整框架结构的位置信息,因此初始所共面的面方程可能会出现方向上的移动,在面方程误差较大的情况下强行约束这些共面的点位于同一平面上可能会出现一些扭曲现象。为了解决这个误差叠加的问题,同样地在每步变形后重新更新面方程,根据同一平面上的点坐标,拟合出来一个新的平面方程F′(x,y,z)=A′x+B′y+C′z+D′,得到新的平面方程后同样做上述操作可以保证多次迭代后共面的点仍在同一平面上。
图16是本发明实施例提供的一种模型线框中线接触的情况示意图,图17是本发明实施例提供的一组线段间连接关系的示意图。在模型的线框中,存在一些两条线相接的情况,且不仅包括相交类别的连接,还包括相对之间存在一定距离的连接,如图16所示,其中黑色实心圆形表示邻接车体的轮子中心点,粗化的黑色边框为轮子接触的线条,需要保持这两条线之间的相对连接情况,相对连接即表示非固定于线上某个固定位置,但点到线之间的距离、方向保持不变。如图17所示,li边与lj边的vj+1点具有连接关系,其中li边与lj边并未存在相交,仅是相近并且期望框架变形后两条线之间依然保持这种相对的连接情况,图中所给出的虚线Ai为接触点vj+1可以变形的范围。首先得到li边与vj+1点的连接情况,可以得到垂直于线li的方向vj+1点到li边的距离di,和vj+1点与li边所构成的面的法向量/>记oj+1点为vj+1点到li边的投影点,若要保证相对连接关系,则需要满足vj+1点在方向/>上且满足距离为di的点o′j+1位于li边所在的直线上,因此可以将约束转换为如下公式(11):
满足如上公式(11)的约束即可保证点到线之间的相对位置的不变性。
进一步的,人造结构大多存在规则几何体比如圆柱、圆锥,本实施例中主要针对的几何体为圆柱或圆锥。为保持圆柱、圆锥变形前后结构的一致性,对这种几何体的约束设置由多个参数控制,分别为:(上下)底面中心点、(上下)底面圆半径、几何体高、几何体之间存在对称关系,有利于保持几何体之间的结构关系。首先保证对应的底面半径相等;其次几何体高保持一致;最后上下底面的中心点关于对称面对称,满足这几项约束即可保证两个几何体的对称。对于某些形状编辑则期望能将规则几何体的结构进行局部改变,例如,将圆柱体变为圆台,此时需要保证圆柱母线与底面之间的垂直关系能够得到编辑,对于这种改变几何体形态的情况,当圆柱体的垂直关系被保持,则上下底面圆半径强制性保证相等,当这个垂直关系被破坏,则允许上下底面的圆半径不一致,从而方便用户进行变形控制。
具体的,本实施例中,如图18所示,上述步骤S402包括:
步骤S4021,基于上述原始位置约束、上述结构约束和上述草图信息约束对上述原始模型的线框进行全局优化,得到优化线框。
步骤S4022,基于上述优化线框牵动上述原始模型的内部网格模型进行变形。
具体的,本实施例中,构建如下公式(12)所示的能量方程来平衡原始位置约束、结构约束和草图信息约束等约束项:
具体的,公式(12)中,第一项用来约束变形后的点位置和原始点位置之间的距离尽可能接近,这一步也是为了避免变形后偏离原始位置过大;第二项用来约束几何位置情况,保证变形后几何关系依然可以满足;第三项用来表示直线段匹配到草图后变形的约束,即草图信息约束。每一项前面的系数α,β,γ是每项约束的权重系数,可以根据不同约束条件的影响强度进行设置和调整。其中,Disv(v′i,vi)表示变形前后线框点之间的距离。v′i表示变形后的线框点,vi表示变形前线框点,Gv(v′i,vi)表示变形前后线框的几何约束,Sv(v′i,vi)表示变形后的线框与草图的相近情况。公式(12)中的i表示第i个线框顶点,n表示线框顶点数量。公式(12)的二次能量方程表示在变形的过程中,需要在变形控制条件与保持原始模型的框架结构之间进行权衡。可利用最小二乘法来计算线性方程组Ax=B进行求解。本实施例中使用最小二乘法来优化上述能量方程,接下来的框架结构的变形以及内部模型网格变形操作都是基于上述优化。
具体的,假设网格模型的框架结构由G=(V,E)构成,其中V表示线框顶点,E表示线框边,记线框顶点数量为n,本文通过求解Ax=B得到变形后顶点的位置,方程组的结构设置如图19所示,图19中,n为线框顶点数量,V表示线框顶点。在有了n项位置约束后,还存在多项其它约束,约束条件多,方程组中A的行数超过了未知数的数量导致Ax=B超定,直接用一般解代数方程的方法无法求解这些未知数,因此不能通过直接求解方程组的方式求取精确解,为了得到更准确的解,可以利用正规方程组ATAX=ATB来代替原方程组求解,最小二乘法则可以将误差方程转化为有确定解的代数方程组,从而求解这些未知数,这个有确定解的方程组被称为最小二乘法估计的正规方程。通过这一步最小二乘法估计可以将公式(12)转化为线性关系,根据能量方程中的α||Disv(v′i,vi)||2项可以具体展开为公式(13),其中描述的为变形前后顶点vi距离最小化,此处将公式(13)记为fd,对fd求导数可得到公式(14),此处要对公式(13)最小化即保证求取导数后公式(14)为0即可,最终可以转化为公式(15)的形式,即将未知数前系数放置于系数矩阵,系数与未知变量线性组合结果放于等号右边作为优化的一个已知变量。以此类推,可以使用这种方式将公式(12)中几何约束、草图约束做相同处理,将二次式转变为线性关系。
f′d=2(xi-x′i)+2(yi-y′i)+2(zi-z′i) (14)
图19所示的约束项中原始位置的约束通过公式(15)来设置,公式(15)中x′i为变形后的点坐标,xi为变形前的点坐标,系数矩阵中的省略号代表着0,未知数矩阵中的省略号代表省略的点集坐标序,通过如下的矩阵设置保证了变形后点坐标尽可能与原始位置保持接近。
草图约束部分是在得到草图到原始模型的线框的线条(即网格框架线条)之间的匹配对应信息后,在绘制草图的视角下将对应模型线条进行变形约束。草图给出的是二维的点信息,模型线条所得到的是三维的信息,此时需要对三维的点做一个投影操作,将三维的信息转变为二维信息。公式(16)所示的为一个三维点(齐次坐标)通过一个投影矩阵转变为平面上二维的点,因此对于变形矩阵中草图约束部分的设置如公式(17)所示,m0~m7表示组成投影矩阵的项,x′i,y′i,z′i表示变形后的顶点坐标,xs,ys表示三维点对应的草图上的二维点。
对于几何约束,根据上述对称关系、平行关系、垂直关系、共面关系、连接关系、几何体形状等约束设置,将对应的约束公式变形成公式(15)和公式(17)的类型。例如,如下公式(18)给出了保持网格顶点的第i个点xi变形后位于平面F(x,y,z)=Ax+By+Cz+D上,同样的对于与其具有共面关系的点也需满足以下条件成立。以此类推通过将几何约束线性表示出来并对应到点坐标位置,添加到变形矩阵中,最后求解一个稀疏矩阵得到新的顶点坐标。
经过上述的框架变形过后,得到的是一组描述变形后网格模型的框架线(即变形后的线框),根据预处理数据时得到的线框上的点到原始模型内部顶点的对应情况,可以确定内部网格点在变形后移动到的位置,这个位置就是变形后模型框架对应点的位置,有了这个位置约束可以使用现有的网格变形方法对内部网格模型进行变形。例如,可以采用微分变形方法(如旋转不变坐标的方法)或其它网格变形方法,在此不做具体限定,本实施例中,采用将线框对应的线条变形前后的转换作用于内部网格的方法,即获取线框的每条边的变换情况,控制线框内部的网格根据线框的每条边的变换情况进行变形。
图20是本发明实施例提供的一种线条变换过程示意图,本实施例中,以一条线li的详细变换为例进行说明,其它线条的变换情况可依次参照获得。如图20给出线条变换过程,其中li为变形前的线条位置,l′i为变形后线条的位置,首先将变形前的线li的中心平移到坐标原点得到如图20中第二幅坐标图所示,此时由图20中第一幅坐标图到图20中第二幅坐标图可由平移操作MT得到,随后在图20中第二幅坐标图基础上将li旋转到与l′i同方向得到旋转矩阵MR,旋转后的结果如图20中第三幅坐标图中所示,得到平移旋转矩阵后,对线条上的端点执行上述变换可得到图20中第四幅坐标图中点vi和点vi+1的位置,对于线条的变换,可由线条上端点的变换进行线性组合得到线的变换情况,因此对图20中第四幅坐标图中点vi和点vi+1再进行平移,分别平移到点v′i和点v′i+1的位置得到两个平移矩阵Ti和Ti+1。
通过上述流程,线l′i中点v′i的变换可由如下公式(19)得到,同理也可得到线l′i中另一个端点v′i+1的变换矩阵,线l′i的变换矩阵Mi可由公式(20)得到,其中wi1和wi2为权重系数,wi1和wi2需要满足公式(21)成立,记l′i中两个端点的变换矩阵分别为MTi1和MTi2,记原始内部网格顶点为vmi,变形后的内部网格顶点为vm′i,模型线框中线条数量为k,wi为网格顶点受线条变换的影响权重,wij为线条l′i内部点变换影响权重,变形后的顶点可由公式(22)得到,其中权重wi需要满足公式(23)成立。其中,上述各权重系数可以根据实际需求进行设置和调整,但需要满足对应的约束公式。
v′i=TiMRMTvi (19)
Mi=wi1MTi1+wi2MTi2 (20)
wi1+wi2=1 (21)
/>
本实施例中,上述公式(23)中的权重系数为网格顶点到线框所有线的反距离,公式(19)中的权重系数为网格顶点到线条顶点的反距离,如此,可以是的距离线框中某条直线近的点收到该直线的变化影响大,优化模型变形效果。
具体的,本实施例中,从全局对三维模型进行编辑操作,利用用户输入的草图来描述全局的变化情况,通过求解线性***得到整体变形结果。对于输入的草图到三维原始模型的匹配,针对绘制的草图中的线条与原始模型抽象框架线条进行匹配对应,这种方法将对绘制草图语义方面的分析然后对应模型特定模块的问题转化为简单的几何线条之间的结构相似性的对应,实现更为简便,且可以进行自动匹配,与拖动式的变形方法相比,免去用户繁琐的选取、拖动操作,同时也实现了交互变形的实时性,还可以通过用户的输入的标注信息进行适应性调整,有利于提高匹配的准确性。进一步的,还允许用户在保持原始模型结构的同时可以对原有的结构关系进行选择性破坏编辑,即可以实现交互式的调整,例如,可以破坏部分对称、平行、共面等结构关系,使得模型的变化自由度更大,可操作性更强。
进一步的,本实施例中,还对上述模型变形方法进行了具体测试,具体的,采用了建筑物、车俩、台灯、桌椅、书架等几种人造物体的三维模型进行变形测试。为了验证草图输入的编辑方式对比手动选择控制线条拖动的方式更方便,本实施例中,将本实施例方案分别与使用局部变形方法的手动拖拽式编辑方法和使用全局变形方法的手动拖拽式编辑方法进行对比。局部变形方法也即先前操作过的记录不被保留,后续的变形效果取决于当前的输入。全局的变形方法则是对先前的操作进行记录,后续的变形效果取决于每一步输入。在本实施例的实验中,给出原始模型和目标模型,用户通过自主观察分析如何将原始模型向目标模型改变,然后通过三种方法对应的操作***进行操作,得到与目标模型一致的模型,在此过程中,记录用户的每次操作以及时间。本实施例中,还考虑使用不同***的顺序对实验结果的影响,对测试人员进行分组,分别按照预设的不同顺序操作各***,以消除使用顺序的影响。图21是本发明实施例提供的测试中原始模型及其变形的目标样式示意图,依次包括座椅、手推车、瓶子、课桌、台灯、尖顶房和书架。在测试过程中对用户的各项操作分别进行记录,包括操作类型、每种操作类型操作次数、操作次序、各项操作时间、总时间等。图22是本发明实施例提供的一种各操作***对应的操作时间统计示意图,图23是本发明实施例提供的一种各操作***对应的操作次数统计示意图,其中,各组的三个条形从左到右依次代表草图交互***、拖动式局部变形***、拖动式全局变形***对应的统计数据,草图交互***即为本实施例中的基于草图交互的模型变形方法对应的操作***,拖动式局部变形***和拖动式全局变形***分别是局部变形方法的手动拖拽式编辑方法和全局变形方法的手动拖拽式编辑方法对应的操作***。根据图22和图23中的统计数据可知,在对模型中的线条进行平移缩放操作时,三种***操作时间较为接近,但是对于一些具有旋转边的操作时,本文***的操作方式优势明显,由图22中台灯的变形结果可明显获知。图23中给出各个***操作次数汇总,从统计图中可以看出草图交互式***的操作次数明显少于其他两个对比***。可知,本发明实施例提供的基于草图交互的模型变形方法能使用户的操作更方便和快速。
示例性设备
如图24中所示,对应于上述基于草图交互的模型变形方法,本发明实施例还提供一种基于草图交互的模型变形装置,上述基于草图交互的模型变形装置包括:
数据预处理模块510,用于对原始模型进行数据预处理,获取原始模型的线框。
其中,上述原始模型是需要进行变形的三维模型。具体的,上述原始模型可以是三维模型处理***预先提供的标准三维模型,例如圆柱体、圆锥体等三维模型;也可以是用户预先制作的三维模型,例如,用户在之前的工作中已经制作了汽车的三维模型作为原始模型,现在需要对原始模型进行变形获得新的汽车样式。上述线框是上述原始模型的抽象的结构线条的集合,即框架线条的集合,是可以描述模型结构的抽象框架。
结构关系获取模块520,用于获取上述原始模型中线条之间的结构关系。
其中,上述结构关系是上述原始模型的线框对应的线条之间的几何结构关系。在一种应用场景中,上述结构关系还可以包括上述原始模型的内部的线条之间的几何结构关系,以更好的体现原始模型的结构信息。
草图匹配模块530,用于获取草图,对上述草图和上述线框进行匹配,获取匹配对应信息。
其中,草图可以是用户绘制的线条组成的图案、用户提供的图片、照片等,在此不做具体限定。本实施例中,通过用户绘制线条生成草图,获取用户绘制的草图后,要对上述草图进行预处理,识别出草图中有效的线条,并将各有效的线条与上述线框对应的线条进行匹配,从而将草图中线条和线框对应的线条的匹配关系作为匹配对应信息。
变形控制模块540,用于基于上述草图、上述匹配对应信息和上述结构关系控制上述原始模型变形。
具体的,通过模型本身的框架结构线条的改变,执行一个全局的优化求解得到变形后的模型线框,将这些变形后的模型线框作为控制部件牵动着三维网格模型进行变形。本实施例中,基于上述草图中的线条与匹配对应信息控制原始模型的线框变形,同时在变形过程中控制线框的结构关系,从而有利于保持模型的高级结构信息。
由上可见,本发明实施例提供的基于草图交互的模型变形装置通过数据预处理模块510对原始模型进行数据预处理,获取原始模型的线框;通过结构关系获取模块520获取上述线框中各线条之间的结构关系;通过草图匹配模块530获取草图,对上述草图和上述线框进行匹配,获取匹配对应信息;通过变形控制模块540基于上述草图、上述匹配对应信息和上述结构关系控制上述原始模型变形。与现有技术中基于草图进行模型变形时,模型根据草图样式完全拟合的方案相比,本发明方案获取线框中各线条之间的结构关系,在对草图和原始模型的线框进行匹配后,基于草图、匹配对应信息和结构关系控制原始模型的变形,有利于保持模型的结构信息。
具体的,如图25所示,本实施例中,上述数据预处理模块510包括:
包络面获取单元511,用于将上述原始模型体素化,获取初始包络面。
包络面细化单元512,用于通过正则细分迭代对上述初始包络面进行细化,获取细化包络面。
线框获取单元513,用于基于预设的迭代阈值,通过迭代的方式将上述细化包络面的各包络线拉向上述原始模型后作为上述原始模型的线框。
对于结构复杂、细节繁多的模型,其特征线条可能位于一个平滑的弧度面上,此时先对原始模型进行初始化,将原始模型体素化后,其体素壳外部可见表面被提取为初始包络面。然后基于预设的正则细分迭代次数来进行细化,具体的,本实施例中,使用一次或两次正则细分迭代来细化初始的粗糙网格,其目的是实现后续拟合过程中更好的近似。得到细化后包络面对应的细化模型后,将包络线拉向原始模型,同时保持整体形状,基于获得的新包络面获取原始模型的线框。本实施例中,把包络线拉向模型这个步骤是通过迭代的步骤来实现的,迭代分为以下几步:首先求得包络线上的点距离原始的网格模型最近的点,得到包络线点到模型点的匹配对应;然后以模型上的点为约束点,作为包络面点变形后的位置信息,对包络面执行变形操作;最后正则化包络面的网格模型。迭代上述流程,达到最大迭代次数时流程终止。
本实施例中,上述基于草图交互的模型变形装置的各模块的具体功能及其实现方式可以参照上述方法实施例中的具体描述,在此不再赘述。
在一种应用场景中,上述基于草图交互的模型变形装置由一交互***和对应的硬件构成,交互***中设置上述各模块并实现对应功能。具体的,图26是本发明实施例提供的一种交互***界面示意图,交互***界面顶部菜单栏中包含一些加载文件、保存文件的操作选项,主界面划分为A、B、C、D四个区域。其中A区用于显示用户加载的三维模型;B区为模型参数设置区;C区为草图绘制区;D区为不同视角下绘制草图的记录区。在用户加载模型后在A区将会呈现模型视图,用户可以通过这个界面切换观测视角和调整距离远近。B区为参数设置区,用户可以通过勾选或取消某项(如网格显示项、阴影显示项等)来实现修改A区的模型显示信息,或者通过修改草图绘制区对应的项来修改草图绘制界面显示的信息。草图绘制区可以预先加载原始模型的二维投影及框架结构线,给用户的输入提供指导。用户可以在草图绘制区绘制草图,且模型的编辑过程是实时进行的,所以每一笔的绘制都会相应地有个匹配变形结果。D区为在不同视角下编辑模型的草图的笔触记录区,用户每绘制一笔都会生成一个当前视角并记录该视角下的绘制界面,用户可以通过点击对应记录项跳转到先前绘制的视角下。
在模型视图A区,用户可以与模型框架线条进行交互,当用户选中某条线段时会显现与该线条相关的所有几何关系。例如,选中的线条呈现蓝色的,在其上面三分之一处显现一个球体,与之对应的一条边也存在相应的球体,这表示该选中的线段存在对称的几何关系,与之对称的是同样标识球体的线段,在对称关系起作用时,球体呈现不透明的红色。标识对称关系的球体可以被用户编辑,鼠标左键单击任一球体会将其颜色从不透明转变为透明色,此时标识这组对称关系在模型变形后不被保持。对于具有垂直关系的两条线段,会在其直角处绘制直角符号,用户也可以编辑直角符号来影响原始模型的几何关系。在交互方面,交互***允许编辑的几何关系有:垂直、对称、平行等。用户创作模型时允许在多个视角下创作,对于每个视角下的笔触线条都有相应的记录,每切换一个视角会在历史记录D区生成一个小窗口。用户在创作过程中任意点击历史窗口都可以从当前视角切换到先前的某个绘制视角下,当用户擦除某个历史窗口的所有笔触后,该窗口会自动消失,紧挨着该窗口的下一个窗口会自动上移填补空缺。该交互***的操作自由度较大,同时也设置了容错机制,例如当用户未加载模型前,在显示模型的界面A区,用户操作无效,即不会产生任何操作效果,相应的草图绘制区在未加载模型前无法进行绘制等。
应理解,上述实施例中各步骤的序号大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将上述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。上述***中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各实例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟是以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,上述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以由另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。
上述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,上述计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,上述计算机程序包括计算机程序代码,上述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。上述计算机可读介质可以包括:能够携带上述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,上述计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不是相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (7)
1.一种基于草图交互的模型变形方法,其特征在于,所述方法包括:
对原始模型进行数据预处理,获取原始模型的线框;
所述线框包括所述原始模型的抽象的结构线条的集合和描述模型结构的抽象框架;
获取所述线框中各线条之间的结构关系;
所述获取所述线框中各线条之间的结构关系,包括:
获取目标对象输入的标注数据;
基于所述标注数据获取所述线框中各线条之间的结构关系,其中,所述结构关系包括对称、平行、共面、垂直和连接;
所述结构关系包括所述原始模型的线框对应的线条之间的几何结构关系,或者是所述原始模型的内部的线条之间的几何结构关系;
获取草图,对所述草图和所述线框进行匹配,获取匹配对应信息;
所述获取草图,对所述草图和所述线框进行匹配,获取匹配对应信息,包括:
获取目标对象输入的草图,对所述草图中的各线条分别进行识别和处理,获取所有目标直线段和目标规则曲线,其中,所述目标直线段包括识别出的所有直线段和对识别出的所有折线段分别进行线条划分处理后获得的所有直线段;
将各所述目标直线段和各所述目标规则曲线分别与所述线框进行匹配,获取所述线框中的所有匹配线条,其中,各所述匹配线条分别与一条不同的目标直线段或目标规则曲线对应匹配;
分别基于各所述目标直线段和各所述目标规则曲线与各所述匹配线条之间的对应关系获取匹配对应信息;
基于所述草图、所述匹配对应信息和所述结构关系控制所述原始模型变形;
所述基于所述草图、所述匹配对应信息和所述结构关系控制所述原始模型变形,包括:
基于所述草图、所述匹配对应信息和所述结构关系构建原始位置约束、几何约束和草图约束,其中,所述原始位置约束用于限制所述原始模型变形前后的点位置之间的距离,所述几何约束用于限制所述原始模型变形后线框的各线条之间的结构关系,所述草图约束用于限制所述原始模型的变形与所述草图匹配;
基于所述原始位置约束、所述几何约束和所述草图约束控制所述原始模型变形。
2.根据权利要求1所述的基于草图交互的模型变形方法,其特征在于,所述对原始模型进行数据预处理,获取原始模型的线框,包括:
提取所述原始模型中的目标线条,作为所述原始模型的线框,其中,所述目标线条为具有二面角的线或位于所述原始模型的边界上的网格边缘。
3.根据权利要求1所述的基于草图交互的模型变形方法,其特征在于,所述对原始模型进行数据预处理,获取原始模型的线框,包括:
将所述原始模型体素化,获取初始包络面;
通过正则细分迭代对所述初始包络面进行细化,获取细化包络面;
基于预设的迭代阈值,通过迭代的方式将所述细化包络面的各包络线拉向所述原始模型后作为所述原始模型的线框。
4.根据权利要求1所述的基于草图交互的模型变形方法,其特征在于,所述匹配线条包括匹配直线段和匹配曲线,所述将各所述目标直线段和各所述目标规则曲线分别与所述线框进行匹配,获取所述线框中的所有匹配线条,包括:
对于各所述目标直线段,基于各所述目标直线段与所述线框的各线条之间的距离、各所述目标直线段的方向走势、各所述目标直线段之间的连接关系以及各所述目标直线段之间的距离,分别获取所述线框中与各所述目标直线段对应的匹配直线段;
对于各所述目标规则曲线,基于各所述目标规则曲线的曲线匹配信息和所述线框中所有规则曲线的曲线匹配信息,分别获取所述线框中与各所述目标规则曲线对应的匹配曲线,其中,所述曲线匹配信息包括长短轴和中心点。
5.根据权利要求1所述的基于草图交互的模型变形方法,其特征在于,所述基于所述原始位置约束、所述几何约束和所述草图约束控制所述原始模型变形,包括:
基于所述原始位置约束、所述几何约束和所述草图约束对所述原始模型的线框进行全局优化,得到优化线框;
基于所述优化线框牵动所述原始模型的内部网格模型进行变形。
6.一种基于草图交互的模型变形装置,其特征在于,所述装置包括:
数据预处理模块,用于对原始模型进行数据预处理,获取原始模型的线框;
所述线框包括所述原始模型的抽象的结构线条的集合和描述模型结构的抽象框架;
结构关系获取模块,用于获取所述线框中各线条之间的结构关系;
所述获取所述线框中各线条之间的结构关系,包括:
获取目标对象输入的标注数据;
基于所述标注数据获取所述线框中各线条之间的结构关系,其中,所述结构关系包括对称、平行、共面、垂直和连接;
所述结构关系包括所述原始模型的线框对应的线条之间的几何结构关系,或者是所述原始模型的内部的线条之间的几何结构关系;
草图匹配模块,用于获取草图,对所述草图和所述线框进行匹配,获取匹配对应信息;
所述获取草图,对所述草图和所述线框进行匹配,获取匹配对应信息,包括:
获取目标对象输入的草图,对所述草图中的各线条分别进行识别和处理,获取所有目标直线段和目标规则曲线,其中,所述目标直线段包括识别出的所有直线段和对识别出的所有折线段分别进行线条划分处理后获得的所有直线段;
将各所述目标直线段和各所述目标规则曲线分别与所述线框进行匹配,获取所述线框中的所有匹配线条,其中,各所述匹配线条分别与一条不同的目标直线段或目标规则曲线对应匹配;
分别基于各所述目标直线段和各所述目标规则曲线与各所述匹配线条之间的对应关系获取匹配对应信息;
变形控制模块,用于基于所述草图、所述匹配对应信息和所述结构关系控制所述原始模型变形;
所述基于所述草图、所述匹配对应信息和所述结构关系控制所述原始模型变形,包括:
基于所述草图、所述匹配对应信息和所述结构关系构建原始位置约束、几何约束和草图约束,其中,所述原始位置约束用于限制所述原始模型变形前后的点位置之间的距离,所述几何约束用于限制所述原始模型变形后线框的各线条之间的结构关系,所述草图约束用于限制所述原始模型的变形与所述草图匹配;
基于所述原始位置约束、所述几何约束和所述草图约束控制所述原始模型变形。
7.根据权利要求6所述的基于草图交互的模型变形装置,其特征在于,所述数据预处理模块包括:
包络面获取单元,用于将所述原始模型体素化,获取初始包络面;
包络面细化单元,用于通过正则细分迭代对所述初始包络面进行细化,获取细化包络面;
线框获取单元,用于基于预设的迭代阈值,通过迭代的方式将所述细化包络面的各包络线拉向所述原始模型后作为所述原始模型的线框。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110667417.3A CN113221857B (zh) | 2021-06-16 | 2021-06-16 | 一种基于草图交互的模型变形方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110667417.3A CN113221857B (zh) | 2021-06-16 | 2021-06-16 | 一种基于草图交互的模型变形方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113221857A CN113221857A (zh) | 2021-08-06 |
CN113221857B true CN113221857B (zh) | 2024-05-07 |
Family
ID=77080738
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110667417.3A Active CN113221857B (zh) | 2021-06-16 | 2021-06-16 | 一种基于草图交互的模型变形方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113221857B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111967533B (zh) * | 2020-09-03 | 2022-09-23 | 中山大学 | 一种基于场景识别的草图图像翻译方法 |
CN114193635B (zh) * | 2021-12-23 | 2024-03-12 | 国泰新点软件股份有限公司 | 建筑工程中梁的切割方法及装置 |
CN117140539B (zh) * | 2023-11-01 | 2024-01-23 | 成都交大光芒科技股份有限公司 | 基于空间坐标变换矩阵的机器人三维协同巡检方法 |
CN117421795B (zh) * | 2023-11-29 | 2024-04-09 | 上海新迪数字技术有限公司 | 一种基于草图建模的优化方法及*** |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0749965A (ja) * | 1993-08-04 | 1995-02-21 | Hitachi Ltd | 形状作成支援方法及びその装置 |
KR20090029447A (ko) * | 2007-09-18 | 2009-03-23 | 한국전자통신연구원 | 스케치 기반 3차원 모델 생성 장치 및 방법 |
CN101609564A (zh) * | 2009-07-09 | 2009-12-23 | 杭州力孚信息科技有限公司 | 一种草图式输入的三维网格模型制作方法 |
US9176987B1 (en) * | 2014-08-26 | 2015-11-03 | TCL Research America Inc. | Automatic face annotation method and system |
CN108170823A (zh) * | 2018-01-04 | 2018-06-15 | 江西师范大学 | 一种基于高层语义属性理解的手绘交互式三维模型检索方法 |
CN109658474A (zh) * | 2018-11-15 | 2019-04-19 | 深圳大学 | 三维草图的创建方法、装置和计算机设备 |
CN111583408A (zh) * | 2020-05-09 | 2020-08-25 | 中国科学技术大学 | 基于手绘草图的人体三维建模*** |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7113634B2 (en) * | 2001-07-31 | 2006-09-26 | Canon Kabushiki Kaisha | Stereoscopic image forming apparatus, stereoscopic image forming method, stereoscopic image forming system and stereoscopic image forming program |
EP1850270B1 (en) * | 2006-04-28 | 2010-06-09 | Toyota Motor Europe NV | Robust interest point detector and descriptor |
-
2021
- 2021-06-16 CN CN202110667417.3A patent/CN113221857B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0749965A (ja) * | 1993-08-04 | 1995-02-21 | Hitachi Ltd | 形状作成支援方法及びその装置 |
KR20090029447A (ko) * | 2007-09-18 | 2009-03-23 | 한국전자통신연구원 | 스케치 기반 3차원 모델 생성 장치 및 방법 |
CN101609564A (zh) * | 2009-07-09 | 2009-12-23 | 杭州力孚信息科技有限公司 | 一种草图式输入的三维网格模型制作方法 |
US9176987B1 (en) * | 2014-08-26 | 2015-11-03 | TCL Research America Inc. | Automatic face annotation method and system |
CN108170823A (zh) * | 2018-01-04 | 2018-06-15 | 江西师范大学 | 一种基于高层语义属性理解的手绘交互式三维模型检索方法 |
CN109658474A (zh) * | 2018-11-15 | 2019-04-19 | 深圳大学 | 三维草图的创建方法、装置和计算机设备 |
CN111583408A (zh) * | 2020-05-09 | 2020-08-25 | 中国科学技术大学 | 基于手绘草图的人体三维建模*** |
Non-Patent Citations (1)
Title |
---|
基于叶片识别的侵入式室内植物建模;史川石 等;计算机辅助设计与图形学学报;20210228;第33卷(第2期);162-167 * |
Also Published As
Publication number | Publication date |
---|---|
CN113221857A (zh) | 2021-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113221857B (zh) | 一种基于草图交互的模型变形方法及装置 | |
Ji et al. | Easy mesh cutting | |
Li et al. | Interactive cutaway illustrations of complex 3D models | |
Karpenko et al. | Free‐form sketching with variational implicit surfaces | |
CN111382530A (zh) | 学习用于推测实体cad特征的神经网络 | |
CN111382778A (zh) | 形成用于推测实体cad特征的数据集 | |
CN111462306B (zh) | 基于体向量场稀疏局部化分解的三维头发参数化模型方法 | |
JP2023071722A (ja) | 画像を入力とする関数を学習するためのデータセット | |
Reh et al. | MObjects--A Novel Method for the Visualization and Interactive Exploration of Defects in Industrial XCT Data | |
CN111583408B (zh) | 基于手绘草图的人体三维建模*** | |
Lim et al. | A study of sketching behaviour to support free-form surface modelling from on-line sketching | |
Wang et al. | SketchPadN-D: WYDIWYG sculpting and editing in high-dimensional space | |
He et al. | Creation of user-defined freeform feature from surface models based on characteristic curves | |
Liu et al. | Learning implicit glyph shape representation | |
GB2540791A (en) | Apparatus, methods, computer programs and non-transitory computer-readable storage media for generating a three-dimensional model of an object | |
Miao et al. | SymmSketch: Creating symmetric 3D free-form shapes from 2D sketches | |
DE102021122663A1 (de) | Auf künstlicher Intelligenz beruhende Techniken zur Gestaltungserzeugung in virtuellen Umgebungen | |
CN115861547B (zh) | 一种基于投影的模型表面样条线生成方法 | |
Naya et al. | Direct modeling: from sketches to 3D models | |
CN113343326B (zh) | 一种基于多视几何概念设计的三维建模方法 | |
dos Passos et al. | Sample-based synthesis of illustrative patterns | |
Gharib et al. | Integration of sketch-based conceptual design and commercial CAD systems for manufacturing | |
Liu et al. | Sketch based modeling and editing via shape space exploration | |
Leimer et al. | Relation-based parametrization and exploration of shape collections | |
CN112799517B (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 |