前言:一篇好文章的诞生,需要你不断地搜集资料、整理思路,本站小编为你收集了丰富的计算机视觉案例主题范文,仅供参考,欢迎阅读并收藏。
关键词:计算机视觉;研讨式教学;小组探讨;课前回顾
作者简介:陈芳林(1983-),男,湖南株洲人,国防科学技术大学机电工程与自动化学院,讲师;周宗潭(1969-),男,河南洛阳人,国防科学技术大学机电工程与自动化学院,教授。(湖南 长沙 410073)
中图分类号:G643.2 文献标识码:A 文章编号:1007-0079(2013)26-0065-02
进入21世纪,创新型人才的培养成为各国政府和高等教育界关注的一个焦点。世界各国研究型大学的共同特点是在研究生教育阶段致力于培养富有创新意识和创新能力的高级人才。[1]研讨式教学是培养研究生创新精神、科研能力的有效途径,教师讲解与学生探讨两部分相结合是研讨式教学采用的主要模式。[2]将课程分成两部分之后,教师讲解的时间就必须压缩,教师一方面需要思考如何在较短的时间内完成课程的讲解,同时还需要考虑课程讲解要与学生探讨部分紧密结合。因此,如何上好研讨式教学教师讲解这部分课,越来越受高等院校的重视。本文针对笔者教授工科研究生课程“计算机视觉”的实践与经验,阐述了笔者对于如何上好研讨式教学教师讲解这部分课的个人体会。总结为两点:第一,首先要充分做好课程准备;第二,上课环节采取回顾—案例—小结的讲解方式。下面从课程准备、课前回顾、课程讲解、课后小结四个方面分别阐述(如图1所示)。
一、“计算机视觉”课程准备
要上好一门研讨式教学的课程,一定要结合该门课程的特点,量身定制课程内容,进行精心准备。本节先介绍“计算机视觉”课程的特点,然后结合该门课程的特点,介绍笔者对于“计算机视觉”的课程准备。
1.“计算机视觉”课程特点
“计算机视觉”是“数字图像处理”和“模式识别”等课程的后续课程。该课程重点在于图像或者图像序列的分析理解。课程知识在机器人导航、侦查、测绘、测量、精密加工和目标跟踪等多个领域都有广泛的应用。[3]近年来基于视觉信息的控制反馈也开始受到广泛关注。国内高校一般都为研究生开设了此门课程。
计算机视觉技术应用广泛、算法原理涉及面广:涉及到概率与数理统计、信号与系统、图像等基础知识。“计算机视觉”是一门重要的控制类、电子类及计算机类专业研究生的选修课程,它内容广泛、综合性强,研讨能力的培养显得非常关键。
2.课程准备
首先,结合“计算机视觉”课程内容广泛、技术日益更新和丰富的特点,将课程36学时分为12次课,每次课为3小时,每堂课教师讲解一个专题。这种设计,一方面可以更广地涉及计算机视觉的各个领域;另一方面以专题的形式来讲解,可以将学生带入到该专题,介绍基本背景、理论、知识和方法,让学生有一个初步的了解,方便课后学生对感兴趣的专题进一步深入挖掘与研究。
其次,在课程开始之前,教师仔细统筹,安排好每次课的专题,这样既方便学生一开始对整个课程有一个整体的了解,也方便学生选择课堂研讨的题目与内容。根据12个专题,将各个专题讲解的内容与课件在开课之前准备好,这样有利于把握各个专题之间的前后承接关系。例如,“区域”与“分割”是既有区分又有联系的两个专题,在课程开始之前,将课件准备好,就有利于宏观把握,在“区域”专题提到的分割算法,就不需要在“分割”专题再次重复,而在“分割”专题可以结合前面“区域”专题进行互相补充,以帮助学生融会贯通。
最后,在每个专题上课之前,再对课件进行精雕细琢,主要是对内容分好层次,对方法进行分类,力图在较短的时间内,让学生对该专题有较全面的认识。例如,在讲解图像分割时,由于图像分割方法非常多,可以将分割方法分为若干个大类,每个大类只讲1~2个方法。这样既可以尽可能涉及更广的领域,又可以提高讲解的效率。
二、“计算机视觉”课前回顾
课前回顾是指每堂课的前面一小段时间用来回顾上一堂课的内容。虽然课前回顾时间非常短,一般为3~8分钟,但是课前回顾是课堂教学中的一个重要环节。课前回顾可以帮助学生加强将要学习的内容与已学过内容之间的联系。通过课前回顾,学生可以回忆前续课程所讲解的概念、理论、算法的步骤等内容,有助于解决新问题或者理解新知识。
课前回顾最重要的是既要复习前续课程的内容,又要注意将前续内容与当前内容联系起来。由于讲解时间有限,要使研讨式教学的教师讲解部分效率高,教师帮助学生回忆上堂课的概念、模型、算法等内容,就变得非常重要。如果不做课前回顾,那么当讲到某处新知识时,往往需要停下来,将前续课程再讲一遍,否则学生无法理解新的知识,这样就降低了教学的效率。
课前回顾的时间,一般以3~8分钟为宜。课前回顾的形式可以多样化,如讲解课后作业、回顾概念、提问等。笔者认为应根据当天课程与前续课程的关系,采取合适的方式。各种方式结合使用,提高课前回顾的效率。
三、“计算机视觉”课程讲解——案例教学
案例教学已经成功地应用于数学、计算机科学等领域的教学。通过案例,学生可以很快地掌握相应的概念、算法的步骤等,从而提高教师讲解部分的效率。[4]例如,在讲解马尔科夫随机场时,笔者通过案例式教学,将马尔科夫随机场用一个生活中的例子来向学生解释。首先,将马尔科夫随机场分解成两个重要的概念,分别是随机场与马尔科夫性,然后将它们对应到例子中,帮助学生理解。
随机场包含两个要素:位置(site)和相空间(phase space)。当给每一个“位置”中按照某种分布随机赋予“相空间”的一个值之后,其全体就叫做随机场(如图2(a))。[5]这个概念非常抽象,难以理解。笔者应用案例式教学,拿庄稼地来打比方。“位置”好比是一亩亩农田,“相空间”好比是种的各种庄稼。给不同的地种上不同的庄稼,就好比给随机场的每个“位置”,赋予“相空间”里不同的值。所以,可以形象地理解随机场就是在哪块地里种什么庄稼的布局(如图2(b))。
马尔科夫性指的是一个随机变量序列按时间先后顺序依次排开时,第N+1时刻的分布特性,与N时刻以前的随机变量的取值无关。为了更直观地理解马尔科夫性,笔者仍然拿庄稼地打比方,如果任何一块地里种的庄稼的种类仅仅与它邻近的地里种的庄稼的种类有关,与其他地方的庄稼的种类无关,这种性质就是马尔科夫性。
符合上述两个特征,那么这些地里种的庄稼的集合,就是一个马尔科夫随机场。通过案例式教学,笔者发现可以加深加快学生对课程内容的理解,提高教师讲解环节的效率。
四、课后小结
课后小结指的是一堂课将要结束时,教师对本堂课进行一个简短的总结。许多成功的教师都会在其教学中坚持课后小结这个环节,给学生一个总体的印象,以帮助学生消化本次课程的内容。
研讨式教学教师讲解部分的课后小结与普通教学方式应有所区别。笔者认为这主要是因为通过课后小结可以将本次课程所讲内容与学生的研讨环节结合起来,而不仅仅是对内容进行简单的总结。
为了达到课后小结使本次课程内容与学生探讨环节建立联系的目的,笔者在教学中常采用如下方式:首先,像普通教学方式一样,总结本次课程内容;然后,在此基础上,抛出若干问题,这些问题,不需要学生马上解答,而是留给学生课后思考,提供他们选择研讨主题的素材;最后,介绍其他在本次课程中没有涉及到的前沿知识、方法与理论,拓宽学生的视野,从而增加学生选择探讨主题的覆盖面。
通过应用这种方式,笔者发现学生的思维更开阔,在探讨环节,学生往往可以选择一些比较新颖的主题(例如视频中不动点的检测等),而不仅仅局限于教师所讲内容,从而提高了研讨式教学的效果。
五、结论
在“计算机视觉”课程中引入研讨式教学,通过总体设计规划好整门课程内容,课堂讲解注意采用回顾—案例—小结的方式,笔者对如何上好研讨式教学教师讲解这部分课进行了个人经验的总结。通过本次教学改革,笔者体会到如果要提高教学效果,一定要注意教师讲解与学生探讨两个环节的紧密结合。
参考文献:
[1]侯婉莹.我国研究型大学本科生科研研究[D].济南:山东大学,
2009.
[2]张晴,李腾,韦艳,等.研讨式教学模式的理论研究[J].中国科技纵横,2011,(10).
[3]D.H .巴拉德.计算机视觉[M].北京:科学出版社,1987.
关键词:农业机械;技术手段;应用;发展前景
我国在国际上的地位正在逐渐提高,这与我国的经济发展是分不开的,经济的发展需要基础的支持,农业就是我国的基础,我国是农业大国,农村人口基数大。随着近几年我国农业的发展,很多高新技术也被运用到农业的机械设备中,使农机设备向着智能化的方向发展,有效地提升了农业生产的整体效率。在农业的生产中使用高新技术还能够提高农业的生产效率,保证农机相关机械的正常运作。
1农业机械技术的应用分析
1.1计算机技术
这里所说的计算机技术主要指的是计算机视觉技术,这一技术最早被运用在农业机械上是在20世纪70年代中期,当时主要运用的是计算机技术中的视觉技术,利用这一技术的主要目的是可以对农产品的品质质量进行分级别检查。计算机视觉技术是以图像处理为基准,随着图像处理以及视觉模拟技术的发展,计算机视觉技术不仅可以用来检查农产品的品质,而且还可以用来对农产品进行播种、收割。虽然计算机视觉技术在我国农业技术领域的应用时间还不是很长,在实际的使用中还有很多的问题出现,但是相信随着科学技术的不断发展,计算机视觉技术必将会改变传统的农业作业模式,为现代化农业发展提供技术上的支持。
1.2网络信息技术
网络信息技术在我国农业机械上的应用是非常成功的,信息技术与地理信息系统的有机结合不仅可以为农业的生产提供高精度的监控,而且还能够对农业生产中出现病虫害的情况进行及时的检测,然后根据定位系统来进行田间作业。
1.3液压技术
液压技术主要依靠的是微电子技术和工业传感技术,在数据的采集上,运用液压技术主要完成的是能量的转换和匹配,其目的是为了让农业机械的效率能够得到进一步的提高,让机械设备的相关系统特征可以得到完善,让机械设备的可靠性能够得到提升,这也很好地符合了环境保护的相关标准要求。而大部分的农业机械都是采用内燃机作为原动力,所以很多时候都会出现工作负荷,一般情况下,我们都是通过电液控制手段来完成负载与原动力之间的匹配情况,尽可能地减少功率传输过程中出现的损失,从而提高农业机械系统的工作效率。
1.4人工智能技术
随着信息全球化的不断深入,高端技术不仅在大型的企事业单位中被运用,在农业中也得到了广泛的应用,比较有成果的就是美国利用人工智能技术研发出激光拖拉机、机械的内部导航装置,等等,这些装置可以对拖拉机的运行方向及所处位置进行实时的测定,在了解地区土地信息之后,再制定合理的土地种植方案、农药及种子的数量,等等。
2农业机械技术的发展趋势
2.1推广农业机械产品的技术发展
目前在我国的农业机械发展上,已经开始运用机电智能化技术和计算机技术,这使得农业机械化设备的科技含量有了极大的提高,不仅有效地提高了农业机械的作业效率,而且也提升了农业的生产效率。
2.2农业资源的利用率得到了提升
只有提高了农业资源的开发利用率,才能够确保农业实现可持续发展,同时也为保护生态环境奠定基础,如回收农业生产的废弃物,普及无害化的处理设备,运用无害化技术来处理废水可以有效地达到保护环境的作用。而在农业种植的过程中,使用有机肥料还可以进一步提高农业资源的利用效率。除此之外,大力发展节能型动力机械设备可以有效地避免出现资源浪费,从而提高农业资源的整体利用效率。
2.3提高农业机械产品的质量监督水平
要想提升农业的机械化水平,还要从规范设计的基本要求出发,全面提高农业产品的质量。在质量提升的过程中,还要注重农业产品的整体造型和外观,农机设备的耐久性也要经得起考验。选用与农机设备相配套的发电机及元件,能够最大程度上提高农业机械产品的质量。在农业机械设备完成安装之后,还要对其进行试运行,只有保证了设备各项指标都正常的基础上,才能够真正的投入使用,这也是提高农业机械产品可靠性的前提。
2.4加大政府的补贴力度
各级地方政府要加大农业机械的技术推广,做好农业机械的培训工作。国家还要将拖拉机、插秧机等农机具作为农具购置补贴的关键,普及农业机械知识。这样也能够更好地提高农业机械化的发展进程。
2.5确保农业机械技术的安全生产
关注安全监督管理及装备的创建工作,加大农业机械的安全投入,以便更好地满足农业机械工作安全监督管理的需求。除此之外,最重要的是,要将农业机械的安全检验工作纳入到各级县市政府的财政预算当中。
3结语
随着科学技术的飞速发展,一些高新技术正在逐渐地被运用到农业的机械设备中,这些机械设备的出现不仅提高了农业的整体生产水平,而且还进一步提升了农业的生产效率,很好地实现了农业的可持续发展。在今后的农业发展过程中,农业机械也必定是智能化的,所以要求操作人员要不断地提高自己的专业素养,全面推广农业机械新技术,只有这样才能够真正意义上实现我国农业机械的智能化。
作者:徐家亮 刘晓鹏 单位:黑龙江省克东县农机安全监理站
参考文献:
[1]陶乐然.长春星宇小区新技术应用[C]//增强自主创新能力促进吉林经济发展———启明杯•吉林省第四届科学技术学术年会论文集(下册).2006.
[2]刘蒙之.传播新技术与国家发展———一种政治经济学的观察[C]//中国传播学会成立大会暨第九次全国传播学研讨会论文集.2006.
[3]张仁江,田莉.制造业企业新技术采纳:动因、路径及障碍分析———基于T公司的纵向案例研究[C]//第六届(2011)中国管理学年会———技术与创新管理分会场论文集.2011.
[4]胡札进,姚尚斌,徐七三“.双低”储藏与四项储粮新技术的综合应用[C]//全面建设小康社会:中国科技工作者的历史责任———中国科协2003年学术年会论文集(上).2003.
[5]柳旭.浅析电视空间新技术对审美体验的影响[C]//2009中国电影电视技术学会影视技术文集.2010.
关键词:人脸检测;光线补偿;肤色建模
中图分类号:TP317.4 文献标识码:A 文章编号:16727800(2012)011012702
________________________________________
作者简介:魏佳(1978-),男,硕士,陕西理工学院数学与计算机科学学院讲师,研究方向为数字图像处理。0 引言
人脸作为图像与视频中重要的视觉对象之一,是智能人机接口等许多应用的处理目标对象。近年来,人脸检测技术在模式识别、计算机视觉、人机交互等诸多领域引起了普遍重视。人脸检测技术在计算机视觉等领域的研究中有着重要的意义:一方面,将人脸作为基本视觉对象来考虑,是自动检测与人脸识别、人脸跟踪、表情识别、人脸合成与人脸编码、唇读等技术的必要前提;另一方面,人脸检测技术有着从智能安全监控、电子商务、视频会议和远程教育、基于内容的检索等诸多领域的广泛应用。
人脸检测是指在使用计算机在输入图像中判断人脸是否存在,若存在,确定人脸的大小、位置。人脸检测系统的输入可能包含人脸图像,输出是关于图像中是否存在人脸及人脸数目、位置、尺度、姿态等信息的参数化描述。具体地说,就是根据一定的算法确定输入图像是否存在人脸,如果存在的话,标出人脸的位置作为人脸检测系统的输出。
1 肤色建模
肤色是人脸最重要的信息,而且肤色不受面部细节特征、旋转、表情变化以及饰物遮挡等情况的影响。
不同种族、性别人的肤色差异主要体现在亮度上。要提高肤色的聚类性就要消除亮度的影响。经过实验验证,在YCrCb色彩空间下,利用肤色模型求相似度矩阵返回每个像素是否为肤色的概率Fmod。获取矩阵的最大值对相似度矩阵进行归一化。计算整张图片的亮度平均值。归一化之后的每个矩阵点乘以255,如果该值仍然小于整张图片的Y分量平均值,则认为该点不是人脸的皮肤。最后把认为是人脸皮肤的像素点置为白色,其余的点置为黑色,得到黑白二值图像。其中,RGB色彩空间转换YCrCb色彩空间如式(1)所示,YCrCb空间下肤色相似度Fmod计算如式(2)所示。
2 眼睛定位
由肤色模型确定的区域并不一定就是人脸区域,有可能是手臂、脖子或其它与肤色相近的色块区域,为了进一步验证是否是人脸区域,需进一步检测这些区域中是否有眼睛。
在之前确定的人脸区域内,根据图1所示人脸结构,以距左边界0.08~0.36宽度、距下边界0.58~0.78长度的矩形内检测左眼,以距左边界0.64~0.92宽度、距下边界0.58~0.78长度的矩形内检测右眼。具体检测方法为:分别统计两个小矩形内亮度小于某个亮度的像素点比例,当大于某个阈值时,认为在该区域内存在眼睛,这个区域为最终确定的人脸区域,否则删除这个区域。
3 实验结果
(1)打开位图文件的结果(图2)。
图1 人脸结构
图2 打开位图文件
(2)皮肤颜色建模结果(图3)。
图3 肤色建模
(3)得到人脸区域结果(图4)。
图4 得到人脸区域
(4)眼睛亮度匹配排除非任梁区域结果(图5)。
图5 眼睛亮度匹配
(5)勾勒人脸,得到最终确定的人脸区域(图6)。
图6 得到最终确定的人脸区域
4 结语
通过实验证明,肤色模型能够很好地区分出皮肤区域,依据人脸结构再在肤色区域内检测是否存在人眼,就能筛选出人脸区域。本项目的方案是完全可行和有效的。
目前系统存在的主要问题为:①只能判断正面人像区域,对于侧面人像不能准确判断;②对于配戴眼镜、头发遮挡额头等特殊情况准确率较差。这些问题是下一步研究的任务。
参考文献:
[1] 陶亮.复杂背景下人眼自动定位[J].计算机辅助设计与图形学学报,2003(11).
[2] 徐慧.Visual C++数字图像实用工程案例精选[M].北京:人民邮电出版社,2004.
[3] 周长发.精通Visual C++图像处理编程[M].北京:电子工业出版社,2004.
关键词:智能监控系统;图像分割技术;图像识别
中图分类号:TP391.41 文献标识码:A文章编号:1007-9599 (2011) 15-0000-01
The Image Recognition and Analysis of Intelligent Monitoring System
Yi Junxiao
(Beijing University of Technology,Beijing100022,China)
Abstract:At present,along with the computer communication technology and network technology fast development,the image processing technology in the field of science and technology is getting more and more important position.Image recognition belong to intelligent monitoring equipment the most important technology,this paper in this part of the intelligent monitoring system based on intelligent monitoring system image recognition.The key:technology of intelligent image monitoring system image recognition and classification for analysis.
Keywords:Intelligent monitoring system;Image segmentation;Image recognition
一、智能监控系统概述
智能监控系统采用先进的数字图像压缩编解码技术、数字图像传输技术等图像处理技术,以及模式识别、计算机视觉技术,通过将智能视频分析模块增加至监控系统中,借助计算机强大的数据处理能力自动识别不同物体,在分析抽取视频源中关键有用信息的同时,过滤视频画面无用的或干扰信息。整个系统组网灵活,可以突破地域的限制,并以最快和最佳的方式发出警报或触发其它动作,进行遥远范围大规模的实时图像监控和报警处理。
二、智能监控系统图像识别的关键技术
(一)图像分割技术。图像分割是由图像处理迈向图像分析的关键步骤,其实质是正确地划分属性区域,在分离日标和背景的基础上,为计算机视觉的后续处理提供依据。分割技术依据区域的一致性和几何邻近度,可以分为三种类型,即基于像素和其邻域局部特性进行分割的局部技术;以全局信息作为图像分割依据的全局技术;以及分裂、合并和区域增长技术。图像分割方法主要包括阈值法、边缘检测法以及区域跟踪法。阈值分割法较为常用,常用的算法有最小误差阈值法、最大类别方差法及最佳直方图熵法等。由于传统的图像分割算法有着对噪声敏感、计算量大等方面的缺陷。基于尤其是基于模糊技术的人工智能原理图像分割算法开始引起人们的关注。在图像分割过程中所涉及到的模糊技术主要包括模糊阐值技术、模糊聚类技术以及模糊边缘检测技术等。
(二)图像颜色分割原理。图像颜色分割是将分割具相同或相近颜色特征色块的图像处理方法,主要包括:(1)像素分类:像素通过颜色的阈值进行分类,像素采用RGB、YUV、HIS等描述方式。(2)像素连接:将图像进行游程编码处理,即将图像编码成以run格式为单元的编码处理。游程编码处理是run格式指的是一行像素之内相邻且具有相同逻辑值的像素集合。作为色块合并的基础,像素连接通过分类后的像素信息实现。(3)色块合并:按一定规律合并所得到的游程,即将游程按照parent归类至一个树结构下的过程。每一个游程在带有效信息的基础上配有指向游程parent的指针。(4)区域融合:为了避免处理过程被判断为两个分离开来的区域,需要引入区域融合方法,使相邻近的部分合并成为一个整体。由于面积和边框同为区域统计量,因此可以进行同一种密度测量方法的使用。倘若某几个部分的区域像素密度大于某个阐值,即可将这些区域合并成成为一个区域整体。在色块合并中,即使区域存在被一根线分割的情况,但这部分的密度倘若仍旧大于阐值,应当将它们看作一个整体区域进行区域融合。
三、智能图像监控系统的图像识别与分类
(一)图象识别技术。图像识别以研究图像的分类与描述为主要内容,对图像用预先存储的对象物的参照图案进行匹配,并输出文字识别和脸部图像识别等符号信息,或者输出物置或姿态等数值信息。图像识别涉及的领域较为广泛,包括机械加工中零部件的识别、分类;农作物、森林、湖泊和军事设施的遥感辨别;气象数据、气象卫星照片的准确观测;身份证识别等方面。
图像识别方法可归纳为统计方法和结构识别方法两大类。一个图像识别系统可分为四个主要部分:(1)图像信息的获取:将图片等信息经系统输入设备进行数字化处理,再输入计算机以备后续处理。(2)图像加工和预处理:将原始图像转化为适合计算机进行特征提取的形式,包括图像变换、增强、恢复等,目的是去除干扰、噪声及差异。(3)图像特征提取:将调查而得的数据材料进行加工、整理、分析、归纳等处理,以提取出可以反映事物本质的特征。(4)判断或分类:根据所提取的特征参数,通过采用某种分类判别函数和判别规则分类和辨识图像信息,最终得到图像识别结果。(二)图像识别的几何特征描述。图像识别特征具有多种形式的描述,效果取决于图像识别的具体状况。在多数情况下,只需图像的局部特征即可识别图像,这些特征诸如图像的灰度级空间分布特征,图像颜色和波段,图像随时间变化的形态,图像形状、轮廓、面积和空间点位置等。而图像识别的几何特征描述包括周长、面积定义和算法(面积和周长较为容易计算),占空比、圆形度,形状的投影描述以及特殊的形状描述子(多数情况下,可以用来简洁地描述物体图像形状)等方面的内容。(三)图像识别分类器设计。在图像识别中,分类器的基本任务是通过图像分类特征、分类运算法则的应用,对图像进行分类。图像识别分类器必须提取和选择特征,以便对被识别的图像数据进行大规模的压缩,有利于最终的图像识别。分类器设计的主要步骤为分类识别特征的确立。此为关键步骤,特征若提取得不恰当,就无法精确分类,甚至无法进行分类,良好的特征应具有可区别性、可靠性、独立性以及数量少四个方面的特征。
特征提取和选择应当坚持尽可能减少整个识别系统的处理时间和错误识别概率的原则。当这两个原则无法兼得时,则应做出相应平衡的选择,或者提高整个系统速度,以适应实时需要;或者缩小错误识别的概率,以提高识别精度。图像识别系统的复杂度将随着特征个数的增加而迅速增长,特别是用来训练分类器和测试结果的样本数量,将随着特征数量的增加呈现指数关系增长。特征选取的方式将因不同的模式而异,并与识别的目的和方法等有着直接的联系。
参考文献:
[1]苏彦华.visualC++数字图像识别技术典型案例[M].北京:人民邮电出版社,2004
关键词:数字图像处理;教学软件;VC++
中图分类号:TP391.41-4 文献标识码:A 文章编号:1007-9599 (2013) 09-0000-02
1 引言
数字图像处理是指将利用计算机对二维图像信号进行采集、处理和分析的过程。数字图像处理课程是计算机视觉、模式识别和人工智能等专业的一门重要专业课程,涉及面广、实用性强。数字图像处理技术涉及的环节较多,主要包括图像采集、图像变换、图像增强与复原、图像分割等,每个图像处理环节的方法也多种多样,而且数字图像处理技术的基础理论和算法比较抽象,对于学生来说,在课内时间掌握数字图像处理课程的主要内容有一定难度。现在有大量的图像处理应用软件,如Photoshop,但这些软件多是面向广告设计、图像修饰处理的应用软件,不适合数字图像处理技术的基本知识和案例教学。
本文设计并实现了基于VC++开发环境下的数字图像处理课程的教学辅助软件,可以提供数字图像处理系统各处理环节相关算法实现过程的演示,形象生动地完成该课程的各教学单元的授课内容,较好地帮助学生熟悉并消化数字图像处理技术涉及的理论和技术方法。
2 教学辅助软件设计
VC++是在Windows平台下的专业软件开发平台,广泛用于各种软件的开发。MFC是Microsoft公司提供的一套类库,以C++类的形式封装了Windows的API,是一套面向对象的函数库,方便用户编程。MFC是Win API和C++的结合,提供了MFC AppWizard自动生成框架,利用MFC中提供的各种类,可以简单地构建一个应用程序框架。OpenCV是一个基于C/C++语言的开源图像处理函数库,包含实现图像处理和计算机视觉方面的很多通用算法[1],其代码具有很好的移植性。在安装好VC++的Windows系统下安装好OpenCV库,并对软件进行配置,在工程中配置好所需要包含的库文件的路径等,即可方便的调用OpenCV库中的函数。
2.1 软件设计总体结构
本文所设计的软件主要围绕数字图像处理课程的基本知识和图像处理技术涉及的各种方法进行架构的。软件基于MFC的AppWizard多文档应用程序框架,并结合OpenCV库中的一些图像处理函数和设备无关位图DIB的一些操作函数实现了多种图像处理功能,如图1所示。
2.2 软件功能设计与实现
数字图像处理技术包含很多环节,根据软件的总体架构,本软件主要设计了文件操作、图像变换、图像增强与复原、图像分割和数学形态学模块,每个模块还设计了不同功能块。各模块的图像处理功能均可以对读入的图像进行连续处理,本节展示了部分功能块的处理过程。
2.2.1 文件操作
文件操作模块能够实现对图像等文件的常规操作,如打开、保存、另存为、打印等功能。本软件主要处理BMP位图格式的灰度图像,通过此模块可将待处理的图像读入到内存,以供其他模块调用,用于进一步图像处理。对于图像处理的每个步骤所得的结果图像均可以单独显示,并可进行保存等操作。
2.2.2 图像变换
图像变换模块可以实现位图的几何变换和图像的点运算,如图像平移,水平镜像,垂直镜像,图像缩放,图像旋转,分段线性拉伸,图像反色,二值化,阈值变换,窗口变换等功能。图像变换过程中需要设定的参数可以通过弹出对话框的方式进行设定,完成人机交互。
图2为利用图像反色和图像阈值变换处理图像的效果展示,其中左侧图为原始lena图像,中间的图为对原始lena图像进行反色后得到的图像,右侧图为对原始lena图像进行阈值(参数值设为200)变换后的图像。
图1 数字图像处理教学辅助软件总体结构图
图2 图像变换处理示意图
2.2.3 图像增强与复原
图像增强与复原模块可以实现图像滤波、图像对比度增强、图像恢复等功能,如对图像添加噪声、图像平滑、直方图均衡化、图像锐化处理、傅里叶变换、低通滤波、高通滤波、小波变换等处理。在添加噪声可以选择高斯噪声或椒盐噪声,图像平滑可以选择3*3、5*5、7*7等不同大小的模板进行邻域平均处理和中值滤波处理。图像直方图均衡化可以将直方图分布不均的图像进行调整,使整幅图像视觉效果更好。图像锐化可以实现梯度锐化和拉普拉斯锐化,能够提高图像的对比度。低通滤波可实现理想低通滤波和巴特沃斯低通滤波,高通滤波可实现理想高通滤波和巴特沃斯高通滤波。傅里叶变换可以实现图像从空间域到频率域的变换,可以对图像进行一些频域处理后再进行反变换。小波变换可以将图像分解成一个低频概貌子图像和一系列高频细节子图像,在变换域对这些子图像进行处理后进行反变换可实现对原图的修改。
图3为利用噪声添加和邻域平均法的效果展示图,首先,读取原始lena图像(左侧图像),然后对原始lena图像添加高斯噪声(中间图像),最后利用邻域平均法( 窗口)对含噪图像进行平滑处理(右侧图像)。
图3 图像平滑处理示意图
图4为对图像进行傅里叶变换和低通滤波处理的效果展示图,左侧图像为一幅黑色正方形图像,中间图像为其傅里叶变换频谱图,右侧图像为进行理想低通滤波后的结果图。
图4 图像滤波处理示意图
2.2.4 图像分割
图像分割模块可以实现图像目标分割功能,如图像边缘检测和区域分割等处理。在图像边缘检测处理中,可以选择Roberts、Sobel、Prewitt、Laplacian和Canny算子进行边缘检测。区域分割处理中可以采用直方图阈值分割、自适应阈值分割和区域增长的方法,其中直方图阈值分割的阈值可以通过弹出对话框进行参数选择。除了上述功能外,此模块还可以完成边界跟踪、Hough直线检测等功能。边界跟踪模块可以实现对白色背景的二值图像中黑色目标的边界跟踪,对轮廓进行提取。Hough直线检测根据Hough变换点-线对偶性原理,利用OpenCV中Hough线变换函数,可实现标准Hough变换和累计统计概率Hough变换,将检测出的直线进行标注。
图5为图像边缘检测和直线检测示意图,其中左上图为原始图像,右上图为利用Roberts算子进行的边缘检测结果图,左下图为利用Canny算子进行的边缘检测结果图,右下图为利用Hough变换检测直线的结果图,检测出的直线标注成红色。
2.2.5 数学形态学
数学形态学模块可以对图像进行腐蚀、膨胀、开运算、闭运算,这四个运算是数学形态学的四个基本运算。数学形态学的基本思想是用具有一定形态的结构元素去度量和提取图像中的对应形状以达到对图像分析和识别的目的[1]。利用这些运算并结合图像分割模块可以实现图像的边缘检测与分割、特征提取、图像形状识别与修改等处理。此外,该模块还包含击中击不中和细化处理,利用击中击不中变换可以进行目标检测与定位。
图6为一个利用数学形态学进行膨胀的示意图。首先读入原始图像(左侧图像),然后对其进行二值化处理(中间图像),最后对二值化处理后的图像进行膨胀处理(右侧图像)。
图5 图像边缘检测及直线检测示意图
图6 数学形态学膨胀处理示意图
3 结束语
本文所介绍的数字图像处理课程教学辅助软件可以实现对图像的文件操作、图像变换、图像增强与复原、图像分割和数学形态学功能。本软件的开发可有效地展示数字图像处理课程中各种基本算法的实现过程和处理结果,有利于加深学生对该课程理论知识和实现技术的理解与掌握,能够提高该课程的教学效果。
参考文献:
[1]陈胜勇,刘胜等.基于opencv的计算机视觉技术实现[M].北京:科学出版社,2008.
[2]印月.基于VC++6.0的数字图像处理综合性设计实验[J].实验科学与技术,2011,Vol.9(3):10-11.
[3]黎宁,徐晓波,牛征.MATLAB平台下图像处理实验教学软件的实现[J].电气电子教学学报,2001,Vol.23(5):55-58.
[4]张华,展晓凯.基于VC++的数字图像处理系统的设计与实现[J].潍坊学院学报,2011,Vol.11(2):15-21.
(1.广西电网公司钦州供电局,广西 钦州 535000;2.广西南宁仟能电气技术有限公司,广西 南宁 530002;
3.广西大学电气工程学院,广西 南宁 530004)
【摘 要】弧垂检测是保证架空输电线路安全运行的重要措施。传统的手工计算弧垂的方法不仅计算量大,而且容易出错;现有计算机技术计算弧垂的方法虽然准确度较高,但需要复杂的公式和考虑众多因素(如导线温度、张力、传输容量等),在工程应用中给现场人员带来不便,难以推广应用。为此,提出一种基于图像识别技术的架空线弧垂计算方法,以悬链线模型为基础提取部分段曲线的独立状态参数,还原完整架空线并计算其弧垂。同时,基于Matlab GUI开发了一款实用的弧垂测量系统,并通过实际工程测试结果表明,该系统数据采集方式简单、运算速度快,结果展示和输出方便,既能满足工程的精度要求,又具有较高的实用性,是提高工程现场作业人员工作效率的实用应用工具。
关键词 图像识别;弧垂测量系统;Matlab GUI设计
作者简介:池小兵(1988—),男,本科,工程师,主要从事生产设备管理部输电管理工作。
黄阳垚(1971—),男,本科,工程师,主要从事工程管理等技术工作。
黄景标(1966—),男,本科,工程师,主要从事输电管理工作。
莫枝阅(1989—),男,硕士研究生,主要研究方向为电力系统规划与可靠性。
0 引言
输电线路弧垂是线路设计和运行维护的主要指标之一,弧垂过小,架空线的拉应力就大,杆塔荷载增大,安全系数减小,严重时可能发生断线、倒塔和掉串等事故;弧垂过大,架空线对地及交叉跨越物的安全距离不足,风摆、舞动和跳跃会造成线路停电事故的风险就随之增加[1]。因此,运行线路的日常巡检中需要对弧垂进行实时监测,将弧垂控制在规程要求的范围内以保证线路和被跨越设备的安全。
传统的导线弧垂实测计算方法主要有角度法、驰度板观测法和中点高度法[2-4]等,这些方法均存在测量难度大、实时性差,或者误差较大的问题。随着现代测量技术的不断发展和各类先进工程测量仪器的开发,基于先进的测量仪器和计算平台(包括计算机算法[5]、图像识别技术[6-7]、光纤光栅应变传感器[8]、LabVIEW平台[9]、J2ME技术[10]以及电场逆运算原理[11]等)的弧垂测量新方法应运而生。利用图像处理技术进行弧垂计算有全景拼接数码照片[12]和计算机视觉原理标定线路坐标值[13]等方式。其中,全景拼接技术在实际操作中,容易出现拼接失真而带来较大的计算误差;利用计算机视觉原理计算弧垂时需要标定线路坐标值,在地形环境复杂的地区难以进行准确标定坐标值,甚至是无法完成的。此外,其他仿真类方法需要用到复杂的计算公式和考虑影响弧垂的众多因素如导线温度、张力、传输容量等,在实际工程应用中给现场人员带来不便,因此很难得到应用推广。为此,提出一种基于部分线段图像识别技术的架空线弧垂计算方法,以悬链线模型为基础提取部分段曲线的独立状态参数,还原完整架空线并计算其弧垂。同时,基于Matlab GUI开发一款实用的弧垂测量系统,自动完成弧垂计算、输出和保存等工作。
1 架空线路图像识别技术
考虑到架空线路图像背景的复杂性,为了使特征的提取精度更高,需要对图像进行预处理,包括滤波[14]和边缘检测[15]等。
1.1 图像滤波
图像滤波是一种为数字图像去噪平滑的预处理技术, 在提取图像的特征值之前需要先对图像进行平滑滤波。中值滤波是经典的滤波算法,其基本原理是把数字图像或数字序列中一点的值用该点的一个邻域里各点值的中值代替,既可以去除图像中的噪声又能最大限度地保护图像的边缘和轮廓,为后期的图像处理做好准备。
1.2 图像边缘检测
电力线路最基本的特征是其线特征,线特征的提取可以采用图像的边缘检测来实现。边缘检测是借助空域微分算子通过卷积完成,微分算子具有突出灰度变化的作用,对图像运用微分算子,其灰度变化较大点计算出的微分算子值较高,可以将这些值作为相应点的边界强度,通过设置阈值,提取边界点集。
边缘检测得到线路的两条边缘,参照曲线平滑的思想,可以采用两条边缘线的中间线来代替悬链线,以更加准确地反应线路的趋势。在寻找中间点的时候,若同一x坐标上有n个像素点,则中间点的y坐标可表示为
式中yi为第i个像素的y坐标。
2 基于部分线段的悬垂链弧垂测量原理
2.1 悬链线还原
采用悬链线模型计算架空线弧垂。参照 “悬链段”方法分析柔索结构的思想[16],提出基于图片处理的弧垂计算思想:当档距一定时,仅需一个独立变量就可以确定线路的悬垂状态,提取该独立参数,还原完整悬链曲线并计算其弧垂值。图1是悬链段参数提取示意图,采用数字图像处理所用的坐标约定,选取顶部索曲线倾角的正割值作为独立变量求解,定义secθ=n,θ为顶部索曲线倾角,则可由公式(2)确定悬链线的状态。
式中,a为待求系数,(l,h)是曲线切点坐标,(x0,y0)是曲线的端点坐标。
线路参数的提取步骤如下:
(1)获取部分段线路图像的两端点坐标(x0,y0)、(L0,H0),计算连接两端点坐标的直线的斜率k,得到两端点连接的直线方程;
(2)利用点到直线的距离公式,求出点到直线的最大距离,对应的点即为切点,并取得切点坐标(l,h);
(3)k即为顶部索曲线倾角的正切值tanθ,则,切点坐标即为顶点坐标(l,h)。
(4)由h/a=n-ch(archn-l/a)解出a,即可确定悬链线的状态方程。
由求得的状态方程公式(2)画出曲线在原图像大小范围内的部分,则为还原的部分曲线图像;求出完整曲线两端点的横坐标,即可还原出完整的悬链线,横坐标的计算如图2所示。
图2为测量数值示意图,0B段(以0为原点建立坐标系)对应拍摄的电力线片段。其中L为固定档距,L1和L2分别是拍摄的电力线的两端点到悬链线同一端点的水平距离。测量得到L、L1和L2的值,有
式中L0如图1所示,表示部分段曲线的端点的横坐标。
以部分段图像的原点为原点,画出曲线在-x1到x2区间上的部分,则为该档距内完整的悬链线。
2.2 弧垂计算
从第2.1节中还原的完整悬链线提取两端点坐标(-x1,y1)、(x2,y2),则连接悬链线两端点的直线方程为,减去式(2)即得悬链线的弧垂值为
f=yd-ach(x/a+archn-l/a)+ach(archn-l/a)-y0(5)
令?坠f/?坠x=0,当x=a(arshk1-archn)+l时,可得最大弧垂值fmax,式中k1=(y2-y1)/(x2-x1)。
结果计算中,恢复出的像素点和原图像素点间的相对误差为
α=(y-y′)/y(6)
平均误差率为
式中y为原图像中某一像素点的坐标,y′为恢复出的该像素点的坐标。
计算得出的弧垂值和实际测量的弧垂值之间的相对误差为
式中f为实际测量得到的弧垂值,fmax为计算得到的弧垂值。
3 实用架空线弧垂测量系统设计
3.1 系统分析
系统分析主要任务是根据工程实际需求,分析、理解整个系统设计的基本要求,确定系统框架。
3.1.1 功能要求
利用高清数码相机取得导线的图片,对该图片进行处理,把架空导线当作悬垂链条,通过分析一段悬垂链的轨迹,模拟仿真出整段悬垂链轨迹,通过悬垂链轨迹计算出最大弧垂的系统。
3.1.2 系统框架
包含由高清数码相机、图片处理系统、悬垂链分析系统、数据接口等软硬件组成的导线弧垂测量系统,满足测量数字化、输出标准化、通信网络化特征,对一档架空导线弧垂测量的数据测量装置,并通过信道将数据传送到服务器。
3.2 系统设计
3.2.1 算法设计
基于图像处理的架空线弧垂实测系统的计算流程图如图3所示,包括图像处理、参数提取和弧垂计算等内容。
先对目标图片进行校正、滤波等预处理,然后边缘检测得到图像像素坐标,提取独立参数恢复完整曲线并计算弧垂值。
3.2.2 系统界面设计
基于MATALB /GUI开发弧垂系统界面。建立GUI的主要方式有两种:第一种是直接通过程序编写的方式产生对象,即利用uicontrol 、ui2contexmenu 等函数以编写M文件的方式来开发整个GUI;第二种方式是直接通过MATALB的GUI编辑界面—GUIDE来建立GUI。本文采用第二种方法来开发软件界面。
开发的弧垂实测系统界面如图4所示。输入数据包括拍摄的架空线图片和相关测量数据,依次单击“选择图片”、“数据输入”,就可以得到输出结果。
4 应用案例分析
采用高清相机拍摄档距一定的架空线部分段图像作为分析对象,如图5所示。利用全站仪测量得到参数L、L1、L2和实际弧垂值,其值分别为L=120.699m,L1=11.248m,L2=16.902m,实测弧垂值为5.468m。整个计算流程如图6至图8所示。
运行弧垂实测系统,点击“选择图片”按钮,在弹出的对话框里选择拍摄的图片,如图6所示;当“数据输入”按钮变为可用状态时,点击“数据输入”,在弹出的对话框中输入测量数据,就可以自动完成计算,如图7所示;点击“结果输出”按钮,得到计算结果,点击“保存”按钮可以方便将结果保存,如图8所示。
由计算结果可以看出,计算的弧垂值为5.632m,与实测弧垂值5.483m对比,弧垂计算相对误差为-2.716%,负值表示计算弧垂值大于实测弧垂值,能够较好地满足系统精度要求。
5 结论
以悬链线模型为基础,通过部分线段图像识别分析,提取部分段曲线的独立状态参数,还原完整电力线;避开导线应力、温度、传输容量等影响,能对弧垂进行准确、直观的测量。
基于Matlab GUI开发了一款实用的弧垂测量系统,建立友好的对话框式数据输入界面,提升了数据录入的便捷性,能够自动完成弧垂计算、分析、保存和输出等工作,既能满足工程的精度要求,又能方便现场工作人员,提高了工作效率,降低了工作强度,易于推广使用。
参考文献
[1]黄俊杰,王身丽,陈早明,等.架空输电线路弧垂计算的计算机实现[J].湖北电力,2003,3:1-3.
[2]时瀑森,王占林.弧垂观测及大档距弧垂观测新方法[J].湖北电力,2012,36(5):61-63.
[3]赵新卫.线路弧垂的观测方法[J].大众用电,2009(6):29-29.
[4]窦小晶,瑚跃进,陈贵锋,等.大档距架空线弧垂测量及其误差分析[J].供用电,2009,26(4):15-17.
[5]奉斌,罗辉.配电架空线路应力弧垂计算机算法[J].广西电业,2006(9):90-92.
[6]陈斯雅,王滨海,盛戈皞,王闻,江秀臣.采用图像摄影的输电线路弧垂测量方法[J].高电压技术,2011(04).
[7]黄新波,张晓霞,李立浧,罗兵.采用图像处理技术的输电线路导线弧垂测量[J].高电压技术,2011(08).
[8]李路明,孟小波,张治国,孙欣,陈雪,张民.基于光纤光栅应变传感器的架空输电线弧垂实时监测[J].电力建设,2011,32(7):51-54.
[9]桂菲菲,王振刚,庞百胜,等.基于LabVIEW的架空输电线最大弧垂计算方法[J].电力建设,2013,34(7):108-113.
[10]刘万夫,刘涛.J2ME技术在架空线路弧垂观测角计算中的应用[J].电力建设,2013,33(11):101-103.
[11]陈楠,文习山,蓝磊,等.基于电场逆运算的输电导线弧垂计算方法[J].中国电机工程学报,2011,31(16):121-127.
[12]杨靖超.基于弧垂在线检测的输电线路动态增容技术[D].北京:华北电力大学,2006.
[13]李俊芳.基于计算机视觉的输电线弧垂测量[D].北京:华北电力大学,2008.
[14]赵高长,张磊,武风波.改进的中值滤波算法在图像去噪中的应用[J].应用光学,2011(04).
[15]谭艳,王宇俊,李飞龙,葛耿育.几种典型的图像边缘检测算法的分析比较[J].电脑知识与技术,2012(07).
【关键词】循环程序设计;迭代法;高次方根
循环结构是结构化程序设计中三大基本结构之一,也是计算机程序设计语言教学的重点和难点之一[1]。循环结构通过重复执行一组操作,能够把复杂的、不易直接求解的问题变换为操作简单,易于处理的迭代求解问题。这也体现了解决数学问题时常常采用的化归思想。
本文基于数值计算中采用迭代法求解二次方根的实例,对相应的问题和求解方法进行拓展,并通过理论分析和C语言编程实现,让学生从深度和广度上对迭代方法及其应用有更加深刻的理解和认识。
1、基本案例
为了求解 的值(2的算术平方根),数值计算[2]中采用经典的迭代方法:
令x= ,则有,
. (1)
由式(1)知,x的值可通过迭代方式求解,即
. (2)
经过多次迭代,可以计算出 的值。
计算科学的基本问题是能行性问题[3]。上述迭代方法具有可行性吗?分析如下:
首先,式(2)中x的计算需要一个初值,通过不断地迭代更新x的值。为了便于处理,不妨设初值为任意的正值。
情况1:当初值0
. (3)
不等式(3)说明,当0
进一步地,由代数不等式 知,
. (4)
等号成立当且仅当x= 。这说明小于 的初值经一次迭代后,产生的新x必然大于 。
情况2:当初值0 时,由式(1)的推导过程知,
. (5)
不等式(5)说明,当x> 时,式(2)的计算过程,即由 更新x,会产生比初值更小的新的x值。再由式(4)知,当x> 时,更新过程产生的x值不会小于 ;由于新的x值在逐渐缩小,说明最终会收敛至 。
上述分析说明,当初值0 时,更新过程使得x值逐渐变小,最终收敛于 。
上述过程也可由图1进行可视化证明。当初值x< 时,由于 。假设 ,通过移项知,须 。由图1知,此时曲线y=1/x的值大于直线y=x/2的上值。所以,假设成立,且产生了大于 的新值。当初值x> 时,类似的推导知,假设 ,须 。由图1知,假设亦成立,且更新过程x总是不小于 。当x= 时,1/x+x/2=1/ + /2= ,得到最终的解x。证毕。
图1 直线y=x/2和曲线y=1/x.
上述的证明过程说明,式(2)的迭代方法具有能行性,能够计算 的值。
事实上,对于任意的正数p,令x= ,由式(1)的推导过程知,
. (6)
通过与求解 类似的推导过程知,式(7)能够计算任意正数p的算术平方根,方法同样具有能行性。
. (7)
教学意义:本节能够让学生加深理解由循环结构形成的迭代方法。采用迭代方法求解复杂的问题时,通过把问题分解为若干步骤,每步完成一个相对简单的问题。由于这种化归思想广泛存在于数值计算或者科学计算之中,通过引导,能够加深学生对迭代法的理解。
2、案例拓展
进一步地,对任意正数p的任意m( 且为自然数)次方根,能够通过上述方式求解 吗?
首先,可考虑m=3时的情况。令x= ,则有x3=p。与式(1)类似,
. (8)
如何对式(8)进行类似于式(1)的改造,且使得产生的更新过程会收敛至 ,是构造相应迭代过程的关键。
事实上,代数不等式 是式(9)的特例,
. (9)
求解 的迭代过程最终会收敛到 本身,这是由于式(9)(n=2时)中不等式右端产生的最小值正好为 (也可参考图1)。因此,在构造求解 的过程中,式(9)的右端需要直接产生 。由式(9)知,此时需要构造式(10)的形式,
. (10)
进一步地,由式(8)知,
. (11)
显然,
. (12)
所以,式(13)可以用于迭代求解 ,
. (13)
相应的收敛性证明与 的情况类似,不再累赘。
进而,对任意不小于2的自然数m,对应的问题是求解x= ,则有xm=p。与式(1)和式(8)类似,
. (14)
由不等式(9)知,式(14)右端,即 ,具有最小值 。在实际的更新过程中,可采用式(15)的简化形式,
. (15)
式(15)的收敛性证明如下:
情况1:当初值0
. (16)
说明经一次迭代更新,产生的新值x大于 。
情况2:当初值0 时,由式(14),(15)和式(16)知, ,说明此时由式(15)产生的新值x在逐渐变小,但不会小于 。该更新过程使得x趋向于 ,当x= 时,式(15)的迭代过程收敛。证毕。
上述推导过程说明,式(15)能够用于迭代计算 。而且,平方根和立方根的求解是m=2和m=3时的特例。
教学意义:把求解平方根的问题,泛化到求解任意高次方根的问题,有助于引导学生深化思维。上节和本节的收敛性证明也能够锻炼学生运用数学知识解决问题的能力,提高理论水平;这一理论推导过程,也可以让学生更加清楚上述迭代过程能够求解高次方根的原因,有助于加深对计算科学中可行性问题的认识;本案例通过最基本的加减乘除运算解决了求高次方根的问题,从运算角度同样体现了化归思想;而且,该案例能够让学生更好地理解和运用循环结构解决实际问题。
在实际教学中,把求解平方根和立方根的情况推广至任意高次方根的问题,可以作为课外作业,让学生自行完成,以培养数学思维和动手能力。
3、程序实现
基于对 , 和 的求解说明,本节给出相应的C语言算法(程序)描述。
求根的过程,不管p值大于1,或者小于1,根总有向1靠近的趋势。这说明x的值可以简单地初始化为1。为了加速程序的运行,我们也可以考虑其它的初始化方法。如,论文[4]给出了初始化的一个上界。
教学意义:通过程序实现,对于任意的正数p,Program 1 和Program 2分别能够求解平方根和立方根,Program 3能够直接求解任意的高次方根。对问题的深化思考有助于拓展学生的视野,激发学生的学习兴趣,培养通过编程解决问题的能力和成就感。
4、小结
本文把迭代法求解平方根的案例,拓展到求解任意正数的不小于2的正整数次方根问题,分析了迭代求解的理论基础,证明了迭代方法的收敛性,最终给出了C语言程序代码。本文设计的教学案例在提升学生的学习能力,拓展学生的知识面,丰富教学内容方面具有多个优点:1)理解和掌握循环结构,2) 理解和运用数学不等式求解极值问题,3)锻炼数学思维能力,培养科研型人才,4) 加深理解计算科学中的能行性问题。
参考文献:
[1] 孙英,徐顺琼,李兴美. C 语言中循环结构程序课的教学设计与探讨.计算机教育 [J], 2009,12:186-187.
[2] F. 施依德[美]著, 罗亮生 包雪松 王国英 译. 数值分析 [M], 第二版. 第1章第1页. 北京:科学出版社, 2002.
[3] 赵致琢.计算科学导论 [M]. 第3章第69页. 北京: 科学出版社, 2004.
[4] 刘红超, 陈惠汝.用迭代法计算预定精确度下的算术平方根 [J]. 黄冈师范学院学报, 2004, 24(3): 24-26.
基金项目:
中国博士后科学基金(2011M501189)。
关键词:计算机专业;综合课程设计;研究性教学
随着中国经济的高速发展,科技进步和创新已经作为经济社会发展的首要推动力量。社会对人才的要求也越来越高,培养懂技术、会思考、善于解决问题、勇于创新的本科生成为大学教育的重要目标。而作为计算机专业重要的实践性环节之一的综合课程设计,对于学生完成从学习到灵活应用知识,完成分析问题、解决问题和创新的飞跃,以及大四毕业设计高质量的顺利完成,都起着承上启下的重要作用。
1计算机专业综合课程设计的目的
计算机专业的本科生,通常在二年级和三年级开始综合课程设计。综合课程设计与传统的课程实验或课程设计培养目标不尽相同[1-3],通过综合课程设计需要达到以下目标。
首先,采用综合课程设计来巩固和加深学生对相关课程的基本知识理解和掌握,并拓展知识面,加强工程素质培养。虽然很多计算机专业的课程在开设过程中,有配套的实验或课程设计环节,但大部分实验都针对课程较具体的某个环节或算法,课程设计也主要完成本课程的配套综合实验[2-3]。而综合课程设计,一般是具有一定综合性的题目,以提高学生综合应用和独立设计能力为目的,所以它会涉及到多个知识点、多门课程或多个领域的综合应用,需要学生对相关课程内容灵活掌握,并拓展现有的知识面,才能较好解决实际问题。
其次,综合课程设计能够培养学生正确的设计思想与方法、严谨的科学态度和良好的工作作风,也在一步步解决问题的过程中,树立了学生解决问题的自信心。由于课程设计的综合性,学生需要针对问题,仔细考虑解决问题的思路和过程,有计划地实现每一个细节,从而逐步验证所提出方法的可行性。同时,在实现的每个细节过程中,会涉及各种解决问题的工具和算法,而工具的应用和算法的实现,可以提高学生的基本技能,培养学生综合运用所学知识的能力和基本工程素质。
而且,综合课程设计的实现过程,可以很好地培养学生获取信息和综合处理信息的能力。这是因为很多问题的复杂性要求学生查阅大量资料,进一步锻炼他们从这些资料中获取有用信息的能力。同时,在思考和解决问题的过程中,也会涌现很多创新性的想法,提高学生的创新能力。
最后,在学生实现了既定的综合课程设计题目后,课程设计报告也帮助学生掌握书写综合性文档的能力。这些为学生高水平的完成大四毕业设计奠定了坚实的基础。
从以上分析可以看出,综合课程设计环节对于培养现代的、综合能力强的、具有创新能力的大学生非常重要。然而,在实际的大学综合课程设计中,也出现了一些问题。
2计算机专业课程设计的几个问题
当前的综合课程设计一般由教师提出课程设计题目,然后学生被动接受教师的课程设计题目,并和教师进行简单的几次沟通后就开始了课程设计。目前的课程设计很多是在课后完成,由于各种原因,教师和学生的交流时间和次数很有限。在这一过程中所反映出的问题如下:
首先,教师在课程设计中要为学生考虑综合课程的题目,而这类题目的完成需要学生经过一定的努力才能实现。通常每个教师一次要辅导几个学生,每个学生的题目都不相同,所以教师每年都需花较多时间考虑综合课程设计题目。学生被动接受这些题目,并不一定是他们的兴趣和强项。同时,综合课程设计题目往往有一定的实用背景,学生往往缺乏对题目背景的理解,而导致研究方向偏离。
其次,在综合课程设计的过程中,学生所面对的指导教师经常都是博士、教授,甚至是博导。很多学生担心教师很忙,或自己问的问题过于简单,受到教师的批评等,从而缺乏和教师交流的主动性。由于没有解决问题的正确有效渠道,导致课程设计的质量不高,或根本达不到预期的目标。
最后,在课程设计完成后,由于每个学生的研究题目都不相同,学生之间的工作无法做客观比较,其工作量和工作完成情况都由指导教师评价,没有统一的评价指标,造成学生最终课程设计评分不尽客观。而且每年学生课程设计的工作没有延续性,后一届学生和上一届学生课程设计题目完全不同,即使相同也无法参考上一届学生成功或失败的经验。
针对综合课程设计在实践过程中的这些问题,我们提出基于网络技术构成的综合课程设计新型探究型学习环境,并以教师引导为辅和学生探究学习为主的新型教学活动。
3计算机专业课程设计的探索和实践
根据上述综合课程设计中的各类问题,结合作者的研究方向和教学实际情况,以实例说明综合课程设计的新思路。
首先,教师选择的综合课程设计题目应具有典型性、代表性,能够涵盖相关课程的众多知识点,并且代表指导教师的专业方向,以及反映课程的重要内容和学科方向。由于教师所带课程一般和自己的专业方向对口,这条一般可以做到。建议一位教师的综合课程题目选择3-6个,这些题目在一定时期内基本不改变,并在WEB网页上。所有学生可以在这些题目中选择自己感兴趣的方向,规避不同学生不同题目的传统方法。例如,指导教师的研究方向为增强现实、计算机视觉和多媒体通讯,主要所带课程为数字图像处理。那么综合课程设计题目选择为:特征检测和匹配、图像压缩算法研究和视频压缩算法研究等。这些题目都是数字图像处理领域很经典的一些研究方向,同时也处在不断发展的过程中,因此,这类题目的研究既有针对性和挑战性,又有很好的延续性。
其次,综合课程设计题目在网上的同时,指导教师需要对每个题目任务有一个概要描述,并且给出这项工作的工程意义,以及当前这项工作所能达到的效果,从而使学生从总体上把握题目方向以及实现目标。如针对特征检测和匹配课程设计题目,需要学生编写代码检测图像中的显著特征,并且完成与其他图像的特征匹配。同时,这些特征需要是平移、旋转、尺度和亮度不变量。教师提供测试图像集,学生实现自己的算法,通过ROC曲线和AUC指标评价算法性能,并根据不同图像测试结果对学生排名。且进一步给出该题目的研究和实现意义,即特征检测和匹配结果可以帮助实现图像拼接、计算基础矩阵和场景重建等。
第三,指导教师前期对学生综合课程设计的辅导,不仅仅是给出题目和题目内容概要,更重要的是需给出解决问题的主要思路和方法。这样使学生有的放矢,在统一的框架内,验证和开发各种算法。如针对上述特征检测和匹配综合课程设计题目一般需要三个步骤解决问题:(1)特征检测。通过一定算法的实现能够识别图像中显著的特征点,如利用Harris算法检测角点。(2)特征描述。有了这些特征点后,需要定义以特征点为中心的局部描述子,这个描述子对平移、旋转、尺度和亮度为不变量,从而可以比较不同图像之间的描述子,实现特征的匹配。如通过一个小的窗口,利用差的绝对值比较,简单实现此描述子,能够检测平移下的不变量。为了实现更一般情况的不变量描述子,需要定义更完善的描述子,如SIFT。(3)特征匹配。有了每帧图像的特征描述子,就可以通过它匹配特征点。对于一帧图像的每个特征,可以在其它图像中找到对应的匹配特征。这一部分主要设计如何测试不同图像间的描述子。最简单的办法是通过计算描述子之间的距离,最小的距离则为匹配特征点。也可通过距离比方法,使用门限判断匹配特征点。通过(1)~(3)步,基本给出了解决问题的总体思路框架,学生可以在这个框架下,使用各种现有的或创新的算法实现特征检测和匹配。
第四,基于上述解决问题的整体思路框架,为了进一步规范学生在大框架下的代码开发,可以给出整体的代码框架。指导教师定义框架下的大模块,规范调用接口,并给出类或函数实现的功能。学生基于接口和功能要求,提出每个功能模块的解决思路,甚至一些开创性的算法,并加以实现。这种规范的代码框架提高了代码的可读性,为其他学生学习不同算法和代码提供了方便,使整体综合课程设计有好的延续性。
第五,在学生实现了所有综合课程设计题目的算法后,指导教师必须仔细而明确地给出学生测试结果的指标和方法。这个环节对于客观准确评价学生工作,鼓励学生创新和探究都非常重要。如在特征检测和匹配中,要求学生使用指导教师提供的测试图像集合和测试方法,给出ROC曲线,并计算ROC曲线下的面积和特征的正确匹配率等参数,从而所有学生都在统一的测试平台和标准下评价算法的优缺点,激发了学生对新算法探究。同时,要使学生能够从感性上触摸到课题内容实质,有一个较高的研究开发起点,教师可以在代码框架下给出最基本的算法实现,学生们学习基本的算法,并将开发出的新算法与最基本的算法比较。
第六,为了鼓励学生的探究学习,凡是提出更好的算法或实现增强的功能,可以额外加分。如学生能够证明自己的描述子是尺度或仿射不变量,通过统一测试平台,测试的指标好于教师所给出的指标;在不同图像的特征匹配中实现了实时匹配等,那么学生都可以获得额外的综合课程设计加分。
最后,将每年学生的综合课程设计结果、评测和得分全都在网上,并基于学生的测试结果给出综合成绩排名。该措施可以促使大家相互监督,有效避免学生之间的抄袭,也保证了后续学生综合课程设计的延续性,并在一定程度上提高了学生成绩评定的客观性和准确性。
4结语
实践证明,基于网络的新型综合课程设计环境,以及规范化和标准化的综合课程设计框架,可以避免学生在综合课程设计中“孤身奋战”,学生不但可以和教师交流,也可以和同项目组的学生做算法交流,还可以参阅以前学生的算法和实现结果,使学生们站在一个比较高的高度来分析问题和解决问题。这同传统的被动接受指导教师的综合课程设计题目并独立完成完全不同,即学生往往因为对研究题目不感兴趣,缺乏解决问题的渠道,或没有一套客观的结果评价指标,从而降低对自己的要求,使总体综合课程设计的质量不高。
同时,在综合课程设计中,教师给出项目的工程背景,学生可以根据自己的兴趣选择适合自己的题目,并依据工程应用背景衍生其它的研究和开发。比如很多学生选择了特征检测和匹配这个题目,在综合课程设计完成后,又主动实现了和此题目相关的计算机视觉算法,并开发了相应的应用程序如全景图像拼接软件等。这些不但提高了综合课程设计水准,也为毕业设计打下了坚实的基础。
综上,通过基于网络技术构成开放的新型综合课程设计探究学习环境,以及为综合课程设计题目提供的解决问题框架、代码框架和统一测试方法,学生们可以随时借鉴、参阅已有成果,客观评价自己算法。同时,也可以进一步掌握科学分析问题、解决问题的方法和思路,提高自己的创新能力,培养严谨的科学态度和良好的工作作风。最后,此综合课程设计的实施方案与当前高等教育所提出的研究型教学思路相吻合,提高了教师的工作效率和学生综合课程设计的质量水平。
参考文献:
[1] 王艳红,章小莉,姜湘岗. 在数据库课程设计中培养学生项目开发能力[J]. 计算机教育,2009(13):91-94.
[2] 王培容,黄丽雯.《微机原理》课程设计的教学探讨[J]. 计算机与信息技术,2009(3):109-110.
[3] 庞晓琼. 案例驱动的数据结构课程设计教学改革实践[J]. 计算机教育, 2009(1):53-56.
Exploration and Practice on Integrative Course Design for Computer Science Major
SHEN Jie
(School of Computer Science and Engineering, University of Electronic Science and
Technology of China, Chengdu 610054, China)
1 符号计算
计算机最主要的用途之一就是科学计算,科学计算可分为两类:一类是纯数值的计算,例如求函数的值,方程的数值解,比如天气预报、油藏模拟、航天等领 域;。另一类是符号计算,又称代数运算,这是一种智能化的计算,处理的是符号。符号可以代表整数、有理数、实数和复数,也可以代表多项式,函数,集合 等。。长期以来,人们一直盼望有一个可以进行符号计算的计算机软件系统。。早在50年代末,人们就开始对此研究。。进入80年代后,随着计算机的普及和人 工智能的发展,相继出现了多种功能齐全的计算机代数系统软件,其中Mathematica和Maple是它们的代表,由于它们都是用C语言写成的,所以可 以在绝大多数计算机上使用。。Mathematica是第一个将符号运算,数值计算和图形显示很好地结合在一起的数学软件,用户能够方便地用它进行多种形 式的数学处理。
计算机代数系统的优越性主要在于它能够进行大规模的代数运算。。通常我们用笔和纸进行代数运算只能处理符号较少的算式,当算式的符号上升到百位数 后,手工计算就很困难了,这时用计算机代数系统进行运算就可以做到准确,快捷,有效。。 现在符号计算软件有一些共同的特点就是在可以进行符号运算、数值计算和图形显示等同时,还具有高效的可编程功能。在操作界面上一般都支持交互式处理,人们 通过键盘输入命令,计算机处理后即显示结果。并且人机界面友好,命令输入方便灵活,很容易寻求帮助。
尽管计算机代数系统在代替人繁琐的符号运算上有着无比的优越性,但是,计算机毕竟是机器,它只能执行人们给它的指令,有一定的局限性。首先,多数计 算机代数系统对计算机硬件有较高的要求,在进行符号运算时,通常需要很大的内存和较长的计算时间,而精确的代数运算以时间和空间为代价的。第二个问题是用 计算机代数系统进行数值计算,虽然计算精度可以到任意位,但由于计算机代数系统是用软件本身浮点运算代替硬件算术运算,所以在速度要比用Fortran语 言算同样的问题慢百倍甚至千倍。另外,虽然计算机代数系统包含大量的数学知识,但这仅仅是数学中的一小部分,目前仍有许多数学领域未能被计算机代数系统涉 及。计算机代数系统仍在不断地发展、完善之中。
2 模式识别
模式识别就是通过计算机用数学技术方法来研究模式的自动处理和判读。这里,我们把环境与客体统称为“模式”,随着计算机技术的发展,人类有可能研究 复杂的信息处理过程。用计算机实现模式(文字、声音、人物、物体等)的自动识别,是开发智能机器的一个最关键的突破口,也为人类认识自身智能提供线索。信 息处理过程的一个重要形式是生命体对环境及客体的识别。对人类来说,特别重要的是对光学信息(通过视觉器官来获得)和声学信息(通过听觉器官来获得)的识 别。这是模式识别的两个重要方面。市场上可见到的代表性产品有光学字符识别系统 (Optical Character Recognition,OCR)、语音识别系统等。
计算机识别的显著特点是速度快、准确性和效率高。识别过程与人类的学习过程相似。
以“汉字识别”为例:首先将汉字图象进行处理,抽取主要表达特征并将其特征与汉字的代码存在计算机中。就象把老师教我们这个字叫什么、如何写的知识 记忆在大脑中。这一过程叫做“训练”。识别过程就是将输入的汉字图像经处理后与计算机中所保存的全部汉字进行比较,找出最相近的字作为识别结果,这一过程 叫做“匹配”。
语音识别就是让计算机能听懂人说的话,一个重要的例子就是七国语言(英、日、意、韩、法、德、中)口语自动翻译系统。其中,中文部分的实验平台设立 在中国科学院自动化所的模式识别国家重点实验室,这是口语翻译研究跨入世界领先水平的标志。该系统实现后,人们出国预定旅馆、购买机票、在餐馆对话和兑换 外币时,只要利用电话网络和国际互联网,就可用手机、电话等与“老外”通话。
指纹是人体的一个重要特征,具有唯一性。北京大学有关专家对数字图像的离散几何性质进行了深入研究,建立了从指纹灰度图像精确计算纹线局部方向、进 而提取指纹特征信息的理论与算法,随后研究成功了适于民用身份鉴定的全自动指纹鉴定系统,以及适于公安刑事侦破的指纹鉴定系统。从而开创了我国指纹自动识 别系统应用的先河。北大指纹自动识别系统的推出,使我国公安干警从指纹查对的繁重人工处理中解放出来。浙江省从1997年开始使用北大指纹自动识别系统, 采取省地(市)二级建库、省地(市)县三级查询的方式,形成了独特的“浙江模式”。省公安厅现已建立了100多万人的指纹库,是目前国内的第二大库。在 100多万人的指纹库中,检索一枚现场指纹仅需4分钟左右。2000年浙江省用指纹自动识别系统直接破案3063起,连带破案12000多起。破案率为全 国第一,并遥遥领先于国内其它指纹识别系统,被公安部树为指纹系统建设应用样板。
这里介绍一个综合应用的例子,一汽集团公司与国防科技大学最近合作研制成功“红旗轿车自主驾驶系统”(即无人驾驶系统),它标志着我国研制高速智能 汽车的能力已达到当今世界先进水平。汽车自主驾驶技术是集模式识别、智能控制、计算机学和汽车操纵动力学等多门学科于一体的综合性技术,代表着一个国家控 制技术的水平。红旗车自主驾驶系统采用计算机视觉导航方式,并采用仿人控制,实现了对红旗车的操纵控制。首先,摄像机将车前方的道路和车辆行驶情况输入到 图像处理和图像识别系统。该系统识别出道路状况、前方车辆的相对距离和相对车速。接着,路径规划系统根据这些信息规划出一条合适路径,即决定如何开车。然 后,路径跟踪系统根据需跟踪的路径,结合车辆行驶状态参数和车辆驾驶动力学约束,形成控制命令,控制方向盘和油门开启机构产生相应动作,使汽车按照规划好 的路径前进,即按自主驾驶系统的规划路径前进。
3 专家系统
专家系统是一种模拟人类专家解决领域问题的计算机程序系统。专家系统内部含有大量的某个领域的专家水平的知识与经验,能够运用人类专家的知识和解决 问题的方法进行推理和判断,模拟人类专家的决策过程,来解决该领域的复杂问题。专家系统是人工智能应用研究最活跃和最广泛的应用领域之一,涉及到社会各个 方面,各种专家系统已遍布各个专业领域,取得很大的成功。根据专家系统处理的问题的类型,把专家系统分为解释型、诊断型、调试型、维修型、教育型、预测 型、规划型、设计型和控制型等10种类型。具体应用就很多了,例如血液凝结疾病诊断系统、电话电缆维护专家系统、花布图案设计和花布印染专家系统等等。
为了实现专家系统,必须要存储有该专门领域中经过事先总结、分析并按某种模式表示的专家知识(组成知识库),以及拥有类似于领域专家解决实际问题的 推理机制(构成推理机)。系统能对输入信息进行处理,并运用知识进行推理,做出决策和判断,其解决问题的水平达到或接近专家的水平,因此能起到专家或专家 助手的作用。
开发专家系统的关键是表示和运用专家知识,即来自领域专家的己被证明对解决有关领域内的典型问题有用的事实和过程。目前,专家系统主要采用基于规则 的知识表示和推理技术。由于领域的知识更多是不精确或不确定的,因此,不确定的知识表示与知识推理是专家系统开发与研究的重要课题。此外,专家系统开发工 具的研制发展也很迅速,这对扩大专家系统的应用范围,加快专家系统的开发过程,将起到积极地促进作用。随着计算机科学技术整体水平的提高,分布式专家系 统、协同式专家系统等新一代专家系统的研究也发展很快。在新一代专家系统中,不但采用基于规则的推理方法,而且采用了诸如人工神经网络的方法与技术。
4 机器翻译
机器翻译是利用计算机把一种自然语言转变成另一种自然语言的过程,用以完成这一过程的软件系统叫做机器翻译系统。几十年来,国内外许多专家、学者为 机器翻译的研究付出了大量的心血和汗水。虽然至今还没有一个实用、全面、高质量的自动翻译系统出现,不过也取得了很大的进展,特别是作为人们的辅助翻译工 具,机器翻译已经得到大多数人的认可。目前,国内的机器翻译软件不下百种,根据这些软件的翻译特点,大致可以分为三大类:词典翻译类、汉化翻译类和专业翻 译类。词典类翻译软件代表是“金山词霸”了,堪称是多快好省的电子词典,它可以迅速查询英文单词或词组的词义,并提供单词的发音,为用户了解单词或词组含 义提供了极大的便利。汉化翻译软件的典型代表是“东方快车2000”,它首先提出了“智能汉化”的概念,使翻译软件的辅助翻译作用更加明显。以“译星”、 “雅信译霸”为代表的专业翻译系统,是面对专业或行业用户的翻译软件,但其专业翻译的质量与人们的实用性还有不少差距,有人评价说“满篇英文难不住,满篇 中文看不懂”,该说法虽然比较极端,但机译译文的质量确实却一直是个老大难问题。这里,我们不妨对现有的机译和人译过程作一比较,从中可以看出一些原因。
机器翻译:
1.一句一句处理,上下文缺乏联系;
2.对源语言的分析只是求解句法关系,完全不是意义上的理解;
3.缺乏领域知识,从计算机到医学,从化工到法律都通用,就换专业词典;
4.译文转换是基于源语言的句法结构的,受源语言的句法结构的束缚;
5.翻译只是句法结构的和词汇的机械对应。
人工翻译:
1.一般会先通读全文,会前后照应;
2.对源语言是求得意义上的理解;
3.只有专业翻译人员,而没有万能翻译人员;
4.译文是基于他对源语言的理解,不受源语言的句法结构的束缚;
5.翻译是一个再创造的过程。
在目前的情况下,计算机辅助翻译应该是一个比较好的实际选择。事实上,在很多领域中,计算机辅助人类工作的方式已经得到了广泛的应用,例如CAD软 件。如果计算机辅助技术用于语言的翻译研究,应该同样可以起到很大的辅助作用,这就是所谓的“计算机辅助翻译”。它集机器记忆式翻译、语法分析式翻译和人 际交互式翻译为一体,把翻译过程中机械、重复、琐碎的工作交给计算机来完成。这样,翻译者只需将精力集中在创造性的思考上,有利于工作效率的提高。
机器翻译研究归根结底是一个知识处理问题,它涉及到有关语言内的知识、语言间的知识、以及语言外的世界知识,其中包括常识和相关领域的专门知识。随 着因特网的普及与发展,机器翻译的应用前景十分广阔。作为人类探索自己智能和操作知识的机制的窗口,机器翻译的研究与应用将更加诱人。国际上有关专家分析 认为机器翻译要想达到类似人工翻译一样的流畅程度,至少还要经历15年时间的持续研究,但在人类对语言研究还没有清楚“人脑是如何进行语言的模糊识别和判 断”的情况下,机器翻译要想达到100%的准确率是不可能的。
5 人工智能思想的应用:在家里寻找外星人
人工智能的基本思想已经在许多领域中得到了应用,“在家里寻找外星人”(SETI@home)项目就是利用人工智能的神经网络和网格计算思想的一个成功案例。SETI@home是Search for Extra Terrestrial Intelligence at Home的缩写,意为:在家里寻找外星文明。该项目由美国行星学会和美国加州大学伯克利分校于1999年5月17日开始启动,它利用特定的PC机屏幕保护 程序,来调用全球上网的个人计算机的闲置能力,分析世界上最大的射电望远镜获得的数据,帮助科学家探索外星生物。其计算模式的实质就是网格计算。
SETI@home项目的大致流程是这样的:
1.政府或者研究部门将一项需要巨大运算量的任务以程序和数据的形式提交给服务器。
2.服务器将数据和程序代码分成更小的部分,也称“子任务”。
3.在志愿者的PC机上安装一种特殊的客户程序(事实上是一个屏幕保护程序),它能自动同服务器联络,自动下载和处理子任务。
4.子任务处理完后的结果被送回服务器。然后,客户程序下载新的子任务,继续处理。
5.一旦所有的子任务处理完毕,服务器就将各种结果汇总,生成最后的报告,并把最终结果发回提交人。