新書推薦:
![汉阙漫漫隐官道 : 东汉二百年政争与兵事](http://103.6.6.66/upload/mall/productImages/24/30/9787522206059.jpg)
《
汉阙漫漫隐官道 : 东汉二百年政争与兵事
》
售價:HK$
227.7
![甲骨文丛书·魏玛共和国:1918~1933](http://103.6.6.66/upload/mall/productImages/24/30/9787522834030.jpg)
《
甲骨文丛书·魏玛共和国:1918~1933
》
售價:HK$
194.4
![中文版Photoshop数码照片处理全视频实践228例(溢彩版)](http://103.6.6.66/upload/mall/productImages/24/30/9787302665465.jpg)
《
中文版Photoshop数码照片处理全视频实践228例(溢彩版)
》
售價:HK$
135.7
![大乔小乔](http://103.6.6.66/upload/mall/productImages/24/29/9787542685162.jpg)
《
大乔小乔
》
售價:HK$
67.9
![文化遗产管理规划:场所及其意义](http://103.6.6.66/upload/mall/productImages/24/29/9787577209135.jpg)
《
文化遗产管理规划:场所及其意义
》
售價:HK$
101.2
![最后的奈良(一部日本土葬风俗消亡史,堪称日本土葬资源抢救工程的“世纪奇书”)](http://103.6.6.66/upload/mall/productImages/24/31/9787220135194.jpg)
《
最后的奈良(一部日本土葬风俗消亡史,堪称日本土葬资源抢救工程的“世纪奇书”)
》
售價:HK$
98.9
![古籍目录版本校勘文选(平装)](http://103.6.6.66/upload/mall/productImages/24/31/9787211090211.jpg)
《
古籍目录版本校勘文选(平装)
》
售價:HK$
89.7
![巴比伦怪物:魏玛共和国犯罪鉴证实录(“火与风”丛书)](http://103.6.6.66/upload/mall/productImages/24/30/9787532796397.jpg)
《
巴比伦怪物:魏玛共和国犯罪鉴证实录(“火与风”丛书)
》
售價:HK$
101.2
|
編輯推薦: |
本书具有以下特色:
(1)涵盖二维和三维图形的基本概念和原理。
(2)演示使用MATLAB编程解决图形问题。
(3)提供MATLAB代码作为特定数值问题的答案。
(4)为初学者提供简单复制和执行格式的代码。
(5)专注于通过大量使用图形和图表的视觉表现来学习。
(6)通过实际例子帮助读者深入了解主题。
(7)包含复习题和练习题,并附有自我评估的答案。
|
內容簡介: |
本书介绍二维和三维图形的基本概念和原理,是为计算机科学、图形学、多媒体和数据科学等方向的本科生、研究生和工程技术人员编写的图书。本书演示了使用MATLAB编程来解决与图形相关的问题,并讨论了各种生成图形以及可视化图形的工具。本书涵盖的重要概念包括变换、投影、表面生成、参数表示、曲线拟合、插值、向量表示以及纹理映射,这些内容广泛应用于教育和研究领域。本书通过大量的实例和编程代码说明了理论概念,并可用于可视化和验证结果。
|
關於作者: |
作者:兰詹·帕雷克(Ranjan Parekh),工程学博士,印度贾达夫普尔大学(加尔各答)教育技术学院教授,在研究生阶段讲授与图形和多媒体相关的研究生课程。研究兴趣包括多媒体信息处理、模式识别和计算机视觉等。著有《多媒体原理》《MATLAB 图形学基础》《MATLAB图像、音频和视频处理基础:模式识别应用》等图书,发表多篇学术文章。译者:章毓晋(ZHANG Yu-Jin),比利时列日大学应用科学博士,荷兰德尔夫特大学博士后及研究人员。清华大学教学科研系列长聘教授教授,博士生导师,教学科研系列长聘教授。2003年学术休假期间同时被聘为新加坡南洋理工大学访问教授。
在清华大学,先后开设并讲授10多门本科生和研究生课程。在南洋理工大学,开设并讲授过研究生课程:“现代图像分析(英语)”。已出版50多部中英文图书,发表500多篇学术文章。
现为中国图象图形学学会名誉监事长,中国图象图形学学会会士,国际光学工程协会学会(SPIE)会士(因在图像工程方面的成就)。
|
目錄:
|
第1章插值样条
1.1引言
1.2线性样条(标准形式)
1.3线性样条(参数形式)
1.4二次样条(标准形式)
1.5二次样条(参数形式)
1.6三次样条(标准形式)
1.7三次样条(参数形式)
1.8分段样条(标准形式)
1.9分段样条(参数形式)
1.10本章小结
1.11复习题
1.12练习题
第2章调和函数和混合样条
2.1引言
2.2调和函数
2.3插值样条的调和函数
2.4厄米特样条
2.5基数样条
2.6卡特穆尔罗姆样条
2.7贝塞尔样条
2.8样条转换
2.9本章小结
2.10复习题
2.11练习题
第3章近似样条
3.1引言
3.2线性均匀B样条
3.3改变控制点的数量
3.4二次均匀B样条
3.5结向量值的证明
3.6二次开放均匀B样条
3.7二次非均匀B样条
3.8三次均匀B样条
3.9本章小结
3.10复习题
3.11练习题
第4章二维变换
4.1引言
4.2齐次坐标
4.3平移
4.4缩放
4.5旋转
4.6定点缩放
4.7定点旋转
4.8反射
4.9定线反射
4.10剪切
4.11仿射变换
4.12透视变换
4.13观察变换
4.14坐标系统变换
4.15本章小结
4.16复习题
4.17练习题
第5章样条性质
5.1引言
5.2关键点
5.3切线和法线
5.4曲线长度
5.5曲线下面积
5.6质心
5.7插值和曲线拟合
5.8关于二维绘图函数的说明
5.9本章小结
5.10复习题
5.11练习题
第6章向量
6.1引言
6.2单位向量
6.3方向余弦
6.4点积
6.5叉积
6.6直线的向量方程
6.7平面的向量方程
6.8向量对齐(二维)
6.9齐次坐标(二维)中的向量
方程
6.10齐次坐标(三维)中的向量
方程
6.11法向量和切向量
6.12本章小结
6.13复习题
6.14练习题
第7章三维变换
7.1引言
7.2平移
7.3缩放
7.4旋转
7.5定点缩放
7.6定点旋转
7.7与主轴平行的旋转
7.8向量对齐(三维)
7.9围绕向量旋转
7.10围绕任意线旋转
7.11反射
7.12剪切
7.13本章小结
7.14复习题
7.15练习题
第8章曲面
8.1引言
8.2参数曲面
8.3贝塞尔曲面
8.4隐式曲面
8.5拉伸曲面
8.6旋转曲面
8.7法向量和切平面
8.8旋转曲面的面积和体积
8.9纹理映射
8.10曲面照明
8.11关于三维绘图函数的
说明
8.12本章小结
8.13复习题
8.14练习题
第9章投影
9.1引言
9.2二维投影
9.3三维投影
9.4多视图投影
9.5轴测投影
9.6缩短因子
9.7等轴测、双轴测和三轴测
9.8斜投影
9.9透视投影
9.10本章小结
9.11复习题
9.12练习题
附录AMATLAB 函数汇总
附录B练习题答案
参考文献
主题索引
|
內容試閱:
|
本书介绍了二维和三维图形的基本概念和原理,是为学习图形或多媒体相关学科的本科生和研究生编写的。大多数有关图形的书籍都使用C编程环境来说明具体实现。本书没有采用这种常见做法,而是基于MATLAB并介绍了MATLAB的使用。MathWorks公司的 MATLAB是一种适用于算法开发和仿真应用的数据分析和可视化工具。MATLAB的优点之一是它包含大量内置函数库,与其他编程环境相比,可减少用于程序开发的时间。本书假设读者已经具备MATLAB的基本知识,尤其是各种矩阵运算和绘图函数。MATLAB代码已作为特定示例的答案提供,读者可以简单地复制和粘贴代码来执行。通常,代码显示预期结果的答案,如曲线方程、混合函数和变换矩阵,并绘制终结果以提供解决方案的可视化表示。本书的目标是,首先,演示如何使用MATLAB解决图形问题; 其次,通过视觉表示和实际示例帮助读者深入了解该主题。
本书大致分为两部分: 二维图形和三维图形,尽管在某些地方这两个概念重叠,这主要是为了突出它们之间的差异,或者是为了使用更简单的概念让读者为更复杂的概念做好准备。
本书的部分主要涉及与二维图形相关的概念和问题,共分为5章: ①插值样条; ②调和函数和混合样条; ③近似样条; ④二维变换; ⑤样条性质。
第1章介绍了各种类型的插值样条曲线及其使用多项式的表示。本章详细讨论了关于样条方程如何推导的理论概念和所涉及的矩阵代数,然后通过数值示例和MATLAB代码来说明这些过程。大多数示例后面都给出了图形,以使读者能够直观地看到方程如何在给定起点、终点和其他相关参数的情况下转换为相应的曲线。本章还强调了使用线性、二次和三次变体的样条方程的标准或空间形式和参数形式在这些过程中的差异。
第2章介绍了调和函数的概念,以及如何使用这些函数为混合样条推导方程,这些混合样条仅通过其控制点的一个子集,或者使用控制点以外的条件来推导其方程。具体来说,本章涉及厄米特样条、基数样条、卡特穆尔罗姆样条和贝塞尔样条。对于贝塞尔样条,其二次和三次变体都与用于制定其调和函数的伯恩斯坦多项式一起讨论。与其他章节一样,理论概念之后是数值示例、MATLAB代码和可视化图形。本章后讨论了如何将一种样条类型转换为另一种样条类型。
第3章讨论了如何导出多项式方程来逼近不通过任何控制点的样条曲线,以及如何计算它们的调和函数。具体来说,本章详细讨论了Cox de Boor算法以及如何使用它来推导线性、二次和三次B样条的方程。本质上,B样条由多个在连接点处具有连续性的曲线段组成。连接点处的参数变量的值存储在称为结点向量的向量中。若结点值是等间距的,则生成的样条称为均匀B样条; 否则,称其为非均匀的。当结点向量值重复时,B样条称为开放均匀的。本章提供了结点向量的表示,并说明了如何借助向量中的间距生成上述变体。与以前一样,理论概念之后是数值示例、MATLAB代码和可视化图形。
第4章正式介绍了二维坐标系,然后建立了可以按统一的方式表示所有变换的齐次坐标系的基础。二维变换用于改变二维平面中样条线的位置、方向和形状。这些变换是单独或两个或多个组合应用的平移、旋转、缩放、反射和剪切变换; 因此,它们被称为复合变换。给定一个点的已知坐标,这些变换中的每一个都由一个矩阵表示,当乘以原始坐标时,会产生一组新的变换坐标。首先导出变换矩阵,然后使用示例、MATLAB代码和图形说明它们的应用。对仿射和透视变换类型都进行了讨论。本章后讨论了用于将窗口映射到视口的观察变换,以及用于在多个坐标系之间映射的坐标系变换。
第5章列举了样条曲线的一些常见性质,以及如何从样条曲线方程计算这些性质。个性质是称为样条曲线的小值和值的关键点。此外,对于三次或以上的样条曲线,拐点(POI)也很重要。第二个性质是样条曲线的切线和法线。曲线的切线是曲线方程的导数,而法线是垂直于切线的直线。第三个性质是计算任意两个给定点之间的样条曲线的长度,包括空间方程和参数方程。第四个性质是计算曲线下的面积,曲线以主轴和两条水平或垂直线为界。对此的扩展是计算由两条曲线界定的面积。第五个性质是计算区域的质心,即密度均匀的板块的重心点。本章后讨论了数据点的插值和曲线拟合,并列出了一些用于绘制二维图形以及用于绘图的常见内置MATLAB函数。
本书的第二部分侧重于与三维图形相关的概念和问题,并跨越其余4章,即⑥向量; ⑦三维变换; ⑧曲面; ⑨投影。
第6章介绍了向量的概念及其在二维和三维空间中的数学表示。向量涉及幅度和方向,它们用沿主轴的单位量级的正交参考分量以及一组比例因子来表示。本章讨论如何将向量相加和相乘。向量积可以是标量,称为点积,也可以是向量,称为叉积。使用这些概念,将详细介绍如何导出线和平面的向量方程。接着,讨论如何将向量对齐到特定方向,后讨论如何使用齐次坐标表示向量方程。本章以如何计算曲线的切向量和法向量的内容结束。与以前一样,理论概念之后是数值示例、MATLAB代码和可视化图形。
第7章演示了如何将三维变换视为二维变换的扩展。这些三维变换用于更改三维空间中样条线的位置、方向和形状。这些变换是单独或两个或多个组合应用的平移、旋转、缩放、反射、剪切变换,称为复合变换。本章正式介绍了一个三维坐标系,然后使用齐次坐标导出上述操作的变换矩阵。接下来使用示例、MATLAB代码和可视化图形来说明它们的应用程序。本章的后半部分处理三维空间中的向量对齐,并使用这些概念推导出三维空间中围绕向量和任意线的旋转矩阵。
第8章介绍了如何使用参数和隐式方程创建和表示曲面,以及曲面的性质如何取决于方程的参数。根据创建过程,曲面可以分为拉伸曲面和旋转曲面,这两种曲面都通过示例和图形图进行了讨论。然后本章介绍如何计算曲面的切平面,并提供计算曲面面积和体积的方法。本章的后半部分涉及表面外观,即如何在表面上映射纹理以及如何使用照明模型确定表面上某个点的亮度强度。本章后讨论了一些用于绘制三维图形的常用内置MATLAB函数。
第9章研究了各种类型的投影,并为每种类型推导了矩阵。投影用于将高维对象映射到低维视图。投影可以有两种类型: 平行和透视。在平行投影中,投影线彼此平行; 而在透视投影中,投影线将会聚到参考点。平行投影又可以有两种类型: 正投影和斜投影。在平行正投影中,投影线垂直于视平面,而在平行斜投影中,投影线可以与视平面成任意朝向角度。通常对于三维投影,平行正投影也可以细分为两种: 多视图和轴测。在多视图投影中,投影发生在主要平面上,即XY平面、YZ平面或XZ平面上,而在轴测投影中,投影发生在任意平面上。本章使用示例、MATLAB代码和可视化图形说明每种类型的投影。
每章后面都附有该章的要点汇总。每章末尾提供了一组复习题和一组练习题,以供自我评估。本书包含90多个已求解的数值示例及其对应的MATLAB代码,另外还有90道练习题。鼓励读者执行示例中给出的代码,并编写自己的代码来解决实际问题。本书中给出的大多数MATLAB代码都需要MATLAB 2015或更高版本才能正确执行。书中提到的一些功能是从2016版本开始专门引入的,并在适当的地方提到了这些功能。本书演示了大约70种与图形和绘图相关的不同MATLAB函数的用法,附录A提供了这些函数的列表和简短描述。请读者使用MATLAB帮助实用程序获取有关这些函数的更多信息。MATLAB代码以冗长的方式编写,以方便希望更好地理解该主题的初学者。有些代码本可以用更紧凑的方式编写,但这可能会降低它们的可理解性。本书中包含了大约170幅图形和绘图,以帮助读者获得问题的正确可视化线索,尤其是对于三维环境。练习题的答案见附录B。
欢迎所有读者就本书的内容以及任何遗漏或文字错误提供反馈。
Ranjan ParekhJadavpur University
|
|