CN106097453A - 一种使用凸多面体近似三维物体形状的优化方法 - Google Patents
一种使用凸多面体近似三维物体形状的优化方法 Download PDFInfo
- Publication number
- CN106097453A CN106097453A CN201610418178.7A CN201610418178A CN106097453A CN 106097453 A CN106097453 A CN 106097453A CN 201610418178 A CN201610418178 A CN 201610418178A CN 106097453 A CN106097453 A CN 106097453A
- Authority
- CN
- China
- Prior art keywords
- convex
- polyhedron
- convex polyhedron
- dimensional body
- face
- 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
Links
Classifications
-
- 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/30—Polynomial surface description
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Mathematical Analysis (AREA)
- Algebra (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种使用凸多面体近似三维物体形状的优化方法,包括:分析给定三维物体的形状,若形状为非凸,则进行分解得到多个准凸的物体部件模型;将使用凸多面体近似准凸的物体部件模型或物体模型构造成一个优化问题,以最大化凸多面体的体积为目标,以凸多面体的凸属性、凸多面体的装配、三维物体制造以及三维物体的外观作为约束,通过求解优化问题计算出凸多面体;对于形状为非凸的三维物体,求解获得多个凸多面体后,对每相邻的两个凸多面体设置连接约束,从而保证制造出的多个凸多面体可以连接成一个稳固的内部支撑结构。该方法可用于大物体的分块制造,并尽可能节省制造所需要的材料和时间成本。
Description
技术领域
本发明涉及域三维设计技术领域,尤其涉及一种使用凸多面体近似三维物体形状的优化方法。
背景技术
为了快速、廉价地分块制造大物体,可以将给定的三维物体模型表达为内部的凸多面体粗略部分及外部的精细部分。内部的凸多面体可由多个激光切割板块组装而成,外部的精细部分被剖分成多个部件、并用3D打印机分别制造出来,然后贴附到内部的凸多面体上。由于激光切割制造的材料和时间成本远小于3D打印制造,因而可以通过最大化内部凸多面体的体积来尽可能减少物体总的制造成本。
使用凸多面体近似目标物体是一个非确定性多项式难(NP-hard)的问题。而且,和三维物体实际制造相关的约束使其求解难度大幅度增加。已有的三维物体近似方法不适用于求解该问题。
发明内容
本发明的目的是提供一种使用凸多面体近似三维物体形状的优化方法,以节省制造三维物体的材料和时间成本。
本发明的目的是通过以下技术方案实现的:
一种使用凸多面体近似三维物体形状的优化方法,包括:
分析给定三维物体的形状;若形状为非凸,则进行分解得到多个准凸的物体部件模型;若形状为凸或准凸,则提取该三维物体的物体模型;
将使用凸多面体近似准凸的物体部件模型或物体模型构造成一个优化问题,以最大化凸多面体的体积为目标,以凸多面体的凸属性、凸多面体的装配、三维物体制造以及三维物体的外观作为约束,通过求解优化问题计算出凸多面体;
对于形状为非凸的三维物体,求解获得多个凸多面体后,对每相邻的两个凸多面体设置连接约束,从而保证制造出的多个凸多面体可以连接成一个稳固的内部支撑结构。
所述分解得到多个准凸的物体部件模型包括:
使用平面切割方法来分解三维物体得到多个准凸的物体部件模型;所述平面切割方法中每个裁剪平面的位置和姿态的计算方法如下:
计算三维物体边界的距离变换图,获得空间中每个点到三维物体边界的带符号的距离;其中,物体内部的点距离值为正,物体外部的点距离值为负;
找出距离变换图中的局部极大值点,并以此点为中心在三维物体边的内部逐步扩张出一个内部体;
将三维物体边中与内部体的距离超出阈值的部分去除得到三维物体的保留部分,进而对保留部分中的每个联通区域构建三维骨架,并在每个三维骨架上找到距离变换图中的局部极小值点;
裁剪平面经过三维骨架上检测到的距离极小值点,并与相应的三维骨架的延伸方向正交。
所述优化问题的表达式为:
其中,P为凸多面体,V(p)为凸多面体P的体积;Si为约束条件,包括:凸多面体的凸属性、凸多面体的装配、三维物体制造以及三维物体的外观。
凸多面体的凸属性约束条件为:
对于凸多面体每个面fj,引入两组辅助变量:nj为面fj指向凸多面体外部的单位法向,dj为面fj到原点的距离;则凸多面体上与面fj关联的顶点pi以及非关联的顶点pk满足下面约束:
nj·pi+dj=0,nj·pk+dj≤0;
凸多面体的装配约束条件为:
a、设置相邻面的二面角的范围为[αmin,αmax],则一对邻面fi与fj满足:
-cosαmin≤ni·nj≤-cosαmax;
其中,ni为面fi指向凸多面体外部的单位法向;
b、设置每一面上顶点的夹角的范围为[βmin,βmax],则每个面中邻接的三个顶点pi,pj,pk满足:
c、设定最短边的阈值lmin,则多面体的每个邻接顶点pi,pj满足:
||pi-pj||≥lmin;
三维物体制造的约束条件为:
a、凸多面体的每个顶点位于三维物体的内部,并且凸多面体上每个点到三维物体表面的距离都大于一个阈值dmin,则在多面体表面采样并且对于每个采样点qi使其满足约束DM(qi)≥dmin,其中DM为到物体边界的符号距离函数,为了使这个约束与顶点位置关联,将采样点表示成与其相关的多面体元素的凸组合;
b、凸多面体边的分布将影响三维物体3D打印外壳的分块;对于一组相邻面fi与fj的公共边,引入切分面Rij以及其单位法向nij作为辅助变量;nij正交于Rij所对应的凸多面体的边;切分平面集合{Rij}将三维物体外壳分割成多个分块,每个分块都有一个底面能够放置在3D打印机上,且切分平面与凸多面体的面之间二面角不小于π/2。同时二面角还须满足以下约束:
0≤nij·ni≤cosγ,-cosγ≤nij·nj≤0;
c、引入辅助变量si∈R3,si为过顶点pi的一条直线的单位向量,确保过点pi的所有切分平面的法向与si正交;
d、对于凸多面体每个面fi,引入辅助变量rj∈R3为包围矩形的某个顶点位置,ej,1,ej,2∈R3分别为沿矩形两条垂直边方向的单位向量;凸多面体的面fi能被矩形包围的条件表示为对于面fj上每个顶点pi满足:
0≤(pi-rj)·ej,1≤w,0≤(pi-rj)·ej,2≤h;
其中,h与w分别为矩形的长与宽;
三维物体的外观约束条件:
由用户标注三维物体表面的显著区域,每个显著区域都对应一个多面体的面fi,则每个显著区域中的每个点t都被与面fi相关联的切分平面所包围;设置Rij为面fi关联的一个切分平面,pi为Rij的一个关联定点,若nij指向区域内部,则约束条件表示为t到Rij的符号距离(t-pi)·nij非负,否则(t-pi)·nij非正。
在所述三维物体的外观约束条件中,将显著区域投影至最小二乘拟合平面,并计算投影点的凸包,之后,只对凸包的顶点进行约束;
当显著区域比多面体面数多时,根据用户的指令来选定显著区域的优先程度,使其按照优先程度来满足外观约束条件。
所述通过求解优化问题,获得多个凸多面体包括:
从一个基础的凸多面体开始,在保持其拓扑结构不变的情况下优化其顶点位置,来获得一个初始的凸多面体P0;之后,对凸多面体Pi反复执行以下步骤来获得下一个凸多面体Pi+1:
a、列出凸多面体Pi+1的一组候选拓扑结构;
b、对每个候选的拓扑结构,通过求解带约束的优化问题来优化顶点位置获得候选形状;
c、选取体积最大的候选形状做为凸多面体Pi+1;
d、判断凸多面体Pi+1的面数是否大于N;若是,则结束;若否,通过上述步骤a~c来获得下一个凸多面体Pi+2;其中,N为的凸多面体面个数的上限。
所述列出凸多面体Pi+1的一组候选拓扑结构包括:
对于已经优化好的凸多面体Pi,在其基础上确定一个有更多面的多面体集合作为凸多面体Pi+1的候选拓扑结构;
这个集合中的每个凸多面体均是使用一个平面切掉凸多面体Pi的一个顶点或者一条边得到;将要切掉的顶点或边所邻接的面的平均法向作为切平面的法向,在保证每个凸多面体中被切掉的顶点或边所邻接的边的长度不少于凸多面体Pi中对应边长度的一半的情况下,通过最小化凸多面体中心到切平面的距离来确定切平面的位置;
其中,对于镜面对称或者近似镜面对称的三维物体,采用平面切割进行准凸的物体模型分解时,使用对称切割方式;对于已经优化好的凸多面体,使用对称点对{(vi,vj)}的集合来定义镜像对称;如果(vi,vj),(vk,vl)都是对称点对,或者(vi,vj)为对称点对且vk=vl,则一对边和为对称边;对于对称的每对顶点或边,在切掉它的时候对它的对应边或对应点进行同样的切除操作。
对于形状为非凸的三维物体,求解获得多个凸多面体后,对每相邻的两个凸多面体设置连接约束;具体来说,保证每相邻的两个凸多面体间有一对面作为连接面,且连接面需满足两个约束条件:这两个面互相平行;将一个面投影至另一个面所在平面,得到投影和另一个面交集的内切圆半径大于阈值。
由上述本发明提供的技术方案可以看出,通过本发明自动生成的凸多面体在满足大物体分块制造各种需求的前提下,最大化凸多面体的体积以尽可能节省大物体制造所需要的材料和时间成本。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例提供的一种使用凸多面体近似三维物体形状的优化方法的流程图;
图2为本发明实施例提供的三维物体准凸分解的流程示意图;
图3为本发明实施例提供的与物体3D打印外壳切分相关联的约束的示意图;
图4为本发明实施例提供的与物体3D打印外壳切分相关联的另一个约束的示意图;
图5为本发明实施例提供的与物体外观相关联的约束的示意图
图6为本发明实施例提供的求解优化问题的迭代方法的流程示意图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
图1为本发明实施例提供的一种使用凸多面体近似三维物体形状的优化方法的流程图。如图1所示,其主要包括如下步骤:
步骤11、分析给定三维物体的形状;若形状为非凸,则进行分解得到多个准凸的物体部件模型;若形状为凸或准凸,则提取该三维物体的物体模型。
当给定的三维物体形状为凸或准凸时,直接提取该三维物体的物体模型作为步骤12的输入。
本步骤主要考虑给定三维物体的形状为非凸的情况;具体如下:
当给定的物体形状为非凸时,须要将物体分解成多个准凸的物体部件模型,然后对每个准凸的物体部件模型使用单个凸多面体来近似。本发明实施例使用平面切割方法来分解三维物体得到多个准凸的物体部件模型;所述平面切割方法中每个裁剪平面的位置和姿态的计算方法如下:
1)计算三维物体边界的距离变换图,获得空间中每个点到三维物体边界的带符号的距离;其中,物体内部的点距离值为正,物体外部的点距离值为负。
2)找出距离变换图中的局部极大值点(也即距离值局部最大),并以此点为中心在三维物体边的内部逐步扩张出一个内部体;也即将局部极大值点周围距离值大于某个非零阈值的点并入内部体的点集(如图2(a)所示)。
3)将三维物体边中与内部体的距离超出阈值的部分去除得到三维物体的保留部分(如图2(b)所示),进而对保留部分中的每个联通区域构建三维骨架(如图2(c)所示),并在每个三维骨架上找到距离变换图中的局部极小值点(也即距离值局部最小)。
4)裁剪平面经过三维骨架上检测到的距离极小值点,并与相应的三维骨架的延伸方向正交。
此外,当自动检测出的三维骨架存在一定误差时,用户可以手动调整裁剪平面的位置和姿态以获得更好的物体准凸分割结果。
步骤12、将使用凸多面体近似准凸的物体部件模型或物体模型构造成一个优化问题,以最大化凸多面体的体积为目标,以凸多面体的凸属性、凸多面体的装配、三维物体制造以及三维物体的外观作为约束;通过求解优化问题计算出凸多面体。
本步骤包括两部分:带约束优化问题的构造与优化问题的求解;具体如下:
1、带约束优化问题的构造
通常来说,凸多面体面数越多,近似效果越好。但在实际应用中一般不希望凸多面体有过多的面。因此,本发明实施例使用最多不超过N个面的凸多面体来近似给定的物体形状,其中,N的具体数值可以根据实际情况来设定,例如,可以设为20。
本发明实施例中,所述优化问题的表达式为:
其中,P为凸多面体,V(P)为凸多面体P的体积;Si为约束条件,包括:凸多面体的凸属性、凸多面体的装配、三维物体制造以及三维物体的外观。
各个约束条件的内容具体为:
1)凸多面体的凸属性约束条件为:
对于凸多面体每个面fj,与它关联的所有顶点显然共面于fj所在平面,并且凸多面体的其他顶点都位于fj的同一边。我们引入两组辅助变量:nj为面fj指向多面体外部的单位法向,dj为面fj所在平面到原点的距离;则凸多面体上与面fj关联的顶点pi以及非关联的顶点pk满足下面约束:
nj·pi+dj=0,nj·pk+dj≤0;
2)凸多面体的装配约束条件为:
为了便于多面体的组装,生成的凸多面体的几何形状须要避免以下三种情况:
a、避免相邻面的二面角过小。设置相邻面的二面角的范围为[αmin,αmax],则一对邻面fi与fj需满足:
-cosαmin≤ni·nj≤-cosαmax;
b、避免凸多面体某个面有尖锐的夹角。设置每一面上顶点的夹角的范围为[βmin,βmax],则每个面中邻接的三个顶点pi,pj,pk满足:
c、避免凸多面体某个面有过短的边。设定最短边的阈值lmin,则多面体的每个邻接顶点pi,pj需满足
||pi-pj||≥lmin;
3)三维物体制造的约束条件为:
a、凸多面体的每个顶点位于三维物体的内部,并且凸多面体上每个点到三维物体表面的距离都大于一个阈值dmin,则在多面体表面采样并且对于每个采样点qi使其满足约束DM(qi)≥dmin,其中DM为到物体边界的符号距离函数,为了使这个约束与顶点位置关联,将采样点表示成与其相关的多面体元素(面、边、顶点)的凸组合;
b、凸多面体边的分布将影响三维物体3D打印外壳的分块;如图3所示,对于一组相邻面fi与fj的公共边,引入切分面Rij以及其单位法向nij作为辅助变量;nij正交于Rij所对应的凸多面体的边;切分平面集合{Rij}将三维物体外壳分割成多个分块,每个分块都有一个底面能够放置在3D打印机上,且切分平面与凸多面体的面之间二面角不小于π/2(为了保证3D打印的部件在拼装时不会在相邻接触面发生阻挡);另外,为了避免3D打印时增加额外的支撑材料,我们还需控制这些二面角不要太大。为此,这些二面角(如图3中θ1和θ2所示)需要满足以下约束:
0≤nij·nj≤cosγ,-cosγ≤nij·nj≤0;
图3中θ1、θ2为二面角,也即nij·ni、nij·nj表示的角度
c、对于多面体的每个顶点pi,需要保证过顶点pi的所有切分平面都交于同一条直线,如图4所示。否则,分割物体外壳时,外壳分块可能会生成尖锐的部分,增加制造和装配难度。引入辅助变量si∈R3,si为过顶点pi的一条直线的单位向量,确保过点pi的所有切分平面的法向与si正交;
d、由于激光切割机工作区域尺寸有限,我们需要对多面体每个面的大小有一个限制,使其可以被宽为w长为h的矩形所包围。对于凸多面体每个面fi,引入辅助变量rj∈R3为包围矩形的某个顶点位置,ej,1,ej,2∈R3分别为沿矩形两条垂直边方向的单位向量;显然nj,ej,1,ej,2两两正交,凸多面体的面fi能被矩形包围的条件表示为对于面fi上每个顶点pi满足:
0≤(pi-rj)·ej,1≤w,0≤(pi-rj)·ej,2≤h;
4)三维物体的外观约束条件:
将物体外壳切分成多个分块会在物体表面产生缝隙。为了美观,由用户标注三维物体表面的显著区域,每个显著区域都对应一个多面体的面fi;为了使得显著区域内不会出现缝隙,整个被标注区域须要被面fi所对应的3D打印分块所包围。也就需要每个显著区域中的每个点t都被与面fi相关联的切分平面所包围,如图5所示。设置Rij为面fi关联的一个切分平面,pi为Rij的一个关联定点,若nij指向区域内部,则约束条件表示为t到Rij的符号距离(t-pi)·nij非负,否则(t-pi)·nij非正。
为了减少约束条件,我们只考虑显著区域的一个子集的约束条件。更确切来说,在所述三维物体的外观约束条件中,将显著区域投影至最小二乘拟合平面,并计算投影点的凸包,之后,只对凸包的顶点进行约束;当显著区域比多面体面数多时,根据用户的指令来选定显著区域的优先程度,使其按照优先程度来满足外观约束条件。
2、优化问题的求解
如图6所示,从一个基础的凸多面体开始(例如,立方体),在保持其拓扑结构不变的情况下优化其顶点位置,来获得一个初始的凸多面体P0;之后,对凸多面体Pi反复执行以下步骤来获得下一个凸多面体Pi+1:
a、列出凸多面体Pi+1的一组候选拓扑结构;
b、对每个候选的拓扑结构,通过求解带约束的优化问题来优化顶点位置获得候选形状;
c、选取体积最大的候选形状做为凸多面体Pi+1;
d、判断凸多面体Pi+1的面数是否大于等于N;若是,则结束;若否,通过上述步骤a~c来获得下一个凸多面体Pi+2。
需要强调的是,本发明实施例中,给定三维物体的形状存在凸与非凸这两种情况。
如果为物体形状为凸,则直接以物体模型作为输入求解以上优化问题获得相应的一个凸多面体,用于近似物体模型;
如果物体形状为非凸,则通过步骤11获得多个准凸的物体部件模型。此时,分别以每个准凸的物体部件模型作为输入求解以上优化问题获得相应的凸多面体;计算出的凸多面体的数量和物体部件模型的数量一致。这些计算出的凸多面体的集合将用于近似整个物体模型。
本发明实施例中,本发明使用内点法求解上面所构造的带约束的优化问题。由于我们约束多面体面数小于N,因此大多数的约束都和采样点的距离函数DM有关。为了加速优化,在优化Pi+1的候选拓扑结构时我们使用少量的采样点,在确定最佳拓扑结构后,我们增加采样点数量重新优化顶点位置。在某些候选的多面体拓扑结构中,例如初始形状与局部最优解相差很远的情况下,内点法通常不会收敛。为此,我们可以将一定迭代次数后不收敛的拓扑结构剔除掉。
本发明实施例中,所述列出凸多面体Pi+1的一组候选拓扑结构包括:
对于已经优化好的凸多面体Pi,在其基础上确定一个有更多面的多面体集合作为凸多面体Pi+1的候选拓扑结构;这个集合中的每个凸多面体均是使用一个平面切掉凸多面体Pi的一个顶点或者一条边得到;将要切掉的顶点或边所邻接的面的平均法向作为切平面的法向,在保证每个凸多面体中被切掉的顶点或边所邻接的边的长度不少于凸多面体Pi中对应边长度的一半的情况下,通过最小化凸多面体中心到切平面的距离来确定切平面的位置;
其中,对于镜面对称或者近似镜面对称的三维物体,采用平面切割进行准凸的物体模型分解时,使用对称切割方式;对于已经优化好的凸多面体,使用对称点对{(vi,vj)}的集合来定义镜像对称;如果(vi,vj),(vk,vl)都是对称点对,或者(vi,vj)为对称点对且vk=vl,则一对边和为对称边;对于对称的每对顶点或边,在切掉它的时候对它的对应边或对应点进行同样的切除操作。使用这样的对称切割,我们可以获得更能体现目标物体模型对称性的多面体,而不需要增加额外的对称约束。
步骤13、对于形状为非凸的三维物体,求解获得多个凸多面体后,对每相邻的两个凸多面体设置连接约束,从而保证制造出的多个凸多面体可以连接成一个稳固的内部支撑结构。
对于形状为非凸的三维物体,通过步骤11分割为多个准凸的物体部件模型并使用步骤12所述方法对于每个准凸的物体部件模型求解其对应的凸多面体。为了使得相邻的两个凸多面体在制造时可以通过3D打印的柱子连接起来,需要每相邻的两个凸多面体间有一对面作为连接面,且连接面需满足两个约束条件:这两个面互相平行;将一个面投影至另一个面所在平面,得到投影和另一个面交集的内切圆半径大于阈值。通过施加这个相邻多面体的连接约束,制造出的多个多面体可以通过3D打印的圆柱形杆子连接起来构成稳固的内部结构用于支撑整个物体。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例可以通过软件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,上述实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (8)
1.一种使用凸多面体近似三维物体形状的优化方法,其特征在于,包括:
分析给定三维物体的形状;若形状为非凸,则进行分解得到多个准凸的物体部件模型;若形状为凸或准凸,则提取该三维物体的物体模型;
将使用凸多面体近似准凸的物体部件模型或物体模型构造成一个优化问题,以最大化凸多面体的体积为目标,以凸多面体的凸属性、凸多面体的装配、三维物体制造以及三维物体的外观作为约束,通过求解优化问题计算出凸多面体;
对于形状为非凸的三维物体,求解获得多个凸多面体后,对每相邻的两个凸多面体设置连接约束,从而保证制造出的多个凸多面体可以连接成一个稳固的内部支撑结构。
2.根据权利要求1所述的一种使用凸多面体近似三维物体形状的优化方法,其特征在于,所述分解得到多个准凸的物体部件模型包括:
使用平面切割方法来分解三维物体得到多个准凸的物体部件模型;所述平面切割方法中每个裁剪平面的位置和姿态的计算方法如下:
计算三维物体边界的距离变换图,获得空间中每个点到三维物体边界的带符号的距离;其中,物体内部的点距离值为正,物体外部的点距离值为负;
找出距离变换图中的局部极大值点,并以此点为中心在三维物体边的内部逐步扩张出一个内部体;
将三维物体边中与内部体的距离超出阈值的部分去除得到三维物体的保留部分,进而对保留部分中的每个联通区域构建三维骨架,并在每个三维骨架上找到距离变换图中的局部极小值点;
裁剪平面经过三维骨架上检测到的距离极小值点,并与相应的三维骨架的延伸方向正交。
3.根据权利要求1所述的一种使用凸多面体近似三维物体形状的优化方法,其特征在于,所述优化问题的表达式为:
其中,P为凸多面体,V(p)为凸多面体P的体积;Si为约束条件,包括:凸多面体的凸属性、凸多面体的装配、三维物体制造以及三维物体的外观。
4.根据权利要求1或3所述的一种使用凸多面体近似三维物体形状的优化方法,其特征在于,
凸多面体的凸属性约束条件为:
对于凸多面体每个面fj,引入两组辅助变量:nj为面fj指向凸多面体外部的单位法向,dj为面fj到原点的距离;则凸多面体上与面fj关联的顶点pi以及非关联的顶点pk满足下面约束:
nj·pi+dj=0,nj·pk+dj≤0;
凸多面体的装配约束条件为:
a、设置相邻面的二面角的范围为[αmin,αmax],则一对邻面fi与fj满足:
-cosαmin≤ni·nj≤-cosαmax;
其中,ni为面fi指向凸多面体外部的单位法向;
b、设置每一面上顶点的夹角的范围为[βmin,βmax],则每个面中邻接的三个顶点pi,pj,pk满足:
c、设定最短边的阈值lmin,则多面体的每个邻接顶点pi,pj满足:
||pi-pj||≥lmin;
三维物体制造的约束条件为:
a、凸多面体的每个顶点位于三维物体的内部,并且凸多面体上每个点到三维物体表面的距离都大于一个阈值dmin,则在多面体表面采样并且对于每个采样点qi使其满足约束DM(qi)≥dmin,其中DM为到物体边界的符号距离函数,为了使这个约束与顶点位置关联,将采样点表示成与其相关的多面体元素的凸组合;
b、凸多面体边的分布将影响三维物体3D打印外壳的分块;对于一组相邻面fi与fj的公共边,引入切分面Rij以及其单位法向nij作为辅助变量;nij正交于Rij所对应的凸多面体的边;切分平面集合{Rij}将三维物体外壳分割成多个分块,每个分块都有一个底面能够放置在3D打印机上,且切分平面与凸多面体的面之间二面角不小于π/2。同时二面角还须满足以下约束:
0≤nij·ni≤cosγ,-cosγ≤nij·nj≤0;
c、引入辅助变量si∈R3,si为过顶点pi的一条直线的单位向量,确保过点pi的所有切分平面的法向与si正交;
d、对于凸多面体每个面fi,引入辅助变量rj∈R3为包围矩形的某个顶点位置,ej,1,ej,2∈R3分别为沿矩形两条垂直边方向的单位向量;凸多面体的面fi能被矩形包围的条件表示为对于面fj上每个顶点pi满足:
0≤(pi-rj)·ej,1≤w,0≤(pi-rj)·ej,2≤h;
其中,h与w分别为矩形的长与宽;
三维物体的外观约束条件:
由用户标注三维物体表面的显著区域,每个显著区域都对应一个多面体的面fi,则每个显著区域中的每个点t都被与面fi相关联的切分平面所包围;设置Rij为面fi关联的一个切分平面,pi为Rij的一个关联定点,若nij指向区域内部,则约束条件表示为t到Rij的符号距离(t-pi)·nij非负,否则(t-pi)·nij非正。
5.根据权利要求4所述的一种使用凸多面体近似三维物体形状的优化方法,其特征在于,在所述三维物体的外观约束条件中,将显著区域投影至最小二乘拟合平面,并计算投影点的凸包,之后,只对凸包的顶点进行约束;
当显著区域比多面体面数多时,根据用户的指令来选定显著区域的优先程度,使其按照优先程度来满足外观约束条件。
6.根据权利要求1所述的一种使用凸多面体近似三维物体形状的优化方法,其特征在于,所述通过求解优化问题,获得多个凸多面体包括:
从一个基础的凸多面体开始,在保持其拓扑结构不变的情况下优化其顶点位置,来获得一个初始的凸多面体P0;之后,对凸多面体Pi反复执行以下步骤来获得下一个凸多面体Pi+1:
a、列出凸多面体Pi+1的一组候选拓扑结构;
b、对每个候选的拓扑结构,通过求解带约束的优化问题来优化顶点位置获得候选形状;
c、选取体积最大的候选形状做为凸多面体Pi+1;
d、判断凸多面体Pi+1的面数是否大于N;若是,则结束;若否,通过上述步骤a~c来获得下一个凸多面体Pi+2;其中,N为的凸多面体面个数的上限。
7.根据权利要求6所述的一种使用凸多面体近似三维物体形状的优化方法,其特征在于,所述列出凸多面体Pi+1的一组候选拓扑结构包括:
对于已经优化好的凸多面体Pi,在其基础上确定一个有更多面的多面体集合作为凸多面体Pi+1的候选拓扑结构;
这个集合中的每个凸多面体均是使用一个平面切掉凸多面体Pi的一个顶点或者一条边得到;将要切掉的顶点或边所邻接的面的平均法向作为切平面的法向,在保证每个凸多面体中被切掉的顶点或边所邻接的边的长度不少于凸多面体Pi中对应边长度的一半的情况下,通过最小化凸多面体中心到切平面的距离来确定切平面的位置;
其中,对于镜面对称或者近似镜面对称的三维物体,采用平面切割进行准凸的物体模型分解时,使用对称切割方式;对于已经优化好的凸多面体,使用对称点对{(vi,vj)}的集合来定义镜像对称;如果(vi,vj),(vk,vl)都是对称点对,或者(vi,vj)为对称点对且vk=vl,则一对边和为对称边;对于对称的每对顶点或边,在切掉它的时候对它的对应边或对应点进行同样的切除操作。
8.根据权利要求1所述的一种使用凸多面体近似三维物体形状的优化方法,其特征在于,
对于形状为非凸的三维物体,求解获得多个凸多面体后,对每相邻的两个凸多面体设置连接约束;具体来说,保证每相邻的两个凸多面体间有一对面作为连接面,且连接面需满足两个约束条件:这两个面互相平行;将一个面投影至另一个面所在平面,得到投影和另一个面交集的内切圆半径大于阈值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610418178.7A CN106097453B (zh) | 2016-06-07 | 2016-06-07 | 一种使用凸多面体近似三维物体形状的优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610418178.7A CN106097453B (zh) | 2016-06-07 | 2016-06-07 | 一种使用凸多面体近似三维物体形状的优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106097453A true CN106097453A (zh) | 2016-11-09 |
CN106097453B CN106097453B (zh) | 2019-04-26 |
Family
ID=57846899
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610418178.7A Active CN106097453B (zh) | 2016-06-07 | 2016-06-07 | 一种使用凸多面体近似三维物体形状的优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106097453B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106875495A (zh) * | 2016-12-23 | 2017-06-20 | 合肥阿巴赛信息科技有限公司 | 一种基于凹凸贴图的浮雕网格表示及3d打印切片方法和系统 |
CN109507723A (zh) * | 2017-09-15 | 2019-03-22 | 中国石油化工股份有限公司 | 微地震压裂裂缝模型的压裂体积计算方法及系统 |
CN109782272A (zh) * | 2018-12-30 | 2019-05-21 | 中国电子科技集团公司第十五研究所 | 三维雷达体的布尔融合方法 |
CN110419208A (zh) * | 2017-03-17 | 2019-11-05 | 株式会社理光 | 成像系统、成像控制方法、图像处理设备和图像处理程序 |
CN110869188A (zh) * | 2017-07-10 | 2020-03-06 | 惠普发展公司,有限责任合伙企业 | 用于增材制造的物体模型中的嵌套分段 |
CN114043727A (zh) * | 2021-11-12 | 2022-02-15 | 深圳拓竹科技有限公司 | 3d打印的方法和装置、存储介质以及程序产品 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103885385A (zh) * | 2014-03-07 | 2014-06-25 | 华侨大学 | 一种三角网格模型的分治加工方法 |
CN104191624A (zh) * | 2014-08-29 | 2014-12-10 | 北京智谷技术服务有限公司 | 3d打印的辅助控制方法和装置 |
CN105590339A (zh) * | 2015-12-15 | 2016-05-18 | 广州南沙3D打印创新研究院 | 三维模型的碰撞检测方法及系统 |
-
2016
- 2016-06-07 CN CN201610418178.7A patent/CN106097453B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103885385A (zh) * | 2014-03-07 | 2014-06-25 | 华侨大学 | 一种三角网格模型的分治加工方法 |
CN104191624A (zh) * | 2014-08-29 | 2014-12-10 | 北京智谷技术服务有限公司 | 3d打印的辅助控制方法和装置 |
CN105590339A (zh) * | 2015-12-15 | 2016-05-18 | 广州南沙3D打印创新研究院 | 三维模型的碰撞检测方法及系统 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106875495A (zh) * | 2016-12-23 | 2017-06-20 | 合肥阿巴赛信息科技有限公司 | 一种基于凹凸贴图的浮雕网格表示及3d打印切片方法和系统 |
CN106875495B (zh) * | 2016-12-23 | 2020-07-07 | 合肥阿巴赛信息科技有限公司 | 基于凹凸贴图的浮雕网格表示及3d打印切片方法和系统 |
CN110419208A (zh) * | 2017-03-17 | 2019-11-05 | 株式会社理光 | 成像系统、成像控制方法、图像处理设备和图像处理程序 |
CN110419208B (zh) * | 2017-03-17 | 2021-03-26 | 株式会社理光 | 成像系统、成像控制方法、图像处理设备和计算机可读介质 |
US10992879B2 (en) | 2017-03-17 | 2021-04-27 | Ricoh Company, Ltd. | Imaging system with multiple wide-angle optical elements arranged on a straight line and movable along the straight line |
CN110869188A (zh) * | 2017-07-10 | 2020-03-06 | 惠普发展公司,有限责任合伙企业 | 用于增材制造的物体模型中的嵌套分段 |
CN110869188B (zh) * | 2017-07-10 | 2022-10-21 | 惠普发展公司,有限责任合伙企业 | 用于增材制造的物体模型中的嵌套分段 |
CN109507723A (zh) * | 2017-09-15 | 2019-03-22 | 中国石油化工股份有限公司 | 微地震压裂裂缝模型的压裂体积计算方法及系统 |
CN109782272A (zh) * | 2018-12-30 | 2019-05-21 | 中国电子科技集团公司第十五研究所 | 三维雷达体的布尔融合方法 |
CN114043727A (zh) * | 2021-11-12 | 2022-02-15 | 深圳拓竹科技有限公司 | 3d打印的方法和装置、存储介质以及程序产品 |
Also Published As
Publication number | Publication date |
---|---|
CN106097453B (zh) | 2019-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106097453A (zh) | 一种使用凸多面体近似三维物体形状的优化方法 | |
CN101799937B (zh) | 一种采用草图创建三维模型的方法 | |
Han et al. | Manufacturing feature recognition from solid models: a status report | |
Yang et al. | Sketch-based modeling of parameterized objects. | |
US10867435B2 (en) | System and method for generating planar section 3D shape representations | |
US8019574B2 (en) | Parametric geometry model for a blended wing body | |
Lien et al. | Approximate convex decomposition of polyhedra and its applications | |
CN103544697B (zh) | 一种基于超图谱分析的图像分割方法 | |
CN109744945A (zh) | 一种区域属性确定方法、装置、系统及电子设备 | |
CN101537585B (zh) | 产品的数控加工实时切削仿真方法 | |
JPH1027267A (ja) | 計算機援助された幾何学的モデル化を行なう方法 | |
Xu et al. | A mapping-based approach to eliminating self-intersection of offset paths on mesh surfaces for CNC machining | |
CN104408462A (zh) | 面部特征点快速定位方法 | |
CN102495865A (zh) | 结合图像内部空间关系及视觉共生关系的图像标注方法 | |
CN109597354A (zh) | 一种三角网格模型的多约束数控加工轨迹生成方法 | |
CN102023616B (zh) | 三角Bézier曲面数控精加工刀轨快速生成方法 | |
CN110889233A (zh) | 结冰风洞试验冰形三维实体生成方法及三维实物冰 | |
CN109570591A (zh) | 离心叶轮切削加工方法及装置和离心叶轮加工设备 | |
Canham et al. | Automated scoring of a neuropsychological test: the Rey Osterrieth complex figure | |
CN104392053A (zh) | 一种蒙皮滚弯零件截面曲率分析方法 | |
CN102091966A (zh) | 三角Bézier曲面数控加工刀轨生成方法 | |
CN113977946A (zh) | 一种面向stl文件的3d打印自适应分层方法 | |
CN104933189B (zh) | 基于结点中心漂移分裂的佛像表面采样数据r树优化方法 | |
Putrayudanto et al. | An enhanced approach for inner and outer faces recognition of complex thin-shell parts | |
CN113673370B (zh) | 一种从脱机文档获取bim数据的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |