遥感专业“计算机图形学”教学改革探讨

2014-07-25 00:29刘婷婷张洪艳
大学教育 2014年11期
关键词:计算机图形学图形学上机

刘婷婷 张洪艳

[摘要]“计算机图形学”课程的教学和上机实践能使学生全面地了解计算机图形系统软硬件技术,掌握图形生成与处理技术的基础知识、原理和方法,并培养学生利用计算机解决图形问题的程序设计能力。

[关键词]计算机图形学遥感专业教学改革

[中图分类号]G642.0[文献标识码]A[文章编号]2095-3437(2014)11-0138-02“计算机图形学”是建立在传统图形学理论、现代数学和计算机等学科上的一门新兴学科,并且随着计算机软硬件的发展而不断拓展。[1]“计算机图形学”的软硬件已经发展为一个巨大的产业,从事该行业研发的团队也日渐庞大,因此“计算机图形学”已成为计算机专业的必修课。同时,由于计算机图形学应用范围广,也逐渐成为相关学科的必修或专业选修课程。

一、“计算机图形学”课程的教学现状

“计算机图形学”内容丰富、理论性强、算法体系庞大等特点造成该课程的理论枯燥且方法难懂,[2]在一定程度上影响了学生学习该课程的积极性和主动性。同时,该课程是一门理论与实践相结合的课程,仅重视理论讲授而忽略了上机实践,往往容易造成理论与实践脱节。此外,现在大部分图形生成、变换等的编程都可以利用一些便捷的函数库实现,如OpenGL、GDAL等,如果不有效利用这些函数库则在一定程度上降低了编程的效率。

针对遥感专业的本科学生开设“计算机图形学”这门课程,主要希望学生建立计算机图形与遥感影像之间的联系,为“数字图像处理”课程等遥感影像处理类课程打基础。然而,大部分遥感专业的本科生计算机基础较差且编程能力较弱,使得对于“计算机图形学”的一些方法、算法的理解较片面,理论算法无法利用编程实现,“计算机图形学”与遥感影像的联系无法建立。

通过以上分析可以发现,针对“计算机图形学”课程采用传统的课堂讲授理论,课下让学生去做实验的教学方式很难达到预期的教学效果,急切需要探讨新的教学思路和教学方法。

二、“计算机图形学”课程的教学改革

(一)教学内容改革

国内大部分教材的编排顺序是从底层图像输入、显示等设备、系统、标准、交互技术及用户接口等内容开始,然后过渡至基本图形生成算法、曲线曲面等图形绘制方法,最后介绍真实图形的处理算法。虽然全书的知识结构是由底层至高层的学习过程,但是知识点相对独立、不连贯,使得学生无法清晰地把握课程的总体结构,因此需要对课程的教学内容进行重新组织。以“基本图形生成算法”一章为例,可利用以下方式进行组织讲解:

1.空间的三要素是点、线和面,任一直线和面都可由单一的像素点构成;

2.直线、圆和椭圆可以通过扫描转换的方式生成,生成过程中需要考虑边宽;

3.多边形(二维平面)可通过区域填充的方式生成,生成过程中需要考虑各像素的颜色;

4.由于会受到屏幕、视图窗口等大小的限制,生成的点、线或者面可能超出边界范围,可通过裁剪的方式优化图形显示;

5.由于受到显示器分辨率的限制,使得图形边缘发生锯齿状形变,一味地通过提高显示器分辨率解决这一问题将会导致硬件的投入无限制地增加,因此可通过反走样这一软件方式优化图形显示效果。

(二)教学方式的探索

为提高教学质量,让学生牢固地掌握知识结构中重要的知识点,课堂授课必须采用多种形式。

1.多媒体教学

采用多媒体教学与传统教学相结合的方式,充分发挥多媒体的优势,使得教学更形象生动。例如,展示计算机图形学在各行各业应用的图片,播放基于虚拟现实技术的虚拟校园视频,使得枯燥的“计算机图形学”发展历程介绍变成生动的图片和影像片段等。

2.对比式教学

对比式教学即对解决同一问题的不同方法进行比较,通过分析不同方法的异同点,加深学生对方法的理解。例如,可以比较Bezier及B样条曲线曲面的基本概念、性质和构造公式,并采用图示的方式比较它们的平滑效果和弯曲程度等。[3]

3.自主式学习

本科生已经可以在老师的指导下自主地完成一部分学习任务。例如,在详细介绍直线的生成算法后,老师和学生以问答的形式完成圆的生成算法学习,并鼓励学生课后自学椭圆的生成算法,下一次课由某位学生上台讲解,老师再对该算法的重要步骤进行强调。通过自主式学习方式,其一能够提高学生的自学能力,其二能够加深学生对学习内容的理解。

4.多学科相结合式教学

“计算机图形学”和遥感图形处理研究的内容具有很大的差异。“计算机图形学”是研究怎样利用计算机生成、处理和实现图形的学科,而遥感影像处理则研究影像的量化、滤波、边缘提取、特征增强等。“计算机图形学”课程的学习如何为“遥感影像处理”等后续课程的学习做铺垫,已成为开设该课程的目的之一,因此需要在讲授时将两门课程的部分内容相结合。以图形裁剪为例:“计算机图形学”中图形裁剪即将超出显示边界的部分裁剪,保留显示边界内的部分;而利用遥感影像进行地图显示与漫游时,通常设置一个虚拟显示区域,该区域通常比显示区域大,主要考虑在影像漫游时读取数据更快。

(三)上机实践改革

利用OpenGL开展“计算机图形学”的实验,对学生理解图形学的相关知识、提高学生的学习兴趣及提升学生在图形图像方面的程序开发能力都非常有好处。因此,将OpenGL函数库引入“计算机图形学”的上机实践中,要求所有的上机实践都在安装了GLUT的Visual C++6.0环境下进行。

由于“计算机图形学”课程的上机实践时间非常有限,不能全面而深入地讲解OpenGL的技术框架及后续应用,需要结合“计算机图形学”课程中的相关图形算法进行有针对性的讲解与上机实践,具体需要注意以下两个方面:

1.合理安排上机实践内容及时间

由于有限的上机时间,既不能跳过OpenGL编程初步又不能压缩图形算法的实践时间,需对上机实践项目做合理安排。

(1)该实验内容为:OpenGL的安装;GLUT框架的使用;基本内容讲解;DDA、Bresenham 直线生成算法的实现;中点圆算法的实现。通过该实验使学生了解OpenGL定义图形的机制、GLUT框架的使用方法,验证课本中的DDA、Bresenham 直线生成算法以及中点圆算法并通过OpenGL GLUT框架的显示回调函数进行调用;

(2)该实验内容为:熟悉 OpenGL 中对颜色的设置;边界填充算法的理解与实现;扫描线填充算法的理解与实现。实验2意在让学生验证边界填充算法和扫描线填充算法的编码实现,通过逐点显示区域填充更直观地了解填充算法,体会填充算法的思想;

(3)该实验内容为:掌握 OpenGL 下的平移、旋转、缩放变换方法及组合变换;梁友栋-Barskey 线段裁减算法的实现。实验3意在让学生验证平移、旋转、缩放变换的原理,学习 OpenGL 下的几何变换函数glTranslate、glRotate和glScale等,然后验证梁友栋-Barskey 线段裁减算法并介绍OpenGL 中的裁剪窗口函数gluOrtho2D 与视区函数 glViewport。

2.灵活调整学生上机实践的难易

计算机图形学课程中有很多经典算法,通过上机实践能够促进学生理解算法的原理、累计图形编程的技巧。[4]但是,冗长的算法代码、复杂的数据结构使得学生很难独立地在有限的上机实践时间中完成,如果学生毕业后从事“计算机图形学”方面的软件开发等工作,也不再利用这类底层算法而是建立在高层API基础上进行开发。因此,可针对学生个人编程能力的差异,灵活地调整实践内容的难易程度,或者给出一个不完整的错误程序让学生进行补充修改,提高他们的个人能力及主观积极性。

三、结语

“计算机图形学”课程的改革是一个长期的过程,改革实践交替向前的过程。新技术的产生、交叉学科的发展等都将促进“计算机图形学”课程的教学向着全新的方向发展。同时,教师也应充分发挥自身的创造性,通过教学不断地总结经验,进行突破创新,不断地激发学生的潜能,提高学生学习的主观能动性。

[参考文献]

[1]段江.“计算机图形学”教改研究与实践[J].计算机教育,2008(13):80-82.

[2]张玉新,张月清,卜治国,等.“计算机图形学”算法可视化教学研究与实现[J]. 河北农业大学学报(农林教育版),2009(11):236-239.

[3]周芳芳,赵颖.高校“计算机图形学”教学改革探索[J].科技信息,2008(15):11-14.

[4]袁国武,徐丹,赵杨.“计算机图形学”实验课程改革经验与探索[J].教改纵横, 2009(15):29-32.

[责任编辑:钟岚]

猜你喜欢
计算机图形学图形学上机
周金应
标准化护理程序对体外膜肺氧合术患者上机各阶段用时的影响
计算机图形学与图形图像处理技术
用面向科学思维的教学方法改进计算机图形学课程教学
三维投影变换的MATLAB实现
突出实践需求的GIS专业《计算机图形学》课程优化改革
待换
第7届国际图象图形学学术会议
非计算机专业计算机图形学教学改革初探
《计算机图形学基础教程》(第2版)