在计算机中如何表示三维人体模型

在计算机中如何表示三维人体模型
在计算机中如何表示三维人体模型

在计算机中如何表示三维人体模型

关于人体建模技术的研究始于20 世纪70 年代末。在目前研究领域中,常见的算法主要有曲面建模、基于物理特性建模和基于解剖学的分层建模方法[1]。曲面建模又称表面建模,这种建模方法的重点是由给出的离散数据点构成光滑过度曲面,使这些曲面通过或逼近这些离散点。为使三维人体动画仿真效果更佳,A.H.Barr 在1987 年提出了基于物理特性的建模思想,将人体的物理特性加入到其几何模型中,通过数值计算进行行为仿真。为了进一步体现人体生理结构的层次性,Chadwick et al.在1989 年提出了“人体分层表示法”的感念,在此基础上Thalmann et al.在1996 提出了一种更加高效的基于解剖学的分层建模算法来实现人体的建模与仿真。在研究java 3D 人体建模的过程中,本文用一种把java 3D 和人物造型软件Poser 结合起来的方便办法。在获取人体曲面数据阶段通过对三维图形软件导出的3DS 文件研究的基础上获得java 3D 建模所需的人体表面顶点数据,避免了使用现代自测量工具所需耗费的财力物力,最终通过java 3D

建立人体模型实现环境渲染和交互控制,为进一步的实现动态修改人体模型打下基础。2.Java 3D 简介Java 最大的特点在于它的平台无关性,在Windows 95/98,Windows NT,Solars,Unix 等平台上,都使用相同的代码,Java 实现了"Write once, Run anywhere"。Java 的平台无关性使其特别适合于互联网环境下编写应用程序。Java3D 是适用于网络环境的跨平台的三维图形开发工具包,是Java 2 JDK 的标准扩展的一组API(Application Programming Interface)[2],对底层的图形库OpenGL 和DirectX 进行了封装,更容易掌握,编程效率更高,保证高效的执行效率。Java3D 封装了大量的类,编写Java3D 程序时,大多情况下只需找到所需的类并加以应用。和其它Java 程序一样,利用Java3D 可以编写Application 程序和Applet 程序,用来生成三维场景的Applet 可以方便的从服务器传送到客户端,然后在客户端运行,具有优良的可传输性。

支持简单的脚本控制场景与用户的交互行为。Java3D 则是Java 语言在三维应用的扩展,Java3D的功能和可编程性更强,Java3D 有丰富的Java 类库的支持,实现各种编程行为,这是VRML 难以达到的。

3.人体曲面建模

人体曲面建模有两个关键的步骤:人体曲面数据的获取和在这些数据的基础上的曲面建模方法的确定。在曲面数据获取方面本节主要分析了传统第1 期陈君:一种构建三维人体模型的方法37测量方法的缺陷并介绍了现代先进的自动测量方法;在曲面建模方法方面本节通过分析了NURBS曲面的优缺点,采用了较简单的曲面三角面逼近的三

维人体建模方法。3.1 人体数据获取

人体曲面数据的获取是建立三维人体模型的前提,也是一项基础性的工作。人体形状为复杂的曲面,要对其进行较为精确的测量并获得全面细致的人体数据是很困难的。为了建立统一的测量方法,常根据明显、固定、意测的特点,选取骨骼端

点、突起点和肌肉沟槽等部位作为测量基准。传统的人体测量方法主要采用软尺、测高计、滑动计等手工工具,依据测量基准对人体进行测量,工具简单,方法简便,可以获得较细致的人体数据,但这种传统测量方法在精确性等方面存在很多的缺陷,随着服装CAD 技术的普及和深入,落后的人体测量技术已经成为一个制约因素。因此,国内外出现了很多先进的以现代光学为基础,融光电子学、计算机图像学、信息处理、计算机视觉等科学技术为一体的三维人体自动测量方法[3]。主要有光学图像法(干涉法、莫尔法、相位法等)和基于图像传感器的光电法。与传统的测量方法相比,三维人体自动测

量方法主要特点是快速、准确、效率高等[4]。

3.2 曲面三角面逼近的三维人体建模

在三维人体建模中运用的最多的就是曲面建模,其中NURBS 曲线曲面由于最具一般性及其突出的优点,已经成为曲面建模的工业标准,被广泛用在人体曲面造型中[5]。但是NURBS 曲面建模的算法比较复杂,而且要考虑间隙差值运算、光滑拼接等问题,总的来说是一种很复杂的人体建模方法。而采用三角形作为基元面构成物体表面的算法相对简单,只是所需处理的数据量比较大,对计算机的内存容量和相应速度要求比较高。但是随着计算机技术的飞速发展,再加上java 3D 对三角小平面处理的优化,这一问题已经得到很好地解决。空间三角剖分是以平面三角剖分算法为基础,由平面点扩展到三维空间散乱数据点。空间三角剖分可分为对三维散乱数据投影域的剖分和在空间直接剖分两种[6]。然而当那些散乱的数据有一定规律的时候,或者经过我们的预处理,变的比较有规律的时候,比如三维人体的躯干、手臂和大小腿等部分,其基本形状为圆柱体,其上顶点分布比较有规律,我们就可以采用一种简单的空间数据点三角剖分方法,实现由二维轮廓线到三维人体的重构[7]。它的基本思想是:在人体表面作横向截面线,当截面线比较密集的时候,假设两条相邻的横向截面轮廓线如下图2,上轮廓线上的点列为P0,P1,…,Pm-1;下轮廓线上的点列为Q0,Q1,…,Qn-1。点列均按逆时针方向排列。如果将上述点列分别依次用直线连接起来,则得到这两条轮廓线的多边形近似表示。每一个直线段P Pi i+1 或QQi i+1称为轮廓线线段。如图2 所示,连接上轮廓线上一点与下轮廓线上一点的线段称为跨距。很显然,一条轮廓线线段,以及将该线段两端点与相邻轮廓线上的一点相连的两段跨距构成了一个三角面片,成为基本三角面。而该两段跨距则分别成为左跨距和右跨距。实现对所有数据点的三角剖分就是要用一系列的互相连接的基本三角面将所有相邻的二维轮廓线连接起来。H.Fuchs 指出[8],连接上、下两条轮廓线上各点所形成的众多基本三角面必须满足以下两个条件:(1)每一个轮廓线线段必须而且只能在一个基本三角面片中出现;(2)如果一个跨距在某一基本三角面中为左跨距,则该跨距是而且仅是另一个基本三角面片的右跨距。

图1 相邻轮廓线间三角剖分

用最短对角线法实现轮廓线间三角面片连接的近似最优解。如图2 所示,设上轮廓线为P,下轮廓线为Q,不失一般性,设Q 上距Pi 点最近的点为Qj,则以跨距P Q i j为基础用最短对角线法来构造两轮廓线间的三角面片。如对角线P Q i j +1<P Q i +1 j,则连接Pi,Qj+1,形成三角面片QjPiQj+1,否则,连接Pi+1,Qj。这就是最短对角线方法的基本原理。图2 最短对角线法示意图4.Java 3D 人体模型实现在实现人体建模的过程中,为了更好的运用空间数据点的三角剖分方法,我们根据人体的生理形武汉科技学院学报2009 年38

态特征,将人体分成头、颈、躯干等19 个部分。首先从3DS 文件中读取人体各个部件曲面的顶点信息以数组的形式存储起来,应用IndexedTriangleArray 类实现数据点三角剖分,最后利用Java 3D 强大的三维显示和处理功能实现人体的显示和交互控制。

4.1 人体源数据文件

在本课题的研究过程中,选择了一种非常简单方便的获取人体曲面数据的方法。通过研究分析Poser 软件导出的3DS 文件结构,获取有用的人体曲面顶点信息。Poser 是一款非常优秀的三维人体造型专用软件,它附带了很多标准的人体模型库,因此,可以将这些标准人体模型文件里的有用人体曲面坐标信息提取出来,以作为人体建模研究的数据。3DS 文件是基于“块”存储的,这些块描述了诸如场景、每个编辑窗口(Viewport)的状态、材质、网格等[9]。每个块都包含一个ID 和块长度的块头,如果对该块的信息不感兴趣的话,可以直接跳过该块读取下一个块。跟许多文件格式类似,为了读取的方便,3DS 文件中数据的存储方式是Intel 式的,也就是说是高位放在后面,低位放在前面。比如:网

格块的块头ID,0x4000 在文件里是以00 40存放的,占用两个Byte。

每1 个3DS 文件的开头都是由1 个根块构成,其ID 是0x4d4d。根块内的块称为主块,主块共有2 种,分别为3D 主编辑块和关键帧块,前者的ID为3D3D,后者的ID 为B000。3D 主编辑块是编辑程序数据的开始,即物体形体数据定义的开始。主块后面是该主块所包括的子块。3D 主编辑块的子块包括材质列表块、物体块等。而物体块又包括了网格块、亮度信息块、相机参数块等。网格块包括顶点列表块、面信息块、位置信息块等。这几个层次的数据块结构定义了物体的拓扑信息。同样材质列

表块则包含了材质的名称、环境光、散射光、反射光等物体的材质信息。3DS 主要文件结构如图3 所示:

图3 3DS 文件结构图

对3DS 文件结构了解后,下面介绍本论文三维人体建模所要用到的细节信息。0x4D4D:文件头,他的大小就是整个文件的大小。0x3D3D:3D 编辑块,描述了3D 对象的数据。本课题所需数据就是从这个块中获取。0x4000:该块是一个对象描述块,该块中就包含了顶点列表块0x4110。见表1:表1 顶点列表块

数据类型大小名称

Unsigned Short 2 字节顶点数目

Float 4 字节X 坐标

Float 4 字节Y 坐标

Float 4 字节Z 坐标

其中X、Y、Z 一直重复顶点数目次,这样就的到所有顶点。

在本论文程序中,我们只需要提取人体曲面顶点信息,因此,我们可以忽略其他很多无关块的大量信息,这不会影响对所需信息的提取,这是因为3DS 文件块结构的格式可以让我们跳过很多块而

不影响对其他块的信息的读取。

4.2 编程步骤

4.2.1 建立工程,导入所需包

程序中用到的主要包介绍:Javax.media.j3d 该包是java 3D 的主要包,为java 3D API 提供核心的集合类。Javax.vecmath 该包含有对java 3D 很有用的对象类,这是一些关于向量,矩阵和其他数学对象的类。Com.sun.j3d.utils.universe,com.sun.j3d.utils. geometry尽管com.sun.j3d.*包并非java 3D 的核心包,但是这两个包却包含许多可以用来方便地构造基元、视图和java 3D 中其他对象的功能类。

4.2.2 IndexedTriangleArray 类实现数据点三角剖分

在本程序中,根据人体对称性将三维人体分为头、颈、胸、腹、上臂、下臂part1-part19 等19 个部分分别运用IndexedTriangleArray 类实现三维重构。IndexedTriangleArray 类的构造函数如下[10]:IndexedTriangleArray (int vertexCount, intvertexFormat, int indexCount)。参数介绍:vertexCount: IndexedTriangleArray类的对象中包含的总的顶点数。vertexFormat: 表是这些顶点的格式,是一个多选项。其中,COORDINATES:表示在该GeometryArray数组中包含顶点的坐标,并且该项是一个必选项;NORMALS: 表示包含每个顶点的法向量;COLOR_3 或COLOR_4:表示每个顶点的颜色,COLOR_3表示没有Alpha 信息,也就是指顶点数组包括没有透明度的颜色;当不指定COLOR_3 或者COLOR_4 顶点格式颜色时,则GeometryArray 对象中的每个顶第1 期陈君:一种构建三维人体模型的方法39点的颜色都是黑色;TEXTURE_ COORDINATE_3,表示每个顶点的3D 纹理坐标。indexCount:该参数是指从总的顶点数中选择出的顶点总数,允许顶点重复使用,允许indexCount 超过vertexCount 的值。用该类时,首先需要根据给定的的

顶点的一维数组的序号,建立要用到的顶点的索引数组index,该数组是一个一维数组,每个元素保存选择出的一个顶点的元素序号。然后再用继承自IndexedGeometryArray 的方法setColorIndices(0,index)、setCoordinateIndices(0,index)分别设置颜色、坐标数组与索引数组之间的对应关系。对应本程序,以第4 部分小腿部分为例,定义floatvert[]数组存放由分析3DS 文件得出的顶点坐标,定义float normals[]数组存放顶点的法向量,定义int index[]数组存放用到的顶点编号。具体程序实现如下:IndexedTriangleStripArray line = new

IndexedTriangle

StripArray(vert.length,IndexedTriangleStripArr

ay.COORDINATES|IndexedTriangleStripArray.NORMA

LS|IndexedTriangleStripArray.COLOR_3,

index.length,count);

4.2.3 对三维模型进行交互控制

三维图形的几何变换矩阵可以用矩阵T3D表示,

表示形式如下[11]:

产生比例、旋转等几何变换;[a41 a42 a43]产生平移变换。

Java 3D包含了Transform3D类来表示3D放射变换或投影变换。在场景图中,一个TransformGroup

节点利用Transform3D对象来定义其变换Transform3D在其内部保留了一个4*4的double 型矩阵以表示其变换。本程序中,通过调用voidsetTranslation()方法建立平移变换,调用voisetScale()方法建立缩放变换。并通过鼠标行为类MouseZoom、MouseRotate和MouseTranslate,实现鼠标对3D人体模型交互控制。

4.2.3 最终显示结果图4 最终效果

5.结论

应用本文方法开发出的三维人体展示系统,既利用了Poser 建立人体模型方便快捷的特点,又利用了java 3D 容易实现渲染和交互的特点,避免了各自的缺陷,使真实感人体人体建模能更轻松。在本文的基础上可以进一步进行NURBS 曲面拟合,实现面向真实人体着装的需要,输入服装用的人体尺寸,修改相应的主要造型特征与尺寸,得到特定用户所需的个性化人体模型。在服装CAD 领域有着良好的前景和广阔的发展空间。

人体三维模型解读

三维人体建模 摘要:对当今广为应用的线框模型、体模型和曲面模型等传统的三维人体建模方法进行了研究和分析,本文通过对三维人体建模的介绍,它的发展现况以及它对服装行业的影响,来阐述三维人体建模。 关键词:人体建模,发展,影响

目录 一:人体(三维)建模定义和内涵 1.1.三维模型(定义) 1.2.三维模型的构成 1.3.构建三维模型的方法 1.4.人体三维建模(定义) 二:人体建模发展现状 2.1.“3D人体扫描仪介绍” 2.2.主要人体三维扫描仪3D CaMega DCS系列(人体数字化系统)三:对服装产业的影响意义 3.1.三维服装仿真中的参数化人体建模技术 3.2.3D试衣系统中个性化人体建模方法 3.3.服装CAD中三维人体建模方法综述 四.文献来源

一:人体(三维)建模定义和内涵 1.1.三维模型(定义) 是物体的多边形表示,通常用计算机或者其它视频设备进行显示。显示的物体是可以是现实世界的实体,也可以是虚构的物体。任何物理自然界存在的东西都可以用三维模型表示。 1.2.三维模型的构成

(1)网格网格是由物体的众多点云组成的,通过点云形成三维模型网格。点云包括 三维坐标、激光反射强度和颜色信息,最终绘制成网格。这些网格通常由三角形、四边形或者其它的简单凸多边形组成,这样可以简化渲染过程。但是,网格也可以包括带有空洞的普通多边形组成的物体。 (2)纹理纹理既包括通常意义上物体表面的纹理即使物体表面呈现凹凸不平的沟纹, 同时也包括在物体的光滑表面上的彩色图案,也称纹理贴图,当把纹理按照特定的方式映射到物体表面上的时候能使物体看上去更真实。纹理映射网格赋予图象数据的技术;通过对物体的拍摄所得到的图像加工后,再各个网格上的纹理映射,最终形成三维模型。 1.3.构建三维模型的方法 目前物体的建模方法,大体上有三种:第一种方式利用三维软件建模;第二种方式通过仪器设备测量建模;第三种方式利用图像或者视频来建模。 三维软件建模目前,在市场上可以看到许多优秀建模软件,比较知名的有 3DMAX,SoftImage, Maya,UG以及AutoCAD等等。它们的共同特点是利用一些基本的几何元素,如立方体、球体等,通过一系列几何操作,如平移、旋转、拉伸以及布尔运算等来构建复杂的几何场景。利用建模构建三维模型主要包括几何建模(Geometric Modeling)、行为建模(KinematicModeling)、物理建模(Physical Modeling)、对象特性建模(Object Behavior)以及模型切分(Model Segmentation)等。其中,几何建模的创建与描述,是虚拟场景造型的重点。 仪器设备建模三维扫描仪(3 Dimensional Scanner)又称为三维数字化仪(3 Dimensional Digitizer)。它是当前使用的对实际物体三维建模的重要工具之一。它能快速方便的将真实世界的立体彩色信息转换为计算机能直接处理的数字信号,为实物数字化提供了有效的手段。它与传统的平面扫描仪、摄像机、图形采集卡相比有很大不同:首先,其扫描对象不是平面图案,而是立体的实物。其次,通过扫描,可以获得物体表面每个采样点的三维空间坐标,彩色扫描还可以获得每个采样点的色彩。某些扫描设备甚至可以获得物体内部的结构数据。而摄像机只能拍摄物体的某一个侧面,且会丢失大量的深度信息。最后,它输出的不是二维图像,而是包含物体表面每个采样点的三维空间坐标和色彩的数字模型文件。这可以直接用于CAD或三维动画。彩色扫描仪还可以输出物体表面色彩纹理贴图。早期用于三维测量的是坐标测量机(CMM)。它将一个探针装在三自由度(或更多自由度)的伺服装置上,驱动探针沿三个方向移动。当探针接触物体表面时,测量其在三个方向的移动,就可知道物体表面这一点的三维坐标。控制探针在物体表面移动和触碰,可以完成整个表面的三维测量。其优点是测量精度高;其缺点是价格昂贵,物体形状复杂时的控制复杂,速度慢,无色彩信息。人们借助雷达原理,发展了用激光或超声波等媒介代替探针进行深度测量。测距器向被测物体表面发出信号,依据信号的反射时间或相位变化,可以推算物体表面的空间位置,称为“飞点法”或“图像雷达”。

三维布线

Proe5.0布线入门 一、连接器 (2) 二、布线的简单介绍 (4) 1、名词解释 (4) 2、布线的操作步骤 (5) 三、布线实例 (8) 1、单芯电缆的布线 (8) 2、多芯电缆的布线 (15) 3、扁平线的布线 (23)

一、连接器 在我们用到的电缆中,大体可以分为3类,即单芯电缆、多芯电缆和扁平线,在proe布线模块中也是这样分类的。在没有布线之前先看一下连接器,因为proe布线就是将要布置的线缆先与连接器连接,然后布置路径。所谓连接器就是常说的端子、开关、接触器、变压器等接线的零件。设计连接器模型时,不仅要满足外形要求,还要满足连接器的布线要求。有什么样的要求呢?简单来讲就是要在接线端口处加一个坐标系,而且z轴方向朝外,如图1-1,因为proe 中线缆是通过坐标系的z轴进入连接器的。 图1-1 端子接线端口处创建一个坐标系,且z轴朝外。 再说一下,三种电缆与proe中坐标系的关系: 1、单芯电缆:通过z轴进入连接器,所以z轴一定要朝外,否则线就会接反。 图1-2、z轴朝外,方向正确

图1-3、z轴朝里,方向反向 2、多芯电缆:各电缆也是通过z轴进入连接器,均布在z轴周围。z轴一定要朝外,否则也会方向。 图1-4、电缆均布在z轴周围 3、扁平线:同样各根线也是通过z轴进入连接器,沿着y轴方向展开。z轴一定要朝外,y轴朝着扁平线的方向。 图1-5、扁平线沿y轴分布 其他类型的连接器,建完模型后都要在接线口处创建坐标系。坐标系的创建不再啰嗦,一定要把方向弄对。如图1-6。

图1-6、其他连接器建立坐标系时,z轴和y轴的方向一定要正确 二、布线的简单介绍 1、名词解释 布线之前还有一点要说的就是,proe中的一些名词,假如是第一次接触布线模块可能会感觉有些乱,可以简单的看一下,了解了解一些命令都在哪里,然后跟着第三部分的实例自己去做做,等都做完后,再回来仔细看,就会恍然大悟。所以该模块的学习,跟其他模块一样,要反复学习,多运用,才能更好掌握。 首先要注意的是,布线模块的中文翻译很不准确,只看中文会感到莫名其妙,不知所云,所以要将菜单管理器设置成中英文或全英文的。 在config文件中加入menu_translation both (1)harness 是指多跟电缆的组合,proe中翻译为线束,就如part翻译为零件一样。Harness在proe中是作为一个零件来看待的,后缀为“.prt”。很多特征

浅谈三维建模技术的研究与应用

浅谈三维建模技术的研究与应用 兰文涛 新疆油田公司风城油田作业区 摘要:以应用为主的三维地理信息系统模型,通过Skyline TerraExplorer Pro和3ds Max模型制作,并发布应用到GIS,从而推进了GIS应用,实现了油田设施在计算机中的展示、研究与管理步伐,加快了数字油田建设,并促进了克拉玛依标志性建筑三维模型的早日完成。 关键词:3ds Max;Skyline TerraExplorer Pro;建模;GIS;应用 1.1 前言 2000年,中国石油天然气股份有限公司新疆油田分公司(以下简称油田公司)在“数字地球”技术背景下,提出了数字新疆油田的宏伟战略,并制定了“数字新疆油田”信息建设“三个阶段”的战略部署。不仅将从根本上建立从分散到集中,从无序到有序的信息化建设新秩序,而且标志着“数字新疆油田”规模化建设的开始。 但是“数字油田”是一个庞大,复杂的工程,涉及的内容之多,之广,它涉及数据建设,信息系统建设,网络工程建设等,其中信息系统的建设,是由二维地理信息来表示的。二维 GIS始于二十世纪六十年代的机助制图,今天已深入到社会的各行各业中,如土地管理、电力、电信、城市管网、水利、消防、交通以及城市规划等。但二维GIS存在着自身难以克服的缺限,本质上是基于抽象符号的系统,不能给人以自然界的本原感受。随着应用的深入,第三维的高程信息显得越来越重要。一些二维GIS 和图象处理系统现已能处理高程信息,但它们并未将高程变量作为独立的变量来处理,只将其作为附属的属性变量对待,能够表达出表面起伏的地形,但地形下面的信息却不具有,因此它们在国际国内也被俗称为2.5维的系统。考虑到2.5维这一概念并不严密,作者称之为“地形面三维”或简称面三维。我们认为,面三维的GIS本质上仍然是二维GIS系统。 二维GIS只能处理平面X、Y轴向上的信息,不能处理铅垂方向Z轴上的信息。它在表达上通常是将Z值投影到二维平面上进行处理,因此对于同一(x, y)位置的多个Z值不能表达。 世界的本原是处在三维空间中的,二维GIS将现实世界简化为平面上二维投影的概念模型注定了它在描述三维空间现象上的无能为力,克服这一缺陷迫切需要真正的基于三维空间的GIS的问世。三维地理信息系统就是在这一前提下进行的开发,它充分体现了三维建模技术,对三维物体进行了真实再现,从而满足生产、科研、管理、决策等对空间信息的可视化需求。 2.1 三维地理信息系统的定义与特点 2.1.1 三维地理信息系统的定义 三维地理信息系统(Geographical Information System)简称三维GIS,三维GIS是近年来迅速发展起来的一门融计算机图形学和数据库技术于一体的新型空间信息技术,它把现实世界中对象的空间位置和相关属性有机地结合起来,满足用户对空间信息管理的要求 ,并借助其特有的空间分析功能和可视化表达,进行各种辅助决策。从而满足了生产、科研、管理、决策等对空间信息的可视化需求。 从不同的角度出发,GIS有三种定义:①基于工具箱的定义:认为GIS是一个从现实世界采集、存

三维地矿模型可视化控件研究

收稿日期:2011-10-25;修回日期:2012-01-29基金项目:国家自然科学基金项目(70971059) 作者简介:王彦彬(1977-),男,河北保定人,博士研究生,研究方向为网络数字矿山系统。 三维地矿模型可视化控件研究 王彦彬,车德福,郭甲腾,张维国 (东北大学资源与土木工程学院,辽宁沈阳110004) 摘 要:三维建模与可视化是网络数字矿山系统的一个重要组成部分,在网络环境下实现地矿模型的三维可视化,需要在 客户端对原始数据或者模型数据进行三维再现。为了便于与前期工作相结合,同时为了提高系统的运行效率,文中在分析ActiveX 控件的基础上,采用ActiveX 控件结合OpenGL 图形库的方法实现地矿模型在网络环境下的显示与交互。结果表明,使用控件将业务逻辑进行封装实现三维地矿模型可视化,有利于软件复用,提高软件开发效率,并能有效解决客户端与服务端负载平衡问题。 关键词:数字矿山;控件;ActiveX ;OpenGL ;地矿模型中图分类号:TP31 文献标识码:A 文章编号:1673-629X (2012)06-0061-03 Research on Visual Control of 3D Geological Model WANG Yan -bin ,CHE De -fu ,GUO Jia -teng ,ZHANG Wei -guo (School of Resources &Civil Engineering ,Northeastern University ,Shenyang 110004,China ) Abstract :3D modeling and visualization is important parts of web digital mine system.It needs to reconstruct the raw or model data to re-alize 3D visualization of geological model.In order to combine with the early works and to improve the working efficiency ,analyzed the realization of ActiveX controls ,realized the visualization and interaction under the internet environment by ActiveX and Open GL.The re-sults showed that using controls could benefit to software reusing ,help to improve programming efficiency and could efficiently solve the load balance between client and server. Key words :data mine ;controls ;ActiveX ;OpenGL ;geological model 0引 言 随着计算模式和网络的发展,B /S 模式得到广泛应用 [1] ,数字矿山系统的建设也逐渐与网络结合。数 字矿山系统建设中,三维地矿模型的建模与可视化是一个重要的组成部分,通过三维地矿模型工作人员可以直观地观察地质体内部结构和特征,同时也利于对模型进行空间分析,帮助地学工作者在动态场景中分析、推理,深入了解相关的变化特征以及规律。 网络数字矿山系统建设的重点之一就是在网络环境下再现三维地矿模型,当前网络三维可视化技术主要有VRML (X3D )、 Java3D (JOGL )以及采用控件结合DirectX3D 或者OpenGL 的方法进行实现 [2] 。其中 VRML (X3D )的运行需要相关插件的支持,虽然开发过程比较容易,比如现在的3D MAX 等建模软件均提供了对它的支持,可以直接将建模结果输出为VRML (X3D )文件,但是它很难与数据库结合,同时它的运 行效率也待进一步提高;Java3D (JOGL )是在Java 环境下进行三维模型开发的主要技术手段, 本身具有很多的优点,比如便于和数据库连接,具有跨平台性等,但是它也有一些缺点,如执行速度的问题、显示效果的问题等;采用控件结合DirectX3D 或者OpenGL 的方法可以提高渲染速度,并且可以方便地与前期开发的C ++成果进行结合,目前也有很多的软件和相关工作采用控件的方法进行实现,因此在网络数字矿山系统建设中可以采用控件结合OpenGL 的方式实现客户端模型的可视化。 1 ActiveX 控件 ActiveX 技术是微软公司提供的一种基于COM 的 综合技术,它与Windows 系列操作系统紧密结合,在很多领域得到广泛应用 [3 6] 。ActiveX 控件是ActiveX 技 术的重要组成部分,一个ActiveX 控件基本上是一个 支持IUnknown 接口的OLE Object [7] ,需要在ActiveX 容器中才能运行,容器通过控件中定义的方法、属性、事件等与控件进行通信。 ActiveX 控件具有如下的优点:容量小能通过IE 第22卷第6期2012年6月 计算机技术与发展 COMPUTER TECHNOLOGY AND DEVELOPMENT Vol.22No.6June 2012

达尔ABAQUS三维无限元模型建立

达尔文档 分享知识传播快乐 ABAQUS三维无限元模型建立 本资料为原创 2017年7月达尔文档|DareDoc原创 本教程目的实现无限元单元的建立,从而用于无限元人工边界当中。 现以6m*6m*50m柱体为例,在其四周和底部建立一层无限单元。外层柱尺寸 12m*12m*56m,仅划分一层单元,内部柱体网格划分为1m*1m*1m。建立完后的模型如下图所示。 图1 外层无限元,有限元柱体和无限元-有限元模型 1.创建内部柱体和外部包裹柱体 在part模块中,建立Part-1和Part-2。先创建内部柱体part,在草图中建立一个 6m*6m的方框。 图2 草图中创建方形截面6*6 对截面进行拉伸,深度为50(图3)。同理,创建外部包裹柱体Part-2,截面尺寸为6*6,拉伸深度为56。 图3 拉伸深度及创建的part1 2.对两个柱体进行装配并切割 在装配模块中,将两个part进行装配。装配后,由于两者位置不对,需要将内部柱体的顶面与外部柱体顶面平齐,所以进行平移实例操作。平移完成后,用外部part 减去内部part,形成Part-3。 图4 装配效果图及平移后切割 图5 平移后两柱体位置,切割完成后模型 3.对包裹体切割,重新建立Part 为使后面能够顺利划分网格,需要对形成的Part-3进行切割,重新建立底部。先将part分割成四部分。可采用切割命令,使用三点切割体,如下图所示。 图6 切割part示意图 切割完毕后,底部块已经被切碎,需要通过“创建切削放样”进行删除,并重新建立。创建切削放样时建立两个截面,第一个截面为内部截面,按住shift键选择四个边完成,如图7所示,第二个截面为模型最底部正方形。两个截面创建完成后按确定按钮,底部便被切削去掉(图8左)。此时,模型底部需要根据形状填补,采用“创建实体放样”生成补块,过程与切削放样基本相同,需要注意创建时要勾选“保留内部边界”,否则后续网格不能划分(图8右)。 图6 切割完模型,对模型底部进行切削放样 图7 切削放样时选择的内外两个截面 图8 切削完毕后模型,创建实体放样 4.对无限元和有限元两部分进行装配,网格划分 在装配模块中,对Part-1和Part-3进行装配,装配完毕后进行合并,如图9。

三维建模在虚拟现实中的应用

龙源期刊网 https://www.360docs.net/doc/e210459308.html, 三维建模在虚拟现实中的应用 作者:冯丹 来源:《商情》2019年第49期 【摘要】虚拟现实建模技术是当下计算机技术当中的一项热门话题。当今三维建模技术主要以Autodesk maya和3Dmax两款设计软件为主要创怍工具,三维建模方法主要有多边形建模、非均匀有理B样条曲线建模、细分曲面技术建模。每种建模方法各有其优点和缺点。本文主要围绕多边形建模和NURBS建模两种方法进行介绍。 【关键词】虚拟现实; 多边形建模; NURBS建模 一、引言 随着现在科技的发展以及计算机的普及应用,高科技技术产品的出现,三维技术和虚拟现实技术的应用逐渐发挥着重要的作用。虚拟现实技术是一种可以创建和体验虚拟世界的计算机仿真系统,它利用计算机生成一种模拟环境,是一种多源信息融合的、交互式的三维动态视景和实体行为的系统仿真,并使用户沉浸到该环境中。这是现代计算机技术高度发展的主要象征之一,有效提高了各类产品、建筑、景观、动画等的设计效果,使得图形不再仅局限于二维空间当中,而是转变为了三维立体图像,有种身临其境的感觉,标志着人类计算机科技的进步。 二、虚拟现实技术 虚拟现实技术简称 VR 技术,同时也被叫做灵境技术,是针对图像进行数字化处理,并包含了图形学、多媒体、网络、人工智能、传感器与高分辨率显示等技术,将人们的五感融合在一起,形成真实虚拟三维空间的信息集成技术系统。 三、三维建模技术 三维建模技术是一门通过软件来实现模型的技术手段。3D Studio Max,常简称为3ds Max 或MAX,是Discreet公司开发的(后被Autodesk公司合并)基于PC系统的三维动画渲染和制作软件。而NURBS曲面建模和Polygon多边形建模是这两款软件主要的建模类型。 (一)多边形建模 多边形建模是三维建模技术当中最早的建模技术之一。多边形建模方法是虚拟现实制作和虚拟建筑制作中最常用的三维建模方法,通过使用大量的、小的面片,多边形建模方法建立的模型可以建立任何平面或者曲面,并且使用这种方法建立的模型可以任意变化修改,能充分使用建模师的想象力,建立超现实三维模型。

矿井三维模型可视化系统的设计与实现教学提纲

矿井三维模型可视化系统的设计与实现

矿井三维模型可视化系统的设计与实现 摘要:巷道包含了复杂的拓扑信息和空间信息,是矿井其他信息的空间载体,其建模尤为重要。本文针对矿井三维模型可视化的需要,设计并实现了一套基于Java语言的矿井三维可视化模型。系统主要包括不同断面巷道模型的分类和参数化构建、矿井液压支架模型的实现、巷道纹理材质库的选择、光照选择,巷道漫游等。 关键词:矿井三维可视化,JOGL,Java,巷道 1引言 数字矿山作为一种复杂的三维空间信息系统,不仅能够存储、分析和表达真实矿山中各种空间实体对象的属性信息,而且涉及大量复杂的空间定位特征及可能拓扑关系的组织和管理。因而,数字矿山的三维空间数据模型是联结真实矿山世界和计算机中抽象的矿山世界的桥梁[1]。 本研究就是对矿井三维模型可视化系统进行设计与实现。 通过数字矿山建设至少可以在以下几个方面给矿山企业带来好处: 1、提高矿山企业的生产效率和资源优化; _________________________________________________ _

2、加强矿山的安全管理,积极的预防矿难事故; 3、降低决策的风险性,提高企业快速反应能力。 本文针对煤矿井下环境抽象出各类图元,在空间上模拟真实井下系统,实现了矿井三维模型可视化系统[2-3]。 2 JOGL图形库 JOGL是Java对OpenGL API绑定的开源项目并设计为采用Java开发的应用程序提供2D/3D图形硬件支持。JOGL 对OpenGL 2.0[4-5]规范中的API和几乎所有第三方开发商的扩展提供完整访问,而且集成了AWT和Swing界面组件。JOGL函数库的简单抽象要比高度抽象如Java 3D函数库执行起来高效的多,因为其大部分代码是自动生成的,所以JOGL的升级可以迅速的与OpenGL升级相统一[6-8]。 3矿井三维模型可视化的设计 3.1巷道图元三维模型分析 巷道由于存在于地下,其数据提取不像地表实体一样简单。巷道图元与巷道图元间采用非直线形式,以实际角度进行弧形连接。根据巷道的不同用途,其断面形状, _________________________________________________ _

论述可视化三维模型的建模实例

论述可视化三维模型的建模实例 1、技术路线 由于部队“直线加方块”的生活特殊性,部队营房建设相对居民生活小区来说,要规则很多。由于部队保密的规定,不能实地完成数据采集任务,住宿楼、办公楼、训练场地的基本数据以我校北区海军楼为主体。在纹理制作过程中,结合使用了photoshop8.0等相应软件。 2、建模过程 对于一个全新的模型数据库来说,用户需要确定一些关于数据库的基本参数来决定它的大小和范围。 (1)用File/New命令创建一个新的文档aaaa.flt; (2)将窗口边缘向上拉伸使视图分割为模型视图和层级视图; (3)打开Info/Preferences面板,点击Flight tab按钮。将默认的单位设置为“Meters”,点击“OK”按钮并关闭面板,所有单位都变为“米”; (4)打开View panel并为网格设置合适的参数。参数大小可根据需要自行调整; (5)在层级视图中,按下Alt键同时单击g2节点,将g2设置为父节点,选择g2,按Ctrl+J键将其改名为“aaaa”,则所有新建立的模型都将附属于这一父节点或它的子节点; (6)这时视图如下图所示。将view视图拖到一边以备用。 2.1 地形建模 由于受视角范围限制,场景的可视范围比较小,所以地面仿真对地形模型的精度要求就比较高,同时也需要更加精细、更加逼真的地物模型和特征模型。标准的数字地面高程模型DEM,或者其他类型的地形数据必须转换成DED格式才能被Creator读取,继而为创建地形模型数据库所使用。另外,Creator还提供了功能强大的DED数据文件生成器,以用于灵活创建数字高程数据。对于原始地形数据损坏导致DED无法获取的情况,还可以通过地形模型数据库生成相应的DED数据文件。 由于本论文所建造的可视化军营模型以生活区为主,考虑到生活区域地表起伏变化不大,故将地形设置为平面。

三维可视化建模技术在地质勘查中的应用

三维可视化建模技术在地质勘查中的应用 摘要:根据地质勘查的数据特点,利用三维可视化建模技术。实现了以真三维模型来恢复地表以下地质体的结构、形态特征以及空间展布,能对其进行旋转、漫游、切片分析、虚拟钻探等操作,动态地研究其内部细节,了解目标对象与周围地质环境之间的关系,为地质信息的进一步定量分析、探索与利用提供了强有力的支持。 关键字:地质勘查三维可视化建模技术虚拟钻探 引言 在地质勘查工作中,地质工作者越来越迫切地希望建立一套完善的地质体三维可视化与分析系统,实现对地质体信息的三维可视化仿真,丰富地质勘查成果的表现形式,为地质信息的进一步定量分析、探索与利用提供强有力的支持。随着计算机软件和硬件的飞速发展,针对地质体的三维建模与可视化,综合运用三维仿真、数学地质、计算机图形学、虚拟现实、科学计算可视化、计算机软件开发等成熟的理论方法与技术,实现复杂地质条件下的三维地质建模。 二.三维地质建模数据来源与特点分析 在三维地质建模中,用来反映地质体特征的数据来源多种多样,包括地质勘探数据、地球物理勘探数据、地球化学勘探数据、工程地质数据等等。 由于地质原始数据的多源性、离散性和定性特征在很大程度上阻碍了三维地质建模研究的发展。因此,在三维地质建模工作中需要耦合多源信息,对场区地质构造进行分析、解译,将定性描述的数据定量化,尽量以数值型数据和图形数据来进行表达,将离散不确定的数据通过各种插值拟合的手段转化为连续确定的数据,为三维地质建模提供合适的数据源。 三.三维地质建模的难点与关键技术问题分析 通过对三维地质建模数据来源与特点的分析可知,建立一个客观准确的三维地质模型必须满足三个条件:足够多的原始地质采样数据、能够真实反映复杂地下空间关系的地质解译分析、合适的数据结构。就目前复杂地质体的三维建模主要面临的困难可归纳为以下3点: (1)原始地质数据获取艰难。地质体通常位于地表以下,人们无法直接全面地观察到地质体的各种特征,往往只能通过物探、化探等手段获得地质体的部分特征信息,并通过对这些信息的分析、解释、推断来获得地质体的基本信息。 (2)地下地质体及其空间关系极其复杂。地质条件和地质作用复杂多变,在其影响下,地层被切割成不连续的空间分布,岩体内复杂的岩性变化,以及地

三维建模在各个领域的应用

三维建模在各个领域的应用 (武汉纺织大学工程造价11403王博) 摘要:自上世纪五十年代马特龙把地质统计学引用地质研究以来三维建模已经在多个领域得到应用,本文通过对前人的文献进行分析整理得出三维建模在各个领域中的应用及其发展始末。 关键词:三维设计;三维建模;技术应用 Application of three dimensional modeling in various Fields Abstract:since the1950s matalon applied geological statistics to the geology,the study of geological3D modeling has got application in many areas.In this paper,we give a sight on the application of3D modeling in various fields and the development of the whole story through the previous literature collation and analysis Keywords:3D design;3D modeling;application technology 1引言 随着社会经济的迅速发展,人民生活水平的不断提高和三维建模技术的不断完善,人们对三维建模产品的需求急剧增加。而三维建模技术在对交通、能源、动画、影视、通讯等各个项目中的利用也急剧增加。本文从三维建模的发展历史及其应用和意义三个方面对三维建模进行綜述。 根据百度百科的定义,三维模型是物体的多边形表示,通常用计算机或者其它视频设备进行显示。显示的物体是可以是现实世界的实体,也可以是虚构的物体。任何物理自然界存在的东西都可以用三维模型表示。回顾一下地质建模在油田开发中的作用,可以发现目前的三维建模主要有两个作用:一个是为数值模拟提供基础模型,第二是用于油藏的整体评价,例如油藏勘探开发的风险评价。但三维建模一直没能深入到油田的生产中。 油田开发地质研究工作中,目前还没有十分有效、先进的技术。油藏地质研究还主要依靠手工编制的厚度图、油藏剖面图、连通图等。十分需要新的技术的补充与提高。在整个开发阶段地质研究工作中,唯一可以称为新技术的就是三维建模。因此三维建模完全可以在开发阶段地质研究中起到更为突出的作用。实际上,三维建模应该,也完全可以成为油藏开发阶段油藏精细描述和生产措施部署的核心技术。 现在,三维模型已经用于各种不同的领域。在医疗行业使用它们制作器官的精确模型;电影行业将它们用于活动的人物、物体以及现实电影;视频游戏产业将它们作为计算机与视频游戏中的资源;在科学领域将它们作为化合物的精确模型;建筑业将它们用来展示提议的建筑物或者风景表现;工程界将它们用于设计新设备、交通工具、结构以及其它应用领域;在最近几十年,地球科学领域开始构建三维地质模型。 2.三维建模的发展历史

三维可视化服务平台的管理模型研究

三维可视化服务平台的管理模型研究 发表时间:2019-09-19T10:12:57.113Z 来源:《电力设备》2019年第8期作者:杜军伟杜兰洲 [导读] 摘要:针对目前使用激光盘进行煤场库存盘点得到的三维数据点集散乱问题,提出了一种结合三维点云数据插值和计算机视觉修正方法的设计方案。 (山东电力工程咨询院有限公司山东济南 250013) 摘要:针对目前使用激光盘进行煤场库存盘点得到的三维数据点集散乱问题,提出了一种结合三维点云数据插值和计算机视觉修正方法的设计方案。通过对三维点云数据进行插值,根据插值结果进行三维网格点绘图,再根据电厂每日煤量进、耗、存实时基础数据进行修正,可以提高所绘的网格图与实际形状的拟合精度,利用Web、Unity3D与数据库进行数据交互,实现三维可视化展示,可实时提供煤场存煤量信息,动态修改网格图形状,为燃煤发电煤场煤场科学增效管理提供决策支撑。 关键词:数据插值; Unity3D;三维可视化 三维可视化建模在20世纪90年代初期开始为人类所重视,并逐渐成为数学地质、石油勘探、岩土工程、GIS和科学计算可视化领域的研究与应用热点。所谓三维可视化地质建模,按照Simon W Houlding的观点是指运用计算机技术,在三维环境下将空间信息管理、地质解译、空间分析、地学统计与预测、实体内容分析以及三维图形可视化等技术工具结合起来,实现地质模型的三维显示,并用于地质分析的技术。 1、三维可视化模型的建立 1.1资料收集 工作所收集的资料主要包括区域及各流域水文地质报告、构造分布图、水文地质图、地貌图、水文地质剖面图、第四系埋深图、潜水埋深图、电子地理底图、地表高程等值线图、各含水层顶底板高程等值线图、二维剖面图以及最重要的钻孔数据资料等,为模型建立做准备。由于峰峰煤矿曾进行过不同目的、不同精度的地质调查与评价工作,积累了大量的资料。 1.2资料分析 (1)在原有钻孔资料的基础上,加入从电子底图上提取的地面高程点数据,显示地表面的起伏状态;(2)当已有钻孔资料不足时,应在已有钻孔资料的基础上,依据剖面图、地质图和地质报告中的相关内容,虚拟一些钻孔;(3)结合工作区和现有资料,对钻孔数据进行修正和补充;(4)整理资料,录入GMS中。 1.3三维可视化模型构建 利用GMS软件建模时,应先建立坐标系,即将地理底图导入到GMS中定位。然后,利用GIS模块将*.shp文件转化到MAP模块中,根据定位好的地理底图,绘制确定计算区域边界,再由这些边界生成TINs。将整理好的钻孔资料导入到GMS中的Borehole模块中形成钻孔数据,以便对钻孔资料进行管理。通过编辑钻孔岩性及对每个钻孔进行编号,将每个钻孔上不同岩性的连接处设置水平地质,创建钻孔剖面,进而显示地层;在Borehole模块中选择Horizons->Solid命令,采用相应的插值方法,从而生成地质结构体,建立地质结构模型。Solid 则是水文地质结构模块。我们可以利用该模块来根据需要分解和组合不同的层,在任意层位、任意位置切剖面,查看剖面上地层的展布情况,并可对模型进行空间上的旋转,从不同角度观察模型结构。 2、曲面拟合 2.1 原始数据预处理 目前盘煤仪的数据较为精确,但是由于盘煤仪每次盘点耗时较长,不宜频繁使用;日存取煤总量则是与生产量直接对应,精度较高,但是由于缺乏煤场取煤位置信息,难以直接生成煤场立体图;皮带秤的数据则由于测量误差较大,仅作为参考与辅助;视频数据则是,煤场进行直接取样,需要复杂建模,方可提取有用数据;人工丈量是当前常用的方法,但是由于人为因素,丈量误差较大,可作为辅助数据。 激光扫描仪为三维煤场动态测控系统的主要传感器,按照一定频率发射激光线获取煤堆表面二维数据,并结合扫描仪激光器云台辅助旋转实现一定范围的三维数据快速采集。 煤场激光盘煤仪主要是利用二维高频率激光扫描仪对料场的表面进行高频率断面扫描获得高密度的断面数据,结合行程测量器获得的料场长度和回程测量器获得的扫描仪偏转角度数据,实现料场体积的计算、料场三维模型的显示。由于煤场表面非规则,即使扫描步距一定,最后得到的仍是三维散乱数据点集。因此图形显示及体积计算的关键在于曲面拟合,而曲线拟合的基础是准确的数据插值。 2.2 数据插值计算 由激光盘煤仪获得的三维散乱点云数据不能直接用于图像复现和图形拟合,所以要进行插值运算。近30年来,有很多的算法被提出来,大多数适用于中小规模的点云数据,主要的算法有:与距离成反比的加权算法、径向基函数插值法、有限元法等。点云数据的差值问题描述如下:设在二维平面上有n个点(xi , yi)(i=1,2,…,n)并有Zi=f (xi, yi)。插值计算的主要目的是要构造一个具有C1连续的函数F(x,y)。 (1)与距离成反比的加权法。 (3)有限元方法。 该方法主要是基于求解偏微分方程,在给出具有双自变量的点云数据点vi(xi , yi)及其函数zi=f(xi , yi)(i=1,2,…,n)以后,首先求出二维平面上点云点vi的凸包,并对其进行三角剖分,形成一系列的三角形Tj,k,l。然后,构造一系列的面片,使其插值于所有pi点的函数值zi。有限元方法需要对二维点集进行三角剖分,构造出插值于各点函数值的平面三角面片,要求各面片间具有C1连续的插值方法。 通过对比上述3种算法可知,与距离成反比的加权算法是最容易实现,而且算法复杂度最小;径向基函数法相对较难实现,复杂度居中;有限元方法中的积分微分运算量最大,算法较为复杂。因此对点云数据的插值来说,径向基函数法的插值效果最为合适。图1为由盘煤仪获得的点云数据经过径向基函数插值后得到的立体图。 2.3 三维渲染 三维数据场显示技术主要包括基于等值面重建的面绘制技术和采用体模型的直接体绘制方法[5],其中体绘制方法不依赖于视点,对场

三维模型布线方法

1.布线疏密的依据 有人认为在能够刻画出结构的同时,线越简单越好,这种想法不完全正确。线过少会导致肌肉变形的可操控性下降。模型布线不是以定型为最终目的,创作者必须为日后的动画着想。即便是单帧,也要为绘制贴图考虑。 无论是动画级还是电影级,布线的方法基本上没有太大区别。只是疏密安排不同而已。基本上可以遵循这样的规律: 一、运动幅度大地方线条密集。包括关节部位,表情活跃的肌肉群(如下图白色部分)。 密集的线有两个用途:(1)用来表现细节。(2)使伸展更方便。由于眼睛在表情动画中的变化是最丰富的,因此眼眶周围要有足够的伸展线。头盖骨部位不会有肌肉变形和骨骼运动,此处的布线能够定型就可以了。耳朵的形体很复杂,但是它布线的密集只是为了起到增加细节的目的而已。 二、运动幅度小的地方线条稀疏。包括头盖骨,部分关节和关节之间的地方(下图白色位置)。

2.布线的准则:动则平均,静则结构。 伸展空间要求大,变形复杂的局部采用平均法能够保证线量的充沛及合理的伸展走向来支持大的运动幅度(下图红线位置)。变形少的局部用结构法做足细节,它的运动可伸展性不用考虑那么周全(下图蓝线位置)。

3.均等的四边形法 顾名思义,均等四边形法要求线条在模型上分布平均且每个单位模型近似(如下图)。均等法的线条安排一般是按照骨骼的大方向走,即纵向要和相对应的骨骼垂直。优点:由于面与面大小均等、排列有序,为后续工作(如:展开拓扑图、角色蒙皮、肌肉变形等)提供很大的便利,而且在修改外形时很适合使用雕刻刀这一利器。缺点:要想体现跟多的肌肉细节,则面数会成倍的增加(一般用于对视觉要求苛刻的电影角色)。 4.一分三法 有些朋友在增加细节时喜欢使用挤出(extrude)工具,建立工业模型时确实很好用,但是在建立生物模型,特别是建立人体模型时是不值得提倡的。因为extrude一次就会出现四个五星,四个三星,这些状况出现在运动幅度大的地方,会给日后的蒙皮和动画带来相当大的麻烦。逼不得已,又不能用无尽的加线使它符合均等法的时候,我们使用“一分三法”。

章3-角色(二、三维角色人体模型,场景建模)讲解

第三章角色 3.1 前言 “角色”一词的源于戏剧,自1934年米德(G.H.Mead)首先运用角色的概念来说明个体在社会舞台上的身份及其行以后,角色的概念被广泛应用于社会学与心理学的研究中。社会学对角色的定义是“与社会地位相一致的社会限度的特征和期望的集合体”。角色是一个抽象的概念,不是具体的个人,它本质上反映一种社会关系,具体的个人是一定角色的扮演者。 而在我们动漫产业中,角色更是一个非常重要的元素,没有一个吸引人的角色,就出不了一个好的作品。我们本章来介绍角色的建模。 3.2 骨骼动画原理 骨骼动画(Skeletal Animation)[9]又叫Bone Animation,它与关键帧动画(Key-frame Animation)相比,占用空间小,因为它不需要像关键帧动画那样在每一帧中存储各个顶点的数据,而只需要存储骨骼变换数据,骨骼与顶点相比,当然要少得多。所以骨骼动画有很多优势,当然其技术难度也很高。骨骼动画在计算机图形学中是一个十分重要的内容,不管是在游戏、电影动画还是虚拟现实中,生动逼真的角色动画(人、动物等)会使其增色不少。 骨骼动画的实现思路是从人的身体的运动方式而来的。动画模型的身体是一个网格(Mesh)模型,网格的内部是一个骨架结构。当人物

的骨架运动时,身体就会跟着骨架一起运动。骨架是由一定数目的骨骼组成的层次结构,每一个骨骼的排列和连接关系对整个骨架的运动有很重要的影响。每一个骨骼数据都包含其自身的动画数据。和每个骨架相关联的是一个“蒙皮”(Skin)模型,它提供动画绘制所需要的几何模型信息(Vertex信息,Normal信息等)和纹理材质信息。每个顶点都有相应的一组权值(Weight),这些权值定义了骨骼的运动对有关顶点的影响因子。当把动画人物的姿势和全局运动信息作用到骨架上时,这个“蒙皮”模型就会跟随骨架一起运动。 3.2.1实时角色动画 由于骨骼动画是从另外两种实时角色动画发展演变而来,因此,为了更好的理解骨骼动画的原理,就很有必要对它们进行研究分析。角色动画是计算机动画技术的一个重要组成部分,也是计算机图形学的一个重要分支。在实时渲染环境下,主要应用于虚拟现实,视频游戏,甚至是建模软件,动画制作软件。现在,随着计算机硬件技术的发展,特别是带有硬件加速功能的显卡性能的提高,实时渲染的角色动画技术得到了较快的发展且被广泛的应用。目前,实时角色动画技术大体可分为三种类型。

三维人体建模与显示

基于单目视觉测量的人体建模与显示 盛光有1,姜寿山1,欣2 (1.工程大学电子信息学院,710048; 2.工程大学服装与艺术设计学院,710048 ) 摘要:以一种基于单目视觉测量原理的三维人体扫描装置获得的人体数据为来源,运用三角面片法构建人体表面,并把人体模型保存为一种标准的模型格式文件OBJ文件,获取了三维人体模型。然后在Visual C++的编程环境中采用OpenGL (Open Graphics Library)作为三维图形接口,编程实现了三维人体模型,获得了可视化的人体模型。 关键词:三维人体模型;虚拟试衣;OpenGL;人体显示 随着人们对服装的舒适性,合体性和款式的个性化的要求越来越高。传统的二维服装CAD软件暴露出了种种不足之处,如号型难以适应不同形态的人体,不能在衣片设计阶段就看到成衣后的效果,需要反复修改等。根据个人体型进行单量单裁的量身定制方式(Made To Measure,简称MTM)应运而生,由于能满足个性特殊需求,这种方式深受人们欢迎。法国力克公司推出了一种服装量身定制系统[1],按照客户具体要求量身定制,做到量体裁衣,使服装真正做到合体舒适. 德国TechMath公司的FitNet软件系统针对该顾客的体型,从人体数据库中直接搜索出相近的体型及配套服装样板,并提供了进一步根据顾客体型和穿着习惯修改样板的功能[2]。还有英国的Baird Menswear西服公司,其销售到国和国际市场的西服中有80%是通过量身定制系统完成的,并且服装系列涵盖了不同款式、颜色和规格的组合[3]。而国的三维服装CAD技术远远落后于西方发达国家,近几年来国的一些院校和公司也都在研究这方面的技术。其中获得可视的三维人体模型的是三维虚拟试衣系统和三维服装CAD系统中的关键技术。本文以一种人体扫描仪所获取的三维人体数据为数据为基础,采用三角面片法构建了人体表面模型,并编程实现了人体模型的真实感显示。 1 三维人体模型构建 1.1 数据获取 目前,获取用于三维人体模型重建的数据,主要用两种途径。一种是从Poser, Maya 和3DSMax等软件系统导出人体模型数据,另外一种是采用非接触测量方法,通常是采用非接触式人体扫描仪获取人体表面的三维数据。本为获取数据的方法属于第二种。本文中人体建模用到的数据来源于一种基于单目视觉的双扫描头人体扫描仪所测得的[4]。由于获得的原始数据点云数量很大,并且排列不太规则,因此对原始点云进行了一定的处理,有效地减少了数据点云的数量和增加了点云数据的规律性。关于数据处理的细节不是本文的所讨论的重点,在此不讨论。处理之后的点云如图1所示。

三维建模布线

建模:关于面部布线 讲究面部布线的一个最重要目的就是为了表情动画。人物内心的各种不同的心理活动,主要是通过面部表情的变化反映出来。而面部变化最丰富的地方是眼部(眉毛)和口部,其它部位则相应的会受这两部分影响而变化。对于面部表情,必须把整个面部器官结合起来分析。单纯只有某一部分的表情不能够准确表达人物的内心活动的。清楚的分析理解面部肌肉的走向分布和收缩方式,十分有利于把握面部的模型布线。 游戏模型的面数有一定的限制,但是布线不够的话就不能很好的表现想要的表情,因此“合理和足够的线”这个要求,作为我们游戏项目表情的制作的重要的制作标准。 下图是张布线相对比较理想的模型截图。线的密度分配主要集中在活动区域比较强烈的嘴部和眼睛部位。布线走向符合面部肌肉的走向,特别是鼻唇沟划分比较明显且合理。 怎样才能做到合理且足够的布线: 1.要想合理布好线,布线的方式一定要与肌肉运动的方向相符合,否则很难表达出你想要的表情。 2.不要怕麻烦或吝啬,关键部位舍不得布线,没有足够的可控点,表情就肯定做不到位。 3.必须对设置、动画有一定了解,也就要知道运动原理和方式,才能控制好表情目标体模型的度。 面部的肌肉的观察和理解。 表情肌肉:面部表情肌属于皮肤,为一些薄而纤细的肌纤维。一般起于骨或筋膜,止于皮肤。收缩时牵动皮肤,使面部呈现出各种表情。

眼部和嘴部是面部最为活跃的区域,其它部位则相应的会受这两部分影响而变化。因此我们重点关注这2个部分的肌肉走向位置,和运动方式。 眼部: a.眼部的环状眼轮匝肌,位于眼眶部周围和上、下眼睑皮下。其收缩时能上提颊部和下拉额部的皮肤使眼睑闭合,同时还在眼周围皮肤上产生放射状的鱼尾皱纹。闭眼、思考等表情都会影响到眼轮匝肌. b.横向的皱眉肌和纵向的额肌,皱眉肌:在额肌和眼轮匝肌的之间靠近眉间的位置。其收缩时,能使眉头向内侧偏下的方向拉动,并使鼻部产生纵向的小沟。 c. 降眉肌:位于鼻根上部皱眉机内侧,其中还包括降眉间肌。当其收缩时可以牵动眉头下降,并使鼻根皮肤产生横纹。一般来说,皱眉肌和降眉肌是共同参与表情变化的,在愁闷、思考等表情中可以使这几组肌肉紧张收缩而产生锁眉的表情。 环状的口轮匝肌和放射状的提肌可以实现很多动作。因此嘴部的布线相对密集。口轮匝肌:也称口括约肌,位于口裂上下唇周围。口轮匝肌可以看成是环形的肌肉,在位置上可以分成内、外两个部分,内圈为唇缘、外圈为唇缘外围。口轮匝肌内圈在收缩时,能紧闭口裂呈抿嘴的表情,外圈收缩,并在颏肌的作用下产生撅嘴的表情。 d.嘴角的模型线的穿插

相关文档
最新文档