CN101609563A - 一种三维模型形状特征二叉树的构建方法 - Google Patents

一种三维模型形状特征二叉树的构建方法 Download PDF

Info

Publication number
CN101609563A
CN101609563A CNA2009101011619A CN200910101161A CN101609563A CN 101609563 A CN101609563 A CN 101609563A CN A2009101011619 A CNA2009101011619 A CN A2009101011619A CN 200910101161 A CN200910101161 A CN 200910101161A CN 101609563 A CN101609563 A CN 101609563A
Authority
CN
China
Prior art keywords
dimensional model
theta
phi
triangular plate
node
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.)
Pending
Application number
CNA2009101011619A
Other languages
English (en)
Inventor
章志勇
王勋
凌云
杨柏林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Gongshang University
Original Assignee
Zhejiang Gongshang University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang Gongshang University filed Critical Zhejiang Gongshang University
Priority to CNA2009101011619A priority Critical patent/CN101609563A/zh
Publication of CN101609563A publication Critical patent/CN101609563A/zh
Pending legal-status Critical Current

Links

Abstract

本发明一种三维模型形状特征二叉树的构建方法,现有的三维模型形状特征计算方法主要是将三维模型投影到各个方向上的一个平面上,获得三维模型的投影图像,通过计算投影图像的形状特征来获得三维模型的形状特征。本发明方法的具体步骤是:首先计算三维模型M的每个三角片的面积及总面积并计算三维模型所有顶点与中心的距离,对三维模型进行比例变化。其次划分三角片,映射所有元素到球面,把PRO(rmin,rmax)作为二叉树T根结点的球面投影图像。再次分别计算K结点的左右孩子结点的球面投影图像PRO(r1,r)和PRO(r,r2)。最后对二叉树T的所有结点包含的球面投影图像计算球面调和特征向量,得到三维模型M的特征二叉树。本发明可以对三维模型进行整体到局部的相似性比较,具有较好的准确性。

Description

一种三维模型形状特征二叉树的构建方法
技术领域
本发明属于三维模型检索技术领域,涉及一种三维模型形状特征二叉树的构建方法,采用本方法可以对构建三维模型的特征二叉树,使用该特征二叉树可以对三维模型进行累进相似性比较,获得相似性匹配的三维模型。
背景技术
随着三维技术的飞速发展,三维模型成为一种重要的信息资源,是信息交流和生产设计的重要手段,例如,在工业产品的设计、虚拟现实、计算机仿真、教育应用、三维游戏、影视动画等领域,三维模型都有着广泛地应用,三维模型的数量也增加极快。如何在大量已有的大量三维模型资源中高效地获取和重用已有的三维模型是一个亟需解决的重要问题。继文本、语音、图像等多媒体信息检索之后,基于内容的三维模型检索近几年来成为信息检索领域的一个非常有应用价值的应用领域。
计算三维模型的形状特征,通过比较三维模型之间的形状特征的相似性来获得三维模型的相似性。有效地表征三维模型的形状特征的方法具有较好的应用前景。目前存在一些三维模型形状特征的表征方法,例如将三维模型投影到各个方向上的一个平面上,获得三维模型的投影图像,通过计算投影图像的形状特征来获得三维模型的形状特征。本申请提出了一种新的三维模型形状特征表征方法,该方法能够较好的表征三维模型的形状特征,并且具有较好的准确性。
发明内容
本发明的目的在于提供一种三维模型形状特征二叉树的构建方法,该方法设定三维模型是采用三角网格进行表示。
本发明方法的具体步骤是:
步骤(1).计算三维模型M的每个三角片的面积Si,i=1,2,3…N,N为三维模型的三角片数量,并计算M的总面积 S = Σ i = 1 N S i ; 计算M所有三角片的中心坐标(xic,yic,zic),按公式1计算M的中心OC,其坐标值为(xoc,yoc,zoc);
x oc = Σ i = 1 N ( x ic × S i ) / N , y oc = Σ i = 1 N ( y ic × S i ) / N , z oc = Σ i = 1 N ( z ic × S i ) / N
步骤(2).以M的中心Oc为三维坐标系的坐标原点,计算三维模型所有顶点与Oc的距离,记与三维模型中心最大的距离为Dmax;对三维模型的所有顶点的坐标(xi,yi,zi)变换为(xi/Dmax,yi/Dmax,zi/Dmax);三维模型的每个三角片面积变换为S′i=Si/Dmax
步骤(3).如果M存在面积S′i>1/2000的三角片,那么这个三角片划分为6个子三角片,划分的具体方法是:三角片的三个顶点分别与三角形的中心相连,其连线的延长线与对边相交,三角片内的所有连线与延长线将三角片划分为6个子三角片;
如果划分后存在面积S″>1/2000的子三角片,那么采用相同的方法对这个子三角片进行三角片划分,直到进行三角片划分后的三维模型的所有三角片的面积都小于1/2000为止;设定进行三角片划分后的三维模型为M′,计算M′所有的三角片的中心点坐标,将三维模型M′的所有三角片的中心点和三角片的顶点一起作为三维模型M′的采样点集合P;
P={p|p是M的三角片的顶点|P是M的三角片的中心点}
P中的采样点p到Oc的距离称为顶点半径;
步骤(4).记L(p,Oc)是采样点集合P中的元素p到Oc的距离;P(r1,r2)是如下公式所示的集合:
P(r1,r2)={p|r1<L(p,Oc)≤r2,r1<r2}
r1、r2为大于零的实数
记半径为r2球面为Sr2,把Sr2球面按经纬线均匀划分,经度线的划分单位是5°,纬度线的划分单位是5°;划分后,Sr2球面被划分为一系列的经纬度网格,设定所有经纬网格的权值为0,然后把P(r1,r2)的所有元素按极坐标方向映射到球面Sr2上面,并且投影后的每个经纬网格的权值等于P(r1,r2)中映射到相应经纬网格内的所有顶点半径的最大值;把带有权值Sr2经纬度网格称为球面投影图像PRO(r1,r2);
步骤(5).设rmin和rmax分别是三维模型M′的采样点集合的最小顶点半径和最大顶点半径,把PRO(rmin,r,max)作为二叉树T根结点的球面投影图像。
步骤(6).设二叉树T的某个结点K包含集合P(r1,r2),它的球面投影图像为PRO(r1,r2),设r=(r1+r2)/2,把P(r1,r2)划分为两个子集P(r1,r)和P(r,r2),把P(r1,r)作为K结点的左孩子结点的集合,把P(r,r2)作为K结点的右孩子结点的集合,分别计算K结点的左右孩子结点的球面投影图像PRO(r1,r)和PRO(r,r2);从根节点开始,按步骤(5)进行递归集合划分。
步骤(7).对二叉树T的所有结点包含的球面投影图像计算球面调和特征向量SHD;球面调和特征向量SHD的计算如下列公式所示:
SH n ( θ , φ ) = Σ m = - n n a n , m Y n m ( θ , φ )
其中 a n , m = ∫ 0 2 π ∫ 0 π sin ( θ ) f ( θ , φ ) Y n m ( θ , φ ) dθdφ
Y n m ( θ , φ ) = ( 2 n + 1 ) ( n - m ) ! 4 π ( n + m ) ! P n m ( cos ( θ ) ) e imφ
SHD = { | | SH 1 ( θ , φ ) | | | | SH 0 ( θ , φ ) | | , | | SH 2 ( θ , φ ) | | | | SH 0 ( θ , φ ) | | , | | SH 3 ( θ , φ ) | | | | SH 0 ( θ , φ ) | | , . . . , | | SH n ( θ , φ ) | | | | SH 0 ( θ , φ ) | | }
其中,θ是球面投影图像的经度数,φ是球面投影图像的纬度数,n=1,2,3…,m=±1,±2,±3...±n,Pn m(x)是拉格朗日多项式。
二叉树T的每个结点的球面投影图像采用步骤(7)的方法计算SHD,得到三维模型M的特征二叉树。
本方法通过对三维模型采用一组同心球进行划分,得到不同部分在球面上的投影图像,然后计算投影图像的球面调和特征向量。将这组同心球根据划分的层次构建一颗保存了三维模型形状特征的二叉树,这样得到了三维模型的形状特征二叉树。该特征二叉树可以对三维模型进行整体到局部的相似性比较,具有较好的准确性。
具体实施方式
一种三维模型形状特征二叉树的构建方法,该方法的具体步骤是:
步骤(1).计算三维模型M的每个三角片的面积Si,i=1,2,3…N,N为三维模型的三角片数量,并计算M的总面积 S = Σ i = 1 N S i ; 计算M所有三角片的中心坐标(xic,yic,zic),按公式1计算M的中心OC,其坐标值为(xoc,yoc,zoc);
x oc = Σ i = 1 N ( x ic × S i ) / N , y oc = Σ i = 1 N ( y ic × S i ) / N , z oc = Σ i = 1 N ( z ic × S i ) / N
步骤(2).以M的中心Oc为三维坐标系的坐标原点,计算三维模型所有顶点与Oc的距离,记与三维模型中心最大的距离为Dmax;对三维模型的所有顶点的坐标(xi,yi,zi)变换为(xi/Dmax,yi/Dmax,zi/Dmax);三维模型的每个三角片面积变换为S′i=Si/Dmax
步骤(3).如果M存在面积S′i>1/2000的三角片,那么这个三角片划分为6个子三角片,划分的具体方法是:三角片的三个顶点分别与三角形的中心相连,其连线的延长线与对边相交,三角片内的所有连线与延长线将三角片划分为6个子三角片;
如果划分后存在面积S″>1/2000的子三角片,那么采用相同的方法对这个子三角片进行三角片划分,直到进行三角片划分后的三维模型的所有三角片的面积都小于1/2000为止;设定进行三角片划分后的三维模型为M′,计算M′所有的三角片的中心点坐标,将三维模型M′的所有三角片的中心点和三角片的顶点一起作为三维模型M′的采样点集合P;
P={p|p是M的三角片的顶点|P是M的三角片的中心点}
P中的采样点p到Oc的距离称为顶点半径;
步骤(4).记L(p,Oc)是采样点集合P中的元素p到Oc的距离;P(r1,r2)是如下公式所示的集合:
P(r1,r2)={p|r1<L(p,Oc)≤r2,r1<r2}
r1、r2为大于零的实数
记半径为r2球面为Sr2,把Sr2球面按经纬线均匀划分,经度线的划分单位是5°,纬度线的划分单位是5°;划分后,Sr2球面被划分为一系列的经纬度网格,设定所有经纬网格的权值为0,然后把P(r1,r2)的所有元素按极坐标方向映射到球面Sr2上面,并且投影后的每个经纬网格的权值等于P(r1,r2)中映射到相应经纬网格内的所有顶点半径的最大值;把带有权值Sr2经纬度网格称为球面投影图像PRO(r1,r2);
步骤(5).设rmin和rmax分别是三维模型M′的采样点集合的最小顶点半径和最大顶点半径,把PRO(rmin,r,max)作为二叉树T根结点的球面投影图像。
步骤(6).设二叉树T的某个结点K包含集合P(r1,r2),它的球面投影图像为PRO(r1,r2),设r=(r1+r2)/2,把P(r1,r2)划分为两个子集P(r1,r)和P(r,r2),把P(r1,r)作为K结点的左孩子结点的集合,把P(r,r2)作为K结点的右孩子结点的集合,分别计算K结点的左右孩子结点的球面投影图像PRO(r1,r)和PRO(r,r2);从根节点开始,按步骤(5)进行递归集合划分。在本方法中,递归次数为3。
步骤(7).对二叉树T的所有结点包含的球面投影图像计算球面调和特征向量SHD;球面调和特征向量SHD的计算如下列公式所示:
SH n ( θ , φ ) = Σ m = - n n a n , m Y n m ( θ , φ )
其中 a n , m = ∫ 0 2 π ∫ 0 π sin ( θ ) f ( θ , φ ) Y n m ( θ , φ ) dθdφ
Y n m ( θ , φ ) = ( 2 n + 1 ) ( n - m ) ! 4 π ( n + m ) ! P n m ( cos ( θ ) ) e imφ
SHD = { | | SH 1 ( θ , φ ) | | | | SH 0 ( θ , φ ) | | , | | SH 2 ( θ , φ ) | | | | SH 0 ( θ , φ ) | | , | | SH 3 ( θ , φ ) | | | | SH 0 ( θ , φ ) | | , . . . , | | SH n ( θ , φ ) | | | | SH 0 ( θ , φ ) | | }
其中,θ是球面投影图像的经度数,φ是球面投影图像的纬度数,n=1,2,3…,m=±1,±2,±3…±n,Pn m(x)是拉格朗日多项式。
在本方法中,特征向量SHD的n=10。
二叉树T的每个结点的球面投影图像采用步骤(7)的方法计算SHD,得到三维模型M的特征二叉树。

Claims (1)

1.一种三维模型形状特征二叉树的构建方法,其特征在于该方法的具体步骤是:
步骤(1).计算三维模型M的每个三角片的面积Si,i=1,2,3…N,N为三维模型的三角片数量,并计算M的总面积 S = Σ i = 1 N S i ; 计算M所有三角片的中心坐标(xic,yic,zic),按公式1计算M的中心OC,其坐标值为(xoc,yoc,zoc);
x oc = Σ i = 1 N ( x ic × S i ) / N , y oc = Σ i = 1 N ( y ic × S i ) / N , z oc = Σ i = 1 N ( z ic × S i ) / N
步骤(2).以M的中心Oc为三维坐标系的坐标原点,计算三维模型所有顶点与Oc的距离,记与三维模型中心最大的距离为Dmax;对三维模型的所有顶点的坐标(xi,yi,zi)变换为(xi/Dmax,yi/Dmax,zi/Dmax);三维模型的每个三角片面积变换为S′i=Si/Dmax
步骤(3).如果M存在面积S′i>1/2000的三角片,那么这个三角片划分为6个子三角片,划分的具体方法是:三角片的三个顶点分别与三角形的中心相连,其连线的延长线与对边相交,三角片内的所有连线与延长线将三角片划分为6个子三角片;
如果划分后存在面积S″>1/2000的子三角片,那么采用相同的方法对这个子三角片进行三角片划分,直到进行三角片划分后的三维模型的所有三角片的面积都小于1/2000为止;设定进行三角片划分后的三维模型为M′,计算M′所有的三角片的中心点坐标,将三维模型M′的所有三角片的中心点和三角片的顶点一起作为三维模型M′的采样点集合P;
P={p|p是M的三角片的顶点|P是M的三角片的中心点}
P中的采样点p到Oc的距离称为顶点半径;
步骤(4).记L(p,Oc)是采样点集合P中的元素p到Oc的距离;P(r1,r2)是如下公式所示的集合:
P(r1,r2)={p|r1<L(p,Oc)≤r2,r1<r2},r1、r2为大于零的实数
记半径为r2球面为Sr2,把Sr2球面按经纬线均匀划分,经度线的划分单位是5°,纬度线的划分单位是5°;划分后,Sr2球面被划分为一系列的经纬度网格,设定所有经纬网格的权值为0,然后把P(r1,r2)的所有元素按极坐标方向映射到球面Sr2上面,并且投影后的每个经纬网格的权值等于P(r1,r2)中映射到相应经纬网格内的所有顶点半径的最大值;把带有权值Sr2经纬度网格称为球面投影图像PRO(r1,r2);
步骤(5).设rmin和rmax分别是三维模型M′的采样点集合的最小顶点半径和最大顶点半径,把PRO(rmin,rmax)作为二叉树T根结点的球面投影图像;
步骤(6).设二叉树T的某个结点K包含集合P(r1,r2),它的球面投影图像为PRO(r1,r2),设r=(r1+r2)/2,把P(r1,r2)划分为两个子集P(r1,r)和P(r,r2),把P(r1,r)作为K结点的左孩子结点的集合,把P(r,r2)作为K结点的右孩子结点的集合,分别计算K结点的左右孩子结点的球面投影图像PRO(r1,r)和PRO(r,r2);从根节点开始,按步骤(5)进行递归集合划分;
步骤(7).对二叉树T的所有结点包含的球面投影图像计算球面调和特征向量SHD;球面调和特征向量SHD的计算如下列公式所示:
SH n ( θ , φ ) = Σ m = - n n a n , m Y n m ( θ , φ )
其中 a n , m = ∫ 0 2 π ∫ 0 π sin ( θ ) f ( θ , φ ) Y n m ( θ , φ ) dθdφ
Y n m ( θ , φ ) = ( 2 n + 1 ) ( n - m ) ! 4 π ( n + m ) ! P n m ( cos ( θ ) ) e imφ
SHD = { | | SH 1 ( θ , φ ) | | | | SH 0 ( θ , φ ) | | , | | SH 2 ( θ , φ ) | | | | SH 0 ( θ , φ ) | | , | | SH 3 ( θ , φ ) | | | | SH 0 ( θ , φ ) | | , · · · , | | SH n ( θ , φ ) | | | | SH 0 ( θ , φ ) | | }
其中,θ是球面投影图像的经度数,φ是球面投影图像的纬度数,n=1,2,3…,m=±1,±2,±3…±n,Pn m(x)是拉格朗日多项式;
二叉树T的每个结点的球面投影图像采用步骤(7)的方法计算SHD,得到三维模型M的特征二叉树。
CNA2009101011619A 2009-07-27 2009-07-27 一种三维模型形状特征二叉树的构建方法 Pending CN101609563A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNA2009101011619A CN101609563A (zh) 2009-07-27 2009-07-27 一种三维模型形状特征二叉树的构建方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNA2009101011619A CN101609563A (zh) 2009-07-27 2009-07-27 一种三维模型形状特征二叉树的构建方法

Publications (1)

Publication Number Publication Date
CN101609563A true CN101609563A (zh) 2009-12-23

Family

ID=41483309

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2009101011619A Pending CN101609563A (zh) 2009-07-27 2009-07-27 一种三维模型形状特征二叉树的构建方法

Country Status (1)

Country Link
CN (1) CN101609563A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102411794A (zh) * 2011-07-29 2012-04-11 南京大学 一种基于球谐变换的三维模型的二维投影的输出方法
CN104715495A (zh) * 2015-02-04 2015-06-17 浙江工商大学 基于用户指定误差精度的三维模型传输方法
CN106327524A (zh) * 2016-08-31 2017-01-11 上海交通大学 一种快速流体图像表面追踪方法
CN106469216A (zh) * 2016-09-07 2017-03-01 北京拓扑视景科技有限公司 一种三维模型检索方法及装置
CN107240138A (zh) * 2017-05-25 2017-10-10 西安电子科技大学 基于样本二叉树字典学习的全色遥感图像压缩方法
CN108875936A (zh) * 2018-06-11 2018-11-23 上海理工大学 求解三维空间内任意两个多面体间的最近距离的方法
CN110019898A (zh) * 2017-08-08 2019-07-16 航天信息股份有限公司 一种动漫图像处理系统

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102411794A (zh) * 2011-07-29 2012-04-11 南京大学 一种基于球谐变换的三维模型的二维投影的输出方法
CN102411794B (zh) * 2011-07-29 2013-11-06 南京大学 一种基于球谐变换的三维模型的二维投影的输出方法
CN104715495A (zh) * 2015-02-04 2015-06-17 浙江工商大学 基于用户指定误差精度的三维模型传输方法
CN106327524A (zh) * 2016-08-31 2017-01-11 上海交通大学 一种快速流体图像表面追踪方法
CN106327524B (zh) * 2016-08-31 2019-04-02 上海交通大学 一种快速流体图像表面追踪方法
CN106469216A (zh) * 2016-09-07 2017-03-01 北京拓扑视景科技有限公司 一种三维模型检索方法及装置
CN106469216B (zh) * 2016-09-07 2019-06-25 北京拓扑视景科技有限公司 一种三维模型检索方法及装置
CN107240138A (zh) * 2017-05-25 2017-10-10 西安电子科技大学 基于样本二叉树字典学习的全色遥感图像压缩方法
CN107240138B (zh) * 2017-05-25 2019-07-23 西安电子科技大学 基于样本二叉树字典学习的全色遥感图像压缩方法
CN110019898A (zh) * 2017-08-08 2019-07-16 航天信息股份有限公司 一种动漫图像处理系统
CN108875936A (zh) * 2018-06-11 2018-11-23 上海理工大学 求解三维空间内任意两个多面体间的最近距离的方法
CN108875936B (zh) * 2018-06-11 2020-12-25 上海理工大学 求解三维空间内任意两个多面体间的最近距离的方法

Similar Documents

Publication Publication Date Title
CN101609563A (zh) 一种三维模型形状特征二叉树的构建方法
CN106777822B (zh) 二维高含量颗粒增强复合材料三相细观模型及建立方法
CN110580376A (zh) 一种基于Revit和Dynamo的桩基础模型创建方法
CN102411794B (zh) 一种基于球谐变换的三维模型的二维投影的输出方法
CN112749244A (zh) 基于虚幻引擎的数字孪生城市空间坐标系实现方法、装置及存储介质
CN108981734A (zh) 电子地图道路拓展方法、装置、电子设备及存储介质
CN103489211A (zh) 基于三维仿真模型的人员定位跟踪的方法及系统
CN102768767B (zh) 刚体在线三维重建与定位的方法
CN106547724A (zh) 基于最小点集的欧式空间坐标转换参数获取方法
CN105741340B (zh) 一种用于网页展示的输电线路三维场景仿真方法和系统
CN107180409A (zh) 一种针对弯曲骨架型对象三维点云的广义圆柱投影方法
CN107102991A (zh) 一种三维gis系统中的杆塔参数化建模方法
CN103337091A (zh) 一种基于厚度的柔性场景连续碰撞检测方法
CN102693350B (zh) 面向虚拟现实牙科操作训练的多点接触力觉反馈系统
CN102810215B (zh) 一种铁路三维中心线的生成方法
CN102253862B (zh) 一种基于SIMD的k-DOP包围盒碰撞检测方法
CN103324784A (zh) 一种基于局部约束的网格模型碰撞处理方法
CN109166173B (zh) 基于bim的多精度三维测绘数据融合方法
CN103123668B (zh) 一种基于混合单元法的空间绳系机器人系统的仿真方法
CN116956619A (zh) 一种轻量级环境下的土木工程模型虚拟装配方法
CN109147057A (zh) 一种面向穿戴式触觉设备的虚拟手碰撞检测方法
CN104112375A (zh) 一种虚拟微创手术训练系统
CN102096946A (zh) 全球六边形离散格网上的矢量数据绘制方法
CN102393825B (zh) 一种基于非共面剔除的柔性场景连续碰撞检测方法
TWI406189B (zh) 點雲三角網格面構建方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20091223