文章目录
前言
学习三维点云处理的入门,刘利刚老师详细阐述了计算图形学的定义,研究的范围和研究的应用。
一、定义
计算机图形学是一种使用数学算法将二维或三维图形转化为计算机显示器的栅格形式的科学。简单地说,计算机图形学的主要研究内容就是研究如何在计算机中表示图形、以及利用计算机进行图形的计算、处理和显示的相关原理与算法。
二、主要内容
计算机图形学主要包含四大部分的内容:建模(Modeling)、渲染(Rendering)、动画(Animation)和人机交互(Human–computer Interaction, HCI)。
1.建模(Modeling)
要在计算机中表示一个三维物体,首先要有它的几何模型表达。表达一个几何物体可以是用数学上的样条函数或隐式函数来表达;也可以是用光滑曲面上的采样点及其连接关系所表达的三角网格来表达(即连续曲面的分片线性逼近)。
- 计算机辅助设计(CAD)中的主流方法是采用NURBS(非均匀有理B-样条、Bezier曲线曲面)方法
- 细分曲面(Subdivision surface)造型方法,作为一种离散迭代的曲面构造方法
- 利用软件的直接手工建模。商业化的三维建模软件有Autodesk 3D Max和 Maya。
- 基于笔划或草图交互方式的三维建模方法。(这还是第一次听说)
- 基于图像或视频的建模方法。这是传统的计算机视觉所要解决的基本问题。三维重建
- 基于扫描点云的三维重建
- 基于现有模型来合成建模的方法。(这也是第一次听说)
2. 渲染(Rendering)
3. 动画(Animation)
4. 人机交互(Human–Computer Interaction, HCI)
三、基础知识
1.计算机图形学里面用到的数学比较多,列举一些常用的,包括:微积分、线性代数、矩阵计算、微分几何、数值计算和分析、计算方法、偏微分方程、微分方程数值解、最优化、概率、统计、计算几何等。
2.C/C++是计算机图形学最常用的编程语言。
3.英文
4.好奇心
图形学几何基础
GAMES101课程笔记-----几何
1、3d几何形状的显示表示和隐式表示
目前几何形状表示有很多,但是可以依据是否能直观得到几何形状来分为两种。
隐式表示:
- algebraic surface代数曲面
- Constructive Solid Geometry(CSG)3D体积做布尔运算
- distance functions距离函数,特别地,解析形式表达有Signed Distance Field
- level sets (水平集),Grid方式描述distance函数
- Fractals分形几何,具有自相似/递归性质
显式表示:
- point cloud点云
点云(point cloud)是指透过3D扫描器所取得之资料型式。
扫描资料以点的型式记录,每一个点包含有三维座标,有些可能含有色彩资讯(R,G,B)或物体反射面强度。[1] - triangle/polygon mesh多边形网格
多边形网格(Polygon mesh)是三维计算机图形学中表示多面体形状的顶点与多边形的集合,它也叫作非结构网格。
这些网格通常由三角形、四边形或者其它的简单凸多边形组成,这样可以简化渲染过程。但是,网格也可以包括带有空洞的普通多边形组成的物体。 - 体素
体素或立体像素(voxel),是体积像素(volume pixel)的简称。概念上类似二维空间的最小单位——像素,像素用在二维电脑图像的视频数据上。体积像素一如其名,是数字数据于三维空间分区上的最小单位,应用于三维成像、科学数据与医学视频等领域。有些真正的三维显示器运用体素来描述它们的分辨率,举例来说:可以显示512×512×512体素的显示器。
如同像素,体素本身并不含有空间中位置的数据(即它们的坐标),然而却可以从它们相对于其他体素的位置来推敲,意即它们在构成单一张体积视频的数据结构中的位置。
2、计算几何中曲线曲面的表示
- subdivision, NURBS
- Bezier surfaces
- NURBS
3、Loop Subdivision细分
位移贴图 需要模型足够细致,于是需要细分(最好是动态细分)
- subdivision surfaces细分曲面
未完待续
提示:这里对文章进行总结: