蚂蚁文库
换一换
首页 蚂蚁文库 > 资源分类 > DOC文档下载
 

3D图像算法从入门到进阶(包含C实现)

  • 资源ID:50599456       资源大小:67.50KB        全文页数:26页
  • 资源格式: DOC        下载权限:游客/注册会员    下载费用:30积分 【人民币30元】
快捷注册下载 游客一键下载
会员登录下载
三方登录下载: 微信快捷登录 QQ登录  
下载资源需要30积分 【人民币30元】
邮箱/手机:
温馨提示:
支付成功后,系统会自动生成账号(用户名和密码都是您填写的邮箱或者手机号),方便下次登录下载和查询订单;
支付方式: 微信支付    支付宝   
验证码:   换一换

 
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,既可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰   

3D图像算法从入门到进阶(包含C实现)

3D图象算法 3D简介 我们首先从坐标系统起先。你或许知道在2D里我们常常运用笛卡儿坐标系统在平面上来识别点。我们运用二维X,YX表示水平轴坐标,Y表示纵轴坐标。在3维坐标系,我们增加了Z,一般用它来表示深度。所以为表示三维坐标系的一个点,我们用三个参数X,Y,Z。这里有不同的笛卡儿三维系统可以运用。但是它们都是左手螺旋或右手螺旋的。右手螺旋是右手手指的卷曲方向指向Z轴正方向,而大拇指指向X轴正方向。左手螺旋是左手手指的卷曲方向指向Z轴负方向。事实上,我们可以在任何方向上旋转这些坐标系,而且它们仍旧保持本身的特性。在计算机图形学,常用坐标系为左手坐标系手背向上,所以我们也运用它。 X 正轴朝右 Y 正轴向上 Z 正轴指向屏幕里 矢量 什么是矢量几句话,它是坐标集合。首先我们从二维矢量起先,X,Y例如矢量P4,5(一般,我们用-表示矢量)。我们认为矢量P代表点4,5,它是从原点指向4,5的有方向和长度的箭头。我们谈论矢量的长度指从原点到该点的距离。二维距离计算公式是 | P | sqrt x2 y2 这里有一个好玩的事实在1D(点在单一的坐标轴上),平方根为它的肯定值。让我们探讨三维矢量例如P4, -5, 9,它的长度为 | P | sqrt x2 y2 z2 它代表在笛卡儿3D空间的一个点。或从原点到该点的一个箭头代表该矢量。在有关操作一节里,我们探讨更多的学问。 矩阵 起先,我们从简洁的起先我们运用二维矩阵4乘4矩阵,为什么是4乘4因为我们在三维坐标系里而且我们须要附加的行和列来完成计算工作(本质缘由在计算机图形学里应用的图形变换,事实上是在仿射空间而不是向量空间中进行的)。在二维坐标系我们须要3乘3矩阵。着意味着我们在3D中有4个水平参数和4个垂直参数,一共16个。例如 4x4单位矩阵 | 1 0 0 0 | | 0 1 0 0 | | 0 0 1 0 | | 0 0 0 1 | 因为任何其它矩阵与之相乘都不变更,所以称之为单位阵。又例如有矩阵如下 | 10 -7 22 45 | | sina cosa 34 32 | | -35 28 17 6 | | 45 -99 32 16 | 有关矢量和矩阵的操作 我们已经介绍了一些特别简洁的基本概念,那么上面的学问与三维图形有什么关系呢 本节我们介绍3D变换的基本学问和其它的一些概念。它仍旧是数学学问。我们要探讨有关矢量和矩阵操作。让我们从两个矢量和起先 x1 , y1 , z1 x2 , y2 , z2 x1 x2 , y1 y2 , z1 z2 几何意义等于两个矢量组成的平行四边形的长对角线的矢量 两个矢量减法的几何意义等于两个矢量组成的三角形的另一条边的矢量 很简洁,现在把矢量乘于系数(数乘) k x, y, z kx, ky, kz 几何意义将矢量进行缩放 点积如下表示(点积是一个标量) x1 , y1 , z1 x2 , y2 , z2 x1x2 y1y2 z1z2 事实上,两个矢量的点积被它们的模的乘积除,等于两个矢量夹角的余弦(两个矢量的模与其夹角的余弦之积称为两个矢量的数量积(或称内积、点积))。所以 cos V W V W / | V | | W | 几何意义两个矢量的点积衡量着两个向量的角度关系。在物理上的意义假如两个矢量分别代表力和位移,那么两个矢量的点积就是功。 留意并不表示指数而是两个矢量的夹角。点积可以用来计算光线与平面的夹角,我们在计算阴影一节里会具体探讨。 现在探讨叉乘 x1 , y1 , z1 X x2 , y2 , z2 y1z2 - z1y2 , z1x2 - x1z2 , x1y2 - y1x2 几何意义叉乘的结果是一个伪向量,但是他的模是以此二向量为相邻两边的平行四边形面积 叉乘对于计算屏幕的法向量特别有用。 OK,我们已经讲完了矢量的基本概念。我们起先两个矩阵的和。它与矢量相加特别相像,这里就不探讨了。设I是矩阵的一行,J是矩阵的一列,i,j是矩阵的一个元素。我们探讨与3D变换有关的重要的矩阵操作原理。 矩阵相乘的几何意义把两次线性变换合成一次 两个矩阵相乘,而且M x N N x M。例如矩阵乘法是有依次的 A B 4x4矩阵相乘公式 假如 Aaij4x4, Bbij4x4, 那么 A x B | S a1jbj1 S a1jbj2 S a1jbj3 S a1jbj4 | | | | S a2jbj1 S a2jbj2 S a2jbj3 S a2jbj4 | | | | S a3jbj1 S a3jbj2 S a3jbj3 S a3jbj4 | | | | S a4jbj1 S a4jbj2 S a4jbj3 S a4jbj4 | 其中 j1,2,3,4 而且假如 AxBcik4x4 那么我们可以在一行上写下 cik S4, j1 aijbjk a1, a2, a3 x B Sumaibi1 b4,1, Sumaibi2 b4,2, Sumaibi3 b4,3 现在,我们可以试着把一些矩阵乘以单位矩阵来了解矩阵相乘的性质。我们把矩阵与矢量相乘结合在一起。下面有一个公式把3D矢量乘以一个4x4矩阵(得到另外一个三维矢量)假如Bbij4x4,那么 a1, a2, a3 x B Saibi1 b4,1, Saibi2 b4,2, Saibi3 b4,3 这就是矢量和矩阵操作公式。从这里起先,代码与数学之间的联系起先清晰。 变换 我们已经见过象这样的公式 t tx, ty x, y x tx, y ty 这是在二维笛卡儿坐标系的平移等式。下面是缩放公式 s k x, y kx, ky 旋转等式 r q x, y x cosq - y sinq, x sinq y cosq 以上都是二维公式,在三维里公式的形式仍旧很相近。 平移公式 t tx, ty, tz x, y, z x tx, y ty, z tz 缩放公式 s k x, y, z kx, ky, kz 旋转公式(围绕Z轴) r q x, y, z x cosq - y sinq, x sinq

注意事项

本文(3D图像算法从入门到进阶(包含C实现))为本站会员(BR2h)主动上传,蚂蚁文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知蚂蚁文库(发送邮件至2303240369@qq.com或直接QQ联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们


网站客服QQ:2303240369

copyright@ 2017-2027 mayiwenku.com 

网站版权所有  智慧蚂蚁网络

经营许可证号:ICP备2024020385号



收起
展开