CN102999941B - 基于遗传操作的三维模型生成方法 - Google Patents
基于遗传操作的三维模型生成方法 Download PDFInfo
- Publication number
- CN102999941B CN102999941B CN201210454336.6A CN201210454336A CN102999941B CN 102999941 B CN102999941 B CN 102999941B CN 201210454336 A CN201210454336 A CN 201210454336A CN 102999941 B CN102999941 B CN 102999941B
- Authority
- CN
- China
- Prior art keywords
- parts
- dimensional model
- bounding box
- dimensional
- minimum bounding
- 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.)
- Expired - Fee Related
Links
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本发明涉及一种基于遗传操作的三维模型生成方法,包括下述步骤:输入三维模型集合;从三维模型集合中任意选取一个三维模型,记为三维模型M1;从三维模型M1中随机选取1个部件,记为部件P1;基于部件P1,计算除三维模型M1以外的三维模型的部件与部件P1的对应值;收集与部件P1之间的对应值大于0.9的部件,构成P1的对应部件集合;对对应部件集合中的每个部件计算最小包围盒,得到部件P1的对应部件最小包围盒集合;依据最小包围盒集合,计算部件P1的允许形变范围;基于允许形变范围,对部件P1进行形变;将形变扩散到三维模型M1的其他部件得到新的三维模型。本发明利用了变异遗传的优点,方法简单,丰富了三维模型数据集。
Description
技术领域
本发明属于计算机图像学领域,尤其涉及一种基于遗传操作的三维模型生成方法。
背景技术
三维建模是当前计算机图形学领域的难点之一。如何根据已有三维模型,自动生成新的三维模型,是解决三维建模,丰富现有三维模型数据集的重要途径。
现有的自动生成三维模型的方法主要包括过程式建模和结构保持形变两个方法。过程式建模方法的主要缺点是需要由用户定义用于生成三维模型的形状语法。形状语法通常由若干个产生式规则构成一个语法***。而且,人造物体的结构往往较为复杂,其结构与物体功能密切关联,因而定义用于生成人造物体三维模型的形状语法非常困难,特别是对于普通用户而言,更是难以完成。尽管现在有基于若干输入样例自动生成形状语法的方法,即逆向过程建模,但是这类方法目前还只能适用于植物、装饰图案等,不能用于结构与功能关联较强的人造物体;另一类方法是结构保持形变,该方法的缺点是主要通过形变(部件比例缩放、位移等)来生成三维模型的新的变种,但是无法生成新的结构。
生物学中的遗传保证了物种的相对稳定性及多样性,将遗传学中的变异遗传应用于三维模型的生成尚未见类似的报道。
发明内容
基于此,有必要针对现有三维模型生成方法存在的缺陷,提供一种基于遗传操作的三维模型生成方法。
一种基于遗传操作的三维模型生成方法,包括下述步骤:
输入三维模型集合;从所述三维模型集合中任意选取一个三维模型,记为三维模型M1;从所述三维模型M1中随机选取1个部件,记为部件P1;基于部件P1,计算除所述三维模型M1以外的所有三维模型的部件与部件P1的对应值;收集与部件P1之间的对应值大于0.9的部件,构成P1的对应部件集合;对所述对应部件集合中的每个部件计算最小包围盒,得到部件P1的对应部件最小包围盒集合,所述最小包围盒为包含部件的体积最小的长方体;依据P1的对应部件最小包围盒集合,计算所述部件P1的允许形变范围;基于所述允许形变范围,对所述部件P1进行形变;将所述形变扩散到所述三维模型M1的其他部件得到新的三维模型。
在本发明提供的实施例中,其中,输入三维模型集合,包括下述步骤:
计算所述三维模型集合中的所有三维模型的中心;平移所述的中心,使所有三维模型的中心重合,并将重合后的中心作为坐标系原点。
在本发明提供的实施例中,其中,基于部件P1,计算除所述三维模型M1以外的所有三维模型的部件与部件P1的对应值,采用下述构造公式计算:
式中,B1和B2分别是部件P1和部件P2的最小包围盒,所述最小包围盒为包含部件的体积最小的长方体,DH是上述两个长方体之间的Hausdorff距离,x和y为最小包围盒的顶点,d代表三维空间欧式距离。
在本发明提供的实施例中,其中,依据所述最小包围盒,计算所述部件P1的允许形变范围,包括下述步骤:
为所述部件P1的对应部件最小包围盒集合中的每个最小包围盒赋予一个六维向量作为描述符dB,所述描述符dB对应于六维描述符空间中的一个数据点,所述最小包围盒集合对应的数据点组成点集D;对所述点集D做主元分析,并选取分析得到的最大的两个特征值所对应的特征向量作为两个坐标轴,记为a1,a2;以a1,a2为坐标轴构建一个二维平面π;将所述点集D的所有数据点投影至所述二维平面π上,得到投影点集合N;计算所述投影点集合N的平均值得到中心点e;计算所述投影点集合N中的所有投影点在以中心点e为原点,所述坐标轴a1,a2为坐标轴的二维坐标系上的坐标,其中,所述投影点集合N中的每个投影点p,采用如下构造公式计算每个投影点p在a1、a2两个坐标轴上的坐标n1和n2:
n1=(p-e)·a1
n2=(p-e)·a2
上述式中“·”代表矢量点积;
计算所述投影点集合N中所有点的在上述两个坐标轴a1、a2上的坐标n1、n2绝对值的最大值,并分别记为a,b;以所述中心点e为圆点,以所述a和b为轴,在所述二维平面π上构建椭圆,
x2/a2+y2/b2=1;
在所述椭圆内进行二维高斯采样,得到采样点f,坐标为(fx,fy);
计算所述采样点f对应的描述符df,其中所述描述符df计算方法为:
df=fxa1+fya2。
在本发明提供的实施例中,所述描述符dB为六维向量,所述六维向量定义如下,
dB=(tx,ty,tz,sx,sy,sz),
上述式中,tx,ty,tz为所述最小包围盒的中心在全局坐标系中的三维坐标位置,sx,sy,sz为所述最小包围盒沿xyz三个方向上的大小。
上述生成三维模型的方法基于遗传操作中的变异遗传。首先输入三维模型集合;并从三维模型集合中任意选取一个三维模型,记为三维模型M1;从三维模型M1中随机选取1个部件,记为部件P1;基于部件P1,计算除三维模型M1以外的所有三维模型的部件与部件P1的对应值;收集与部件P1之间的对应值大于0.9的部件,构成P1的对应部件集合;对对应部件集合中的每个部件计算最小包围盒,得到部件P1的对应部件最小包围盒集合;依据所述最小包围盒集合,计算所述部件P1的允许形变范围;基于所述允许形变范围,对所述部件P1进行形变;将所述形变扩散到所述三维模型M1的其他部件得到新的三维模型。上述方法有效利用了变异遗传的优点,方法简单,大大丰富了三维模型数据集;同时,由于新生成的三维模型可以进一步作为输入的基本三维模型,参于新一轮的交叉组合中,不断演化生成更多的三维模型,极大丰富了三维模型数据集。
附图说明
图1为本发明实施例提供的基于遗传操作的三维模型生成方法的步骤流程图。
图2为本发明实施例提供的输入三维模型集合的步骤流程图。
图3为本发明实施例提供的为本发明实施例提供的依据上述最小包围盒,计算部件P1的允许形变范围的步骤流程图。
具体实施方式
请参阅图1,图1为本发明实施例提供的基于遗传操作的三维模型生成方法的流程示意图。
基于遗传操作的三维模型生成方法包括下述步骤:
步骤S110:输入三维模型集合。在本发明提供的实施例中,三维模型主要是指由人造物体(如桌子、椅子、台灯等)的三维模型,每个人造物体三维模型通常由若干个部件(都是独立的几何形体)构成。在本发明中,在本发明中,输入三维模型集合主要来源是互联网的三维模型库,这些三维模型是有大量三维建模人员使用三维建模软件方法建立并共享。可以理解,在本发明提供的实施例中,输入的三维模型集合一般是由同类的三维模型组成的集合,比如全部桌子或椅子或台灯等同类的人造三维模型构成的三维模型集合。
请参阅图2,为本发明实施例提供的输入三维模型集合的步骤流程图,其包括下述步骤:
步骤S111:计算三维模型集合中的所有三维模型的中心。可以理解,三维模型的中心为该三维模型所有顶点坐标位置的平均值,即所有三维模型中的所有顶点分别在x轴,y轴及z轴上的坐标的平均值。
步骤S112:平移上述的中心,使所有三维模型的中心重合,并将重合后的中心作为坐标系原点。在本发明提供的实施例中,一般采用人工交互的方法将所有三维模型的中心进行平移,使所有三维模型的中心重合,并将重合后的中心作为坐标系原点。
可以理解,经步骤S110后,三维模型集合中的所有三维模型均具有相同的坐标原点,以便后续的操作。
步骤S120:从三维模型集合中任意选取一个三维模型,记为三维模型M1。
步骤S130:从步骤120中选取的三维模型M1中随机选取1个部件,记为部件P1。可以理解,在实际中我们还可以选取2个部件或更多的部件,以作为本发明变异的部件的基础。在本发明实施例中,优选为选取1个部件。
步骤S140:基于部件P1,计算除三维模型M1以外的所有三维模型的部件与部件P1的对应值。在发明实施例中,计算除三维模型M1以外的所有三维模型的部件与部件P1的对应值,采用如下构造公式计算:
式中,B1和B2分别是部件P1和部件P2的最小包围盒,所述最小包围盒为包含部件的体积最小的长方体,DH是上述两个长方体之间的Hausdorff距离,x和y为最小包围盒的顶点,d代表三维空间欧式距离。
步骤S150:收集与部件P1之间的对应值大于0.9的部件,构成部件P1的对应部件集合。在本发明实施例中,基于上述计算方法计算得到的对应值,选取对应值大于0.9的部件,并构成P1的对应部件集合。可以理解,该对应部件集合中包含部件P1本身。
步骤S160:对对应部件集合中的每个部件计算最小包围盒,得到部件P1的对应部件最小包围盒集合,最小包围盒为包含部件的体积最小的长方体。在本发明实施例中,基于步骤S150中收集的对应部件集合,计算其中部件的体积最小的长方体,即最小包围盒。
步骤S170:依据P1的对应部件最小包围盒集合,计算部件P1的允许形变范围。
请参阅图3,为本发明实施例提供的依据P1的对应部件最小包围盒集合,计算所述部件P1的允许形变范围的步骤流程图,其包括下述步骤:
步骤S171:为所述部件P1的对应部件最小包围盒集合中的每个最小包围盒赋予一个六维向量作为描述符dB。
在本发明提供的实施例中,描述符dB定义为一个六维向量,其中,六维向量定义如下,
dB=(tx,ty,tz,sx,sy,sz),
上述式中,tx,ty,tz为所述最小包围盒的中心在全局坐标系中的三维坐标位置,sx,sy,sz为所述最小包围盒沿xyz三个方向上的大小。可以理解,每个最小包围盒的描述符dB对应于六维描述符空间中的一个数据点,最小包围盒集合对应的所有数据点组成点集D。
步骤S172:对点集D做主元分析,并选取分析得到的最大的两个特征值所对应的特征向量作为两个坐标轴,记为a1,a2。
步骤S173:以a1,a2为坐标轴构建一个二维平面π。在本实施例中,以a1,a2分别为为横轴、纵轴构建一个二维平面π。
步骤S174:将点集D的所有数据点投影至上述二维平面π上,得到投影点集合N。在本发明提供的实施例中,投影优选为垂直投影。
步骤S175:计算投影点集合N的平均值,并得到中心点e。在本发明实施例中,采用数学上平均值的计算方法计算得到投影点集合N的平均值,并将得到的平均值作为中心点e。
步骤S176:计算上述投影点集合N中的所有投影点在以中心点e为原点,坐标轴a1,a2为坐标轴的二维坐标系上的坐标。在本发明提供的实施例中,上述投影点集合N中的每个投影点p,采用如下构造公式计算每个投影点p在a1、a2两个坐标轴上的坐标n1和n2:
n1=(p-e)·a1
n2=(p-e)·a2
上述式中“·”代表矢量点积。
步骤S177:计算上述投影点集合N中所有点的在上述两个坐标轴a1、a2上的坐标n1、n2绝对值的最大值,并分别记为a,b。可以理解,上述绝对值的最大值a=max{|n1|},其中n1εN;b=max{|n2|},其中n2εN。
步骤S178:以中心点e为圆点,以上述a和b为在坐标轴上的距离,在二维平面π上构建椭圆,x2/a2+y2/b2=1。可以理解,通过上述步骤构建的椭圆表示了部件P1允许形变的范围。
步骤S179:在上述椭圆内进行二维高斯采样,得到采样点f,坐标为(fx,fy)。在本实施例中,采样点f在二维平面π上呈正态分布,均值为中心点0,沿坐标轴a1和a2上的方差分别为a2和b2。
步骤S1710:计算采样点f对应的描述符df,其中描述符df计算方法为:
df=fxa1+fya2。
通过上述计算方法,计算得到采样点f所对应的描述符。则df是输入部件P1随机形变后的(新的)描述符,该描述符df包含部件P1的新的位置和大小,是允许范围之内的一个允许的形变。可以理解,df也是一个六维向量,但是六维向量df已经和原来输入的六维向量dB不同,而是按照上面的公式计算后得到的结果,经上述方法计算后的六维向量df,其中的tx,ty,tz分量为新的位置,sx,sy,sz分量为新的大小。
步骤S180:基于上述计算得到的允许形变范围,对部件P1进行形变。由于描述符df包括部件P1的新的位置和大小,所以可以基于上述描述符对部件P1进行形变。
可以理解,通过上述计算得到部件P1的允许形变在一定的范围内,在此形变允许范围内随机采样一个形变运用到部件P1上,即可得到形变后的部件,由此可见,输入模型的每个部件的允许形变范围是基于其对应部件集合分析得到的,使得部件形变具有多样性更具有合理性,从而合理地丰富了输入三维模型集合。
步骤S190:将上述形变扩散到三维模型M1的其他部件得到新的三维模型。在本发明提供的实施例中,根据部件之间的相邻关系,将该形变扩散到所有其他部件使相邻关系相匹配,其中,相邻关系包括连接关系、对称关系、正交关系及平行关系,这一过程主要是采用计算机图形处理。例如,椅子靠背中的竖杆变长了以后,椅子靠背中与该竖干相邻的其他部件也要相应的形变,如靠背中的圆弧形框架也随之被拉长,以保持竖杆与框架顶端的接触,使得连接关系更为紧密。可以理解,经上述步骤后生成的新的三维模型进一步可以作为原三维模型集合的数据集,并重复上述步骤,生成新的三维模型。
上述生成三维模型的方法基于遗传操作中的交叉遗传,有效利用了变异遗传的优点,方法简单,大大丰富了三维模型数据集;同时,由于新生成的三维模型可以进一步作为输入的基本三维模型,参于新一轮的交叉组合中,不断演化生成更多的三维模型,极大丰富了三维模型数据集。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容作出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
Claims (4)
1.一种基于遗传操作的三维模型生成方法,其特征在于,包括下述步骤:
输入三维模型集合;
从所述三维模型集合中任意选取一个三维模型,记为三维模型M1;
从所述三维模型M1中随机选取1个部件,记为部件P1;
基于部件P1,计算除所述三维模型M1以外的所有三维模型的部件与部件P1的对应值;
收集与部件P1之间的对应值大于0.9的部件,构成P1的对应部件集合;
对所述对应部件集合中的每个部件计算最小包围盒,得到部件P1的对应部件最小包围盒集合,所述最小包围盒为包含部件的体积最小的长方体;
依据P1的对应部件最小包围盒集合,计算所述部件P1的允许形变范围;
基于所述允许形变范围,对所述部件P1进行形变;
将所述形变扩散到所述三维模型M1的其他部件得到新的三维模型;
基于部件P1,计算除三维模型M1以外的所有三维模型的部件与部件P1的对应值,采用如下构造公式计算:
式中,B1和B2分别是部件P1和部件P2的最小包围盒,所述最小包围盒为包含部件的体积最小的长方体,DH是上述两个长方体之间的Hausdorff距离,x和y为最小包围盒的顶点,d代表三维空间欧式距离。
2.根据权利要求1所述的基于遗传操作的三维模型生成方法,其特征在于,其中,输入三维模型集合,包括下述步骤:
计算所述三维模型集合中的所有三维模型的中心;
平移所述的中心,使所有三维模型的中心重合,并将重合后的中心作为坐标系原点。
3.根据权利要求1所述的基于遗传操作的三维模型生成方法,其特征在于,其中,依据所述最小包围盒,计算所述部件P1的允许形变范围,包括下述步骤:
为所述部件P1的对应部件最小包围盒集合中的每个最小包围盒赋予一个六维向量作为描述符dB,所述描述符dB对应于六维描述符空间中的一个数据点,所述最小包围盒集合对应的数据点组成点集D;
对所述点集D做主元分析,并选取分析得到的最大的两个特征值所对应的特征向量作为两个坐标轴,记为a1,a2;
以a1,a2为坐标轴构建一个二维平面π;
将所述点集D的所有数据点垂直投影至所述二维平面π上,得到投影点集合N;
计算所述投影点集合N的平均值得到中心点e;
计算所述投影点集合N中的所有投影点在以中心点e为原点,所述坐标轴a1,a2为坐标轴的二维坐标系上的坐标,其中,所述投影点集合N中的每个投影点p,采用如下构造公式计算每个投影点p在a1、a2两个坐标轴上的坐标n1和n2:
n1=(p-e)·a1
n2=(p-e)·a2
上述式中“·”代表矢量点积;
计算所述投影点集合N中所有点的在上述两个坐标轴a1、a2上的坐标n1、n2绝对值的最大值,并分别记为a,b;
以所述中心点e为圆点,以所述a和b为轴,在所述二维平面π上构建椭圆,x2/a2+y2/b2=1;
在所述椭圆内进行二维高斯采样,得到采样点f,坐标为(fx,fy);
计算所述采样点f对应的描述符df,其中所述描述符df计算方法为:
df=fxa1+fya2。
4.根据权利要求3所述的基于遗传操作的三维模型生成方法,其特征在于,所述描述符dB为六维向量,所述六维向量定义如下,
dB=(tx,ty,tz,sx,sy,sz),
上述式中,tx,ty,tz为所述最小包围盒的中心在全局坐标系中的三维坐标位置,sx,sy,sz为所述最小包围盒沿xyz三个方向上的大小。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210454336.6A CN102999941B (zh) | 2012-11-13 | 2012-11-13 | 基于遗传操作的三维模型生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210454336.6A CN102999941B (zh) | 2012-11-13 | 2012-11-13 | 基于遗传操作的三维模型生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102999941A CN102999941A (zh) | 2013-03-27 |
CN102999941B true CN102999941B (zh) | 2016-02-17 |
Family
ID=47928469
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210454336.6A Expired - Fee Related CN102999941B (zh) | 2012-11-13 | 2012-11-13 | 基于遗传操作的三维模型生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102999941B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106875330B (zh) * | 2016-12-30 | 2020-06-26 | 浙江科澜信息技术有限公司 | 一种平面模型转球面模型的方法 |
CN108022309B (zh) * | 2017-12-07 | 2019-05-21 | 梦工场珠宝企业管理有限公司 | 三维模型智能拼接方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3731466B2 (ja) * | 2000-10-17 | 2006-01-05 | 三菱電機株式会社 | 3次元自由曲面データ圧縮転送方式 |
EP1510973A3 (en) * | 2003-08-29 | 2006-08-16 | Samsung Electronics Co., Ltd. | Method and apparatus for image-based photorealistic 3D face modeling |
CN101877146B (zh) * | 2010-07-15 | 2012-01-18 | 北京工业大学 | 一种扩充三维人脸数据库的方法 |
CN102339473B (zh) * | 2010-07-22 | 2014-03-26 | 山东师范大学 | 一种基于遗传算法的动漫模型设计方法 |
CN102298788A (zh) * | 2011-08-12 | 2011-12-28 | 山东师范大学 | 基于多目标评价的交互式动漫造型实现方法 |
-
2012
- 2012-11-13 CN CN201210454336.6A patent/CN102999941B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN102999941A (zh) | 2013-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101609564B (zh) | 一种草图式输入的三维网格模型制作方法 | |
CN106960459A (zh) | 角色动画中基于扩展位置动力学的蒙皮技术及权重重定位的方法 | |
CN101877146B (zh) | 一种扩充三维人脸数据库的方法 | |
CN102999941B (zh) | 基于遗传操作的三维模型生成方法 | |
CN104143209A (zh) | 基于线画图案的三维模型雕刻方法 | |
CN104361625A (zh) | 一种基于射线原理的带边界保留的云数据精简算法 | |
Sun et al. | Adaptive generation and local refinement methods of three-dimensional hexahedral element mesh | |
CN103226846A (zh) | 一种基于手绘线条的三维雕刻方法 | |
Kronenfeld | Manual construction of continuous cartograms through mesh transformation | |
CN104794747A (zh) | 一种基于射线原理的三维点云数据精简算法 | |
CN105205206A (zh) | 一种复杂平面片交线段的求取方法 | |
CN102999940B (zh) | 基于遗传操作的三维模型生成方法 | |
CN103440684A (zh) | 一种将球谐光照技术应用于面绘制的方法 | |
CN108734181B (zh) | 一种加速在线生成核反应堆堆芯特征线的方法 | |
Chernogorova et al. | Fitted finite volume positive difference scheme for a stationary model of air pollution | |
Xu et al. | Instructp2p: Learning to edit 3d point clouds with text instructions | |
Chandra et al. | A survey: Recent development in fractals | |
Hurkxkens et al. | Speculative precision: Combining haptic terrain modelling with real-time digital analysis for landscape design | |
Zhang et al. | 3D design platform of virtual national costume based on digital nonlinear random matrix | |
Lv | VR technology used to show the practice of architectural node structure | |
Fukusato et al. | Interactive texture editing for garment line drawings | |
CN103985152B (zh) | 基于二维手绘线画图的三维对称自由形体生成方法 | |
CN106570937A (zh) | 一种基于arap++的球面参数化方法 | |
Dong | Research and application of virtual reality technology in the restoration of ancient buildings in Huizhou1 | |
Lee | A STUDY OF THE APPLICATION OF THE KOCH CURVE AND FUZZY THEORY ON THE COMPUTER AIDED DESIGN OF FURNITURE. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160217 Termination date: 20171113 |
|
CF01 | Termination of patent right due to non-payment of annual fee |