没有合适的资源?快使用搜索试试~ 我知道了~
首页基于拉普拉斯收缩的三维模型骨架提取算法及其Matlab实现
基于拉普拉斯收缩的三维模型骨架提取算法及其Matlab实现

基于拉普拉斯收缩的三维模型骨架提取算法及其Matlab实现,冀伟杰,谢鑫,介绍了三维模型骨架的概念及其数学表达,介绍了几种常用三维模型骨架提取算法的原理及适用性。选择基于拉普拉斯收缩的三维模型骨
资源详情
资源评论
资源推荐

http://www.paper.edu.cn
- 1 -
中国科技论文在线
基于拉普拉斯收缩的三维模型骨架提取算
法及其 Matlab 实现
冀伟杰,谢鑫,阮班停
*
(拉萨市第一中等职业技术学校) 5
作者简介:冀伟杰(1992-),男,中学教师,初级职称,主要研究方向:计算机图形学;通讯作者,无指
导导师. E-mail: jiweijie163@163.com
摘要:介绍了三维模型骨架的概念及其数学表达,介绍了几种常用三维模型骨架提取算法的
原理及适用性。选择基于拉普拉斯收缩的三维模型骨架提取算法进行了详细介绍,并采用
matlab 软件编程进行了算法实现,首先将输入的网格或点云文件统一转换为 off 或 txt 格式;
然后构造每个点的单环邻域,并以此为依据进行几何收缩,得到零体积的点集;最后通过拓10
扑细化将点集细化成一维曲线,并进行对中性处理,从而得到三维模型的骨架。
关键词:三维模型;骨架提取;拉普拉斯收缩;Matlab
中图分类号:TH164
3D skeleton extraction algorithm via Laplace contraction 15
and its realization in Matlab
JI Weijie, Xie Xin, Ruan Banting
(First Secondary vocational technical school of Lasa)
Abstract: In this paper, the concept of 3D skeleton model is introduced. Principle and applicability of
several common 3D skeleton extraction algorithms are introduced. The 3D skeleton extraction 20
algorithm via Laplace contraction is selected for detailed introduction and programming realization in
Matlab software. Input mesh or point cloud file was transformed into *.off or *.txt file format firstly,
then 1-ring neighbors of every point were created for Laplace contraction to obtain zero-volume point
set, which was topologically thined into unidimensional curves and centralized to generate a 3D
skeleton finally. 25
Key words: 3D model; skeleton extraction; Laplace contraction; Matlab
0 引言
从 20 世纪五六十年代至今,随着计算机性能及网络带宽的飞速发展,作为继音频、图30
像、视频之后的第四代数字媒体正得到越来越广泛的应用,其中最主要的表现形式就是三维
模型
[1]
。近年来,三维模型在各行各业均得到了广泛应用,对计算机三维模型的研究已成为
计算机图形领域的热点之一
[2]
。
由于三维模型的信息量很大,使得在许多应用中出现了模型占用存储空间过大、运行计
算负载过重等问题,严重限制了它的发展与应用,所以需要一种“紧凑”的表示方式来尽可能35
完整、全面地描述三维模型的结构特征信息。其中最常用的一种方式就是利用物体的曲线骨
架来简化描述三维模型
[3]
。骨架是图形几何形态的一种拓扑描述,能够直观地反映构件的形
状和拓扑特征,近年来在对象识别与表示、工业零件检测、医学图像分析、三维数据压缩、
物体特征识别与跟踪、三维表面重建、自动导航及可视化等领域得到了广泛应用。
40

http://www.paper.edu.cn
- 2 -
中国科技论文在线
本文针对三维模型的骨架提取技术进行研究,介绍三维模型骨架的概念及其数学表达,
介绍常用三维模型骨架提取算法的原理与适用性,并选用基于拉普拉斯收缩的骨架提取算法
进行详细介绍与 matlab 软件实现。
1 三维模型及其骨架
1.1 三维模型的表现与存储形式 45
随着三维建模技术和三维模型获取技术的发展,出现了多种多样的三维模型表现与存储
形式,不同的表现形式各具优势,适用于不同的领域。当下,常见的三维模型表现形式有网
格模型、体素模型以及点云模型三种。
网格模型是指由多边形网格构成的三维表面模型,一般包括点坐标、颜色、材质、法向
量等信息。网格模型具有数据量小、处理简单、显示效果好等优点,因而成为主流的三维模50
型表现形式之一,在数字娱乐、三维动画、电子商务等领域得到了广泛应用。网格模型数据
表示形式如图 1 所示。常见的网格模型文件格式有 obj、off、stl、vrml、ply 等,常用的三维
建模软件(Solidworks、ProE、Catia、UG 等)都可以进行网格文件的读写。
图 1 Bunny 的多边形网格模型 55
Fig.1 Bunny’s polygonal mesh model
体素模型是指采用体素表示的三维模型,体素是体图形学(Volume Graphics)中的概
念,可以理解为像素单元的三维扩展。体素模型具有简单、稳定、无需拓扑信息等特点,被
广泛应用于医学成像、地形建模、CSG 实体造型以及碰撞检测等领域。体素模型数据表示
形式如图 2 所示。 60
图 2 Robot 的多边形网格模型
Fig.2 Robot’s voxel model
点云模型是用一系列给定坐标值的点来表示三维几何模型的表面信息,这些点的坐标值
通常通过三维扫描获得。点云模型通过海量的数据点可以表达丰富、精细的模型信息,而且65

http://www.paper.edu.cn
- 3 -
中国科技论文在线
无需拓扑信息,点云模型被广泛应用于虚拟现实、三维重建、文物保护等领域。点云模型数
据表示形式如图 3 所示。常见的点云模型文件格式有 txt、las、xyz 等。
图 3 Head 的点云模型
Fig.3 Head’s point cloud model 70
1.2 三维模型骨架的概念及其数学表达
关于骨架的概念,最早是由美国学者 Blum
[4]
在 1967 年提出的烧草模型(Grass Fire
Model),如图 4(a)所示:从模型表面开始点火,火源燃烧速度相同,各个方向上的火的相遇
点所构成的集合即为模型骨架。1973 年,Blum
[5]
又提出一种更加直观的骨架模型:最大圆
盘模型(Maximal Disk Model),如图 4(b)所示:骨架是模型内部各个最大内切球中心的集合。 75
边界
火的锋面
骨架线
边界
火的锋面
骨架线
(a) 烧草模型
(b) 最大圆盘模型
图 4 骨架的两种模型
Fig.4 Two kind of skeleton models
三维曲线骨架即由三维空间中的一组曲线构成的模型骨架。假设存在一维空间
I
和 n 维
空间
X
,可将
I
到
X
的连续映射:
IX
定义为曲线
C
。在三维欧式空间中,则可用单一
参数 t 表示位于曲线
C
上的任意点
,,x y z
: 80
,,
x y z
x f t y f t z f t
(1)
这样便将三维坐标转化成了一维表达形式。
骨架可以是敞开的或闭合的,在其数学定义中,定义域为无穷,即它的圆弧长度为无穷。
但是,对于给定尺寸的三维模型来说,相应曲线骨架的尺寸也一定是有限的,其定义域为封
闭区间,即: 85
: , ,L l x t y t z t
,
,t a b
(2)
如果骨架曲线是封闭的,即存在
l a l b
,且
ab
,
la
和
lb
对应的骨架曲线点
为端点,曲线上与
,l t t a b
相对应的点为内部点。还存在一种特殊的曲线骨架形式——
孤立点,如球的骨架,这种骨架可被表示为
,l t t a a
。
剩余11页未读,继续阅读


















安全验证
文档复制为VIP权益,开通VIP直接复制

评论1