华工计算机图形学与虚拟现实作业,计算机图形学与虚拟现实31.ppt

计算机图形学与虚拟现实31计算机图形学与虚拟现实31

Graphics Lab.PKU * * 计算机图形学是计算机技术、电视显示技术和图形信息处理技术相结合的一门学科。它研究有关对象的图形的计算机表示、生成、处理、视觉真实性实现的基本原理和基本技术。它是计算机领域中发展最迅速的学科之一,已广泛用于科学研究、工业和建筑设计、医学研究、文化教育、地理地质,益智娱乐、商业广告和军事等领域 * * 图形信息与文字信息相比具有直观、形象、含义丰富等优点,有着广泛的应用前景。但是图形的生成、表示、处理、存储和管理却比文字信息复杂得多。 * * * * 计算机图形学(Computer Graphics)是研究怎样用计算机生成、处理和显示图形的一门新兴学科. 国际标准化组织(ISO)定义为:计算机图形学是研究通过计算机将数据转换为图形,并在专门显示设备上显示的原理、方法和技术的学科。 * * 计算机图形学的研究内容 图形:计算机图形学的研究对象 能在人的视觉系统中产生视觉印象的客观对象 包括自然景物、拍摄到的图片、用数学方法描述的图形等等 构成图形的要素 几何要素:刻画对象的轮廓、形状等 非几何要素:刻画对象的颜色、材质等 结束 * * 计算机中表示图形的方法 点阵表示 枚举出图形中所有的点(强调图形由点构成) 简称为图像(数字图像) 参数表示 由图形的形状参数(方程或分析表达式的系数,线段的端点坐标等)+属性参数(颜色、线型等)来表示图形 简称为图形 * * 计算机图形学的研究内容 图形的输入 如何开发利用图形输入设备及软件将图形输入到计算机中 去,以便作各种处理。 图形的处理 包括对图形进行变换(几何变换,投影变换)和运算(集合运算),着色,形变等…… 图形的输出 如何将图形特定的表示形式转换成图形输出系统便于接受的表示形式,并将图形在显示屏或打印机等输出设备上输出。 * * 计算机图形学的研究内容 .与相关学科的关系 数字图像 数据模型 图像生成(计算机图形学) 模型(特征)提取 (计算机视觉,模式识别) 模型变换 (计算几何) 图像变换 (图像处理) .发展特点: 交叉、界线模糊、相互渗透 DIGITAL IMAGING: * * 用计算机生成、处理和显示图形的学科;由几何数据和几何模型,利用计算机进行显示并存储,并可以进行修改、完善以及有关操作的过程. 计算机图形学 * * 计算几何 研究几何模型和数据处理的学科,讨论几何形体的计算机表示、分析和综合,研究如何方便灵活、有效地建立几何形体的数学模型以及在计算机中更好地存贮和管理这些模型数据; * * * * 数字图象处理是将图像信号转换为数字格式并利用计算机进行处理的过程:图像获取、图像变换、图像增强、图像复原、图像编码、图像分析、图像识别、图像理解。 与计算机图形学的概念容易混淆的是图像处理。计算机图形学的基本含义是使用计算机通过算法和程序在显示设备上构造出图形来。与此相反,图像处理是将客观世界中原来存在的物体的影像处理成新的数字化图像的相关技术,并研究如何从图像中提取二维或三维物体的模型。它所研究的是计算机图形学的逆过程。 * * 计算机视觉和模式识别: 对所输入的图象进行分析和识别,找出其中蕴涵的内在联系或抽象模型;如邮政分检设备、地形地貌识别等; 图形学的逆过程,分析和识别输入的图像,并从中提取二维或三维的数据模型(特征)。手写体识别、机器视觉 * * 计算机图形学的研究内容涉及到用计算机对图形数据进行处理的硬件和软件两方面的技术,主要是围绕着生成、表示物体的图形图像的准确性、真实性和实时性的基础算法,大致可分为以下几类: * * (1)基于图形设备的基本图形元素的生成算法,如用光栅图形显示器生成直线、圆弧、二次曲线、封闭边界内的图案填充等。 (4)三维几何造型技术,对基本体素的定义、输入及它们之间的布尔运算方法。 (5)三维形体的实时显示,包括投影变换、坐标变换等。 (2)图形元素的几何变换,即对图形的平移、放大和缩小、旋转、镜像等操作。 (3)样条曲线和样条曲面的插值、拟合、拼接、光顺、整体和局部修改等。 * * (8)科学计算可视化和三维数据场的可视化,将科学计算中大量难以理解的数据通过计算机图形显示出来,从而加深人们对科学过程的理解。例如有限元分析的结果等;应力场、磁场的分布等;各种复杂的运动学和动力学问题的图形仿真等。 (7)山、水、花、草、烟、云等自然景物的模拟生成算法等。 (6)真实感图形的生成算法,包括三维图形的消隐、

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一、 1.Please download and install the glut library. 2.Write a complete program using the following codes to draw a Sierpinski gasket. void myinit() { // attributes glClearColor(1.0,1.0,1.0,1.0); glColor3f(1.0,0.0,0.0); // set up viewing glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluOrtho2D(0.0, 50.0,0.0,50.0); glMatrixMode(GL_MODELVIEW); } void display() { GLfloat vertices[3][3] = {{0.0,0.0,0.0}, {25.0, 50.0,0.0}, {50.0,0.0,0.0}}; // an arbitrary triangle in the plane z = 0; GLfloat p[3] = {7.5, 5.0, 0.0}; // or set any desired initial point which is inside the triangle; int j,k; int rand(); glBegin(GL_POINTS); for (k = 0; k < 5000; k++) { /* pick a random vertex from 0, 1, 2*/ j = rand()%3; // compute new location; p[0] = (p[0]+vertices[j][0])/2; p[1] = (p[1]+vertices[j][1])/2; // display new point glVertex3fv(p); } glEnd(); glFlush(); } #include void main(int argc, char **argv) { glutInit(&argc;, argv); glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB); glutInitAWindowSize(500,500); glutInitWindowPosition(0,0); glutCreateWindow(“Simple OpenGL Example”); glutDisplayFunc(display); myinit(); glutMainLoop(); } 3.实现 DDA 和 Bresenham 画线算法 (1)画10万以上随机生成的直线段,比较两个算法的平均时间. (2)分别把屏幕上的1*1,5*5, 9*9像素当作直线段上的一个点,观察线段的走样情况. 二、 请写一个OpenGL (如果熟悉WebGL也可以用)程序完成如下任务 (1)读入三维网格模型的obj文件; (2)用OpenGL函数glTranslatef()对模型模型进行平移,使得其重心位于原点; (3)用函数glLookAt()设置视点,并且要求试点绕模型一周,以便用透视投影观察各个侧面; (4)要求利用真实感绘制对模型进行渲染. (利用OpenGL函数设置光源,材质,计算好每个三角形的法向量后,利用OpenGL的glNormal函数给待绘制的三角形设置法向量). 绘制的结果大概如下: 三、 本实验为综合实验, 任务是利用光线跟踪算法进行Whitted全局光照计算,并对读入场景进行真实感绘制。(特别提醒: 网上类似的projects可以参考,但不能照抄. 如http://tobias.isenberg.cc/graphics/LabSessions/RaytracingProject, http://physbam.stanford.edu/links/ray_tracing/project_ray_tracing.html https://www.cs.utexas.edu/~fussell/courses/cs354/assignments/raytracing/handout.shtml ) (1)参加对象: 本实验针对所有选课同学,3-5人组成一个小组,共同实现;非15级同学在组队方面有困难的话可与老师沟通. (2)实验结果提交: 每人都要求提交一份. 内容包括 a.源程序; 可执行代码; 三维场景数据; 同组的同学这部分可以相同. b.实验报告; c.ppt一份, 应该有绘制结果的视频展示. (3)功能方面的基本要求: a.实现光线跟踪算法, 能利用Whitted光照模型对场景进行渲染; (optional) 通过亚像素采样实现反混淆. b.材质: 支持环境光、漫反射、高光反射、透射等光学现象; (optional)支持纹理绘制可加分. c.光源: 在场景中至少有一个点光源, 支持阴影; (optional)增加点光源数可加分). d.场景: 支持圆和三角网格模型; (optional)增加椭圆、参数曲面可加分. e.输入输出:读入网格模型文件,保存渲染像成位格式(bmp),渲染像的大小可通过参数调节;(optinal)可读入mtl材质库文件. f.加速:利用空间划分(八叉树或BSP)进行加速.

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值