APP下载

“OBE”理念下工科课程逆向教学设计及其效果定性研究
——以数字图像处理为例

2022-11-03贾茜赖重远

现代信息科技 2022年18期
关键词:图像处理编程算法

贾茜,赖重远

(江汉大学 人工智能学院,湖北 武汉 430056)

0 引言

OBE(Outcome-Based Education)亦称“目标导向教育、能力导向教育”或“需求导向教育”。自20世纪80年代被提出以来,OBE 到目前已形成一套完整的理论体系和实践模式,为高等工程教育改革提供了切实可行的依据,并被证明是正确的方向,已成为当前教学研究的热点。OBE 转变了传统的“知识导向”教育方式,其特点是衡量学生能做什么,而不是学生知道、了解什么,这种理念更加贴合现代社会和行业需求,即强调学生的“工程能力输出”。所以,修习工科类的课程——例如数字图像处理,最终是否能“学以致用”,将所学的技术实践到具体的工程问题,胜任实际的图像处理工程任务,是评价教学效果的关键。

数字图像处理是模式识别、机器学习和图像理解等高级视觉问题的基础,也是计算机视觉、人工智能、机器人等技术的前置课程,其研究的是计算机视觉系统中的底层和中层问题,包括:图像信息的获取、表示、存储、显示、传输、增强、特征提取等技术。在本科阶段掌握数字图像处理基本技术,是为将来从事IT(Information Technology)、AI(Artificial Intelligence)行业和其他交叉学科领域的研发工作,以及硕、博士阶段深造提供必要的知识储备和研究基础。近年来,AI技术已渗透到社会生活的方方面面,该领域人才需求急剧增长,国内不少高校积极筹建了人工智能专业,我校于2020年获批新增该专业。我院曾面向电信、通信专业本科生开设数字图像处理课程有8年时间,而目前该课程已被人工智能、计算机、智能控制等更多专业纳入人才培养方案中,并且有越来越多其他的专业学生被该课程所吸引。然而,数字图像处理是一门应用广泛的交叉学科,它涵盖了微积分、矩阵论、概率论、信号与系统、信息论与编码和高级程序设计等多个领域的知识,涉及繁复的数学原理推导、众多的软件开发工具和实际应用场景。所以,这门课程学习难度大,并且行业技术更新速度快,没有被精心设计的教学内容和模式,很难让学生真正掌握该领域的知识和技术。

在此背景下,本研究首先深入剖析数字图像处理课程教学各个环节普遍存在的困境;再针对这些问题,探讨了以OBE 理念来指导一种新的教学模式的构建思路,并阐述OBE 实施四项原则:“清楚聚焦、扩大机会、提高期望、反向设计”,如何落实到课程具体的教学环节中;以定性研究的方法,展示了实施该教学模式后,学生真实的学习体验、“输出成果”和取得的成效,表明该教学模式对于提升工程能力带来了显著的促进作用。

1 数字图像处理教学中存在的困境

结合研究团队教师自身实际教学经验,和对近年该课程相关教研文献资料的归纳,分别从学生和老师两个角度剖析该课程教学过程中普遍存在的困境。

于学生而言,学习这门课程需要掌握的数学知识较多,如果没有对先修课程中相应的数学知识进行有效的梳理和复习,很难深入理解图像处理算法原理,从而打击学习热情;再者,课程的实践机会不足,学生在有限的时间内难以将所学的方法全面、细致的亲自编程实现,来验证和从感性上认识算法步骤,而且对于实际项目的工程实践途径也较少,缺乏综合运用所学技术的机会。

于老师而言,除非具备深厚的数学功底、渊博的知识面,又有十足的图像算法项目开发经验,否则很难深入浅出的阐明算法中数学公式的逻辑,带领学生轻松愉快地学习算法;其次,行业内的各种图像处理软件开发工具日新月异,如果盲目地教授这些抽象程度和集成度越来越高的开发工具包的使用方法,不仅容易走进“黑匣子”模型的误区,只关注不断推陈出新的软硬件产品,完全由技术来驱动教学内容,还会给师生双方带来焦虑。再次,传统的作业、考核形式,并不能有效检验学生的学习效果,而且教学互动手段不足,难以掌握学生对知识的理解情况和学习进度。

在这种情况下,教师普遍面临两种教学方式:一种是关注图像处理算法的分析和讲授,而另一种是偏重讲解和应用各种软件编程开发平台和图像处理工具包的使用。前者在讲授中涉及大量的数学原理和公式推导,例如求偏微分(边缘检测)、卷积(空间域滤波)、傅里叶变换和滤波器设计(频率域滤波)等,而弱化了显式的计算机编程应用。本课程的目的是将这些数学工具应用在实际的图像工程系统中,去解决具体的工程问题,单纯地去讲授算法数学求解和证明过程,与工程实践相脱节,也不适应本科生的学习模式,学生会感觉枯燥乏味又难以理解。而后者把本课程当成一门类似计算机编程的课来教授,由软件技术来驱动和组织教学内容,学生即使学会了某种平台的图像处理应用程序开发,也不一定能理解开发工具包背后的图像处理技术原理,这与学生融会贯通地综合运用技术去解决实际的工程问题,以及今后从事该领域技术研发工作或硕、博士研究生阶段深造时所做的深层次算法改进和创造之间,存在较大的鸿沟。

2 基于OBE 理念的课程目标和教学内容构建

OBE 理念下的教学过程需要教育机构关注4 个问题:(1)想要学生学习的成果是什么?(2)为什么要学生取得这样的学习成果?(3)如何有效地帮助学生取得这些学习成果?(4)如何知道学生取得了这些学习成果?从这4 个基本问题出发,以下分别来讨论本研究的教学模式设计思路和改革举措。

2.1 “清楚聚焦”课程教学目标

首先,以OBE 实施四项原则中的第一项——“清楚聚焦”为方针,本研究重新设立了清晰、精准的课程目标。在以往的教研工作中,通常的做法是事先开发一套图像处理软件演示系统,然后在授课时给学生演示效果。而我们的理念与此不同。OBE 实施原则的第三项——“提高期望”指出,教师应该提高对学生学习的期望,制定具有挑战性的执行标准,以鼓励学生深度学习,促进更成功的学习。为此,我们设立了如下目标,该课程致力于:(1)让学生学习完本课程,能独立开发一套完整的、可演示的图像处理软件系统;(2)能够学以致用,把所学的技术应用到电子设计大赛、机器人大赛等一些学科竞赛中,提高视觉传感模块的性能,解决实际的工程问题。我们希望通过本研究中的教学模式的实施,不仅使学生既能深刻理解图像处理中各项技术的基本原理和算法步骤,又能上手编程实践算法去解决复杂的工程实际问题。对于本科层次的普通学生来说,这些目标看似难以达到,但后续的定性研究表明,通过本研究中“逆向设计”的教学内容以及精心安排的作业和考核形式,普通学生也能够“精熟”图像处理技术。

2.2 “逆向设计”教学内容

正在实施的教学大纲中包含理论部分32 学时,实验部分8 学时,共计40 学时,课程在本科第5 学期开设。OBE实施原则第四项:以最终目标(最终学习成果或顶峰成果)为起点,反向进行课程设计,开展教学活动。据此,围绕上述课程目标的两个方面,根据课时,我们紧凑地安排了教学内容。每次教学4 节课连排,一次课对应一个主题,抛开绪论,共设置了8 个技术专题,分别为:图像几何变换与灰度变换、空间域滤波、频率域滤波、色彩空间域彩色图像处理、图像复原与重建、形态学处理、图像分割、特征分析与提取。这8 个技术专题既相互独立又有前后的逻辑关联,由浅入深的介绍数字图像处理方法的数学和物理基础、具体算法和应用条件,并使学生理解这些技术在整个计算机视觉系统中的地位。实验部分有2 次课,分别为:工程项目举例和GUI(Graphical User Interface)设计。以上每个专题内容实际上是将“课程目标”中开发图像处理系统这一任务进行拆解后的子模块,每次授课以围绕一项技术专题开展,为最后完成整个图像处理系统奠定基础,而每一次的作业也是这个系统中的一个功能模块。

课程资源配套的编程软件平台是MATLAB。尽管近些年在图像处理和计算机视觉领域,很多的科研工作是以Python 实现,而Python 有很多第三方工具库的支持,例如OpenCV-Python 也可以做图像处理算法;但在教学中我们之所以选择MATLAB,是因为它是面向工程师和科学家的最简单且最高效的计算环境,它采用数学、图形和编程的方式,对初学者非常友好,并且自带Image Processing Toolbox,不需要安装其他第三方库。我们希望学生在学习本课程时,重点关注图像处理算法的原理和实现,而不是在安装配置编程环境,熟悉各种开发包调用上耗费过多精力和时间,阻碍学习进度、降低学习效率和兴趣。一旦学生熟练掌握了利用MATLAB 开发图像处理算法,可以快速地迁移到Python 或其他编程语言和IDE 开发环境。

本课程所设计的教学内容围绕计算机视觉领域的中、底层问题,而中高层的视觉问题,如:机器学习、深度学习、图像理解和语义描述等内容,所涵盖的内容如此庞大,以至于需要开设另外的课程来讲授,我们希望课程焦聚的重点突出,所以这些内容没有安排在本课程的教学内容中。

3 “混合式”教学方法与在线平台资源建设

OBE 实施的第二项——“扩大机会”,指出要在时间和资源上保障每个学生都有达成学习成果的机会。在线教学平台是突破时间空间以及教材内容的限制的重要手段,有些高校对于该课程已经积极建设了较为成熟的MOOC 平台,但不一定适合本研究所构建的课程内容以及我校学生的学习难度。因此,我们利用“超星学习通”建设了MOOC 在线教学平台,采取课堂和线上混合式教学模式。根据教学大纲的内容,对技术专题知识点进行挑选、梳理、加工和沉淀,设计和制作了更适合我校本科学生层次和学习难度的线上教学资源。其中的章节内容与前述8 个技术专题相对应,每一个知识点有配套的课件PPT 以及我们录制的讲授视音频文件,还有一些延伸阅读材料。

课堂理论教学时,通过“引入工程项目,采用任务驱动”的教学模式来提高学习效果。对公式推导和代数证明尽量化繁为简,多以生动、直观的多媒体方式讲授图像处理算法原理,阐述和演示矩阵变换的物理意义、运算的步骤和结果,让学生清楚地理解每个算法到底对图像矩阵数据做出了怎样的操作。而学习编程实现算法的部分则主要留给学生在课后通过线上教学资源在MOOC 平台自主完成,不过多占用课堂时间。在教学过程中,首先要使学生了解各项技术隐含的数学方法和原理,然后将所学的图像处理算法在计算机上编程运行,体会矩阵计算的步骤和结果,通过直观地观察图片处理前后的处理效果,深入理解该技术的目的和应用范围,在此过程中也逐步训练了编程能力。

在MOOC 平台讨论区,每次课结束后老师会发布1 ~2个讨论主题,内容为编程作业中共性的或典型的问题,以及课程内容相关话题的思考。学生们在此板块踊跃发言,也可以自行提问,老师和同学来解答、参与讨论。教师团队从中更加了解学生对具体问题的理解和掌握情况,并获得了一些教学素材的灵感,可以说教学相长。

4 作业与考核形式改革

前述“课程目标”之一的任务是基于MATLAB 设计一个具有交互方式运行的图像处理系统,这是一项极具挑战性、综合性较强的设计任务。为实现这个目标,将成果目标进行拆解,设计了下面的平时作业和考核形式。

4.1 “成果导向”的平时作业设计

在计算机上编写程序,这是最适合本课程教学内容的练习方式,相较于传统方式在作业本上写题,其优势不言而喻。为此,我们编写了一套详细的MATLAB 实验指导放在MOOC 平台中,与理论课的技术专题相互呼应。学生在此前已经学习过MATLAB 系统仿真课程,所以完全有能力根据实验指导完成每一次的编程练习即作业。不过编程作业的形式会给老师批阅作业和检查程序运行效果带来难度。为此,在每次课结束后,我们会在MOOC 系统发布编程练习题目,要求学生以实验报告的形式提交,内容需包含程序源代码、实验结果图和分析;并且在系统中设置了提交截止时间(一般以一周作为期限),以督促学生趁热打铁,在规定的时间内完成作业,实践学习内容。老师在MOOC 平台系统内批阅作业,可以查看学生的报告中的程序和实验结果,还可以直接下载程序源代码来运行,以方便对学生编写的代码做具体指导。

每次以图像处理中的一项技术专题为核心,设置这样的编程作业,其实是为了课程目标完成整个图像处理系统做铺垫,每一次的作业均是这个系统中的一个功能模块。OBE强调知识整合而不是知识割裂,而最后的大作业就是对知识的整合和综合运用,逐步提高工程实践能力。

4.2 “知识整合”的考核形式

本课程期末考核形式设置为大作业和设计报告形式,考核方案如表1所示。这个系统中图像处理的各模块算法大部分已在平时的编程作业中完成,还需要设计GUI 和回调函数编程就可以集成实现整个系统。因此,在实验教学部分中设置了MATLAB GUI 设计的相关内容,包含利用GUIDE(MATLAB5.0 版至今)或者App Designer(MATLAB2016版至今)两种方式,学生任选其一完成大作业任务。设计题目和考核要求在考试前一周布置,考试时老师现场验收每位同学所开发的图像处理系统,演示界面控件功能,并进行简短的答辩,回答老师提出的有关技术细节的问题。

表1 《数字图像处理》课程考核方式

大作业的另一个重要部分是设计报告,目的是训练学生撰写内容充实、逻辑清晰、格式规范的总结报告。设计报告内容需包含:课题研究内容及意义、相关算法原理介绍、设计方法和步骤(系统逻辑框图、各模块设计内容及程序代码)、实验结果及分析、心得体会、参考文献、附录等。通过撰写设计报告,学生必须清晰地理解并阐述算法原理和GUI 逻辑流程,才能写出优秀的报告,这不仅是对课程所学内容的总结和查漏补缺,也是对今后撰写学术论文、毕业论文和学科竞赛技术报告的训练。课程最终成绩由平时成绩(70%)和期末考核成绩(30%)来综合评定。

5 教学案例设计

教学案例的设计从挑选素材开始,就要“因材施教”,考虑学生的兴趣点、接受程度和可操作性;并且要关注行业前沿,将新的技术和手段引入课堂,让学生感到既有趣又先进,在强烈的求知欲的驱使下主动学习。下面以“色彩空间与彩色图像处理”技术专题为例,分享一次教学案例设计。

5.1 问题引入

前面已学习过图像的几何与灰度变换,空间域与频率域滤波,图像复原与重建等,接触到的例子主要以灰度图像为主,将单通道的灰度图看成一个二维矩阵来讨论其处理和计算的方法,但在实际应用中,特别是通用数字图像处理领域所要处理的对象更多的是彩色图,引入2 个问题:(1)在绪论中提到过RGB 彩色图可以看成3 个二维矩阵,对于有三个通道的矩阵数据我们应该怎样来处理?(2)除了RGB这种三原色混合所形成的彩色图像,还有没有其他表示颜色的模型?以这两个问题为切入点,引起学生好奇心来驱使他们学习本节的内容。

5.2 各色彩空间的概念讲解

分别讲解RGB、HSV、YCbCr、LAB 等几种常用的色彩空间概念和表示方法、相互之间的转换和取值范围,在具体介绍一种色彩空间时,通过最简单的单一色彩图像,调整单个通道分量的值,展示色彩分量合成后像素色彩最终结果,让学生直观的感受每个分量的含义和它对图像整体颜色的影响。

5.3 利用颜色特征处理图像

为了让学生能够深入理解色图像在各彩空间中的表现形式,并能迅速用颜色特征来解决实际的工程问题,在本案例中利用图像处理和计算机视觉工具中的Color Thresholder App 例程来作为辅助教学工具。选择MATLAB 自带测试图片中的mandi.tif,给学生展示这幅图在不同色彩空间中的点云数据,启动MATLAB2021b 版,在命令行中输入以下代码来对图像进行预处理和启动此例程:

>>X = imread(‘mandi.tif’);

>>rgb = demosaic(X,’bggr’);

>>colorThresholder(rgb)

生成如图1(a)所示界面,然后依次选择各个颜色空间,并调节颜色分量的滑块控件,来限定颜色分量的取值范围,以显示图像的不同部分。当学生有了感性认识以后,提出问题:这幅图整体偏暗,对比度较低,并且人脸肤色与周围的物体颜色也比较接近,如何利用颜色信息准确地分割出人脸?启发学生思考。此时,选择HSV 色彩空间,通过例程中的绘图工具在图像点云3D 视图中绘制多边形来包围要分割的颜色,并配合滑条控件来微调,如图1(b)所示,即可分割出人脸,生成感兴趣区域Mask,同时还可以导出执行此功能的函数源代码。

图1 Color Thresholder App 色彩分割器

引入此例有以下3 个方面的目的:(1)让学生深刻地理解不同色彩空间的表示,以及如何利用颜色特征;(2)学习导出的函数代码,以迁移到开放性实验、学科竞赛等目标检测与提取任务模块中,例如:机械手、无人机平台的人脸跟踪,用肤色特征代替计算复杂的人脸检测算法来快速搭建系统、取得效果;(3)举隅演示MATLAB 中Image Processing Toolbox App 用来学习和帮助开发图像处理系统,启发学有余力的学生在课余自学进阶内容。

6 “成果输出”标尺下的教学成效定性研究

6.1 学生优秀大作业展示

期末考核的大作业看似较难,如果没有本课程在之前每次编程作业练习做铺垫,即使对于本身编程能力强的学生也会是一项需要耗费数周时间和精力的任务,对于普通学生来讲更是难以完成,“刚看到老师布置的大作业要求不相信自己能够做出来。”——一位学生在大作业设计报告心得中写道。但由于有平时编程作业的积累,各功能模块其实已经完成,只需要设计GUI 中各个功能控件并编写回调函数,把平时作业的模块程序安放其中,就可以集成实现整个系统。在实验课中,首先讲解MATLAB GUI 和App Designer 两种设计方法,以按钮实现“打开图像”和“灰度转换”两个基本功能,编写回调函数并演示结果后,学生们表现出了极大的兴趣,迫不及待想要尝试其他功能控件来实现自己的功能,完成整个系统的方法和步骤变得清晰而又具体。最终在验收时,绝大部分同学都十分认真地完成了此次的任务,得心应手地介绍和演示了自己设计的系统,不乏有一些独具匠心的设计,他们表现得很自豪,能看出他们从中获得了极大的成就感。以下展示本学期两位同学的优秀大作业设计。

如图2(a)所示,这位学生利用GUIDE 设计的交互界面良好,操作便利,而且整个系统集成了非常全面的图像处理功能。除了主界面上展示的功能控件以外,还设计了菜单栏中下拉菜单的方式来实现其他的更多功能,如图2(b)所示。

图2 优秀大作业1

如图3所示,这位学生不仅制作了精美的GUI 界面,用App Designer 完成了所有要求的功能,精心布局每个控件,包括字体和图标;在设计报告中,还用思维导图画出了整个系统运行的逻辑流程,并撰写了非常详细的操作说明,颇具商业软件的说明文档风格,可以看出花费了很多心思。如图4所示。

图3 系统界面(优秀大作业2)

图4 系统流程图(优秀大作业2)

以下摘抄自几位同学设计报告中的心得体会:

“从接收到老师布置的任务开始,我就迫不及待地想要完成这项练习,因为我觉得这实在是太有趣了,太有吸引力了,于是对于这项作业我是马不停蹄地完成了起来,在最后一节课上就已经构思出了我的界面该如何设计,再根据老师在课上讲解的对App Designer 的使用方法,一步一步地将代码带入进去,一次一次的添加控件,修改代码,在网上查阅资料,最终做出了一些名堂。”

“本课题中采用的原理代码大部分是之前在授课过程或者课后作业中使用过的代码,但在MATLAB 的App Desiger功能中需要理解这些代码的原理并合理利用,所以对平常的积累有着很高的要求。在验收过程中,我对于一些算法的理解不深刻不清晰,老师帮我指出来后,在撰写报告时,我重新深切体会了一番,对于算法有了更深刻的理解,收获良多。”

“在这次设计大作业的过程当中,我从零开始一步一步设计了一个可以完美运行并投入使用的图像处理程序,每一个小的模块或者控件都需要小心翼翼地处理,让他们能有正确的作用以及良好的效果,我经历了反复思考后最终一点一滴的完成一个可用的程序,希望以后还会有这样的机会。”

“我觉得MATLAB 这么好用的软件以后一定会再次用到,而掌握其中的图像处理功能并能独自设计出具有这么多功能的界面我感觉非常自豪。”

“将项目完整做出来的开心,遇到自己不会的地方查阅资料后的恍然大悟,自己辛辛苦苦积累的经验,都让我受益匪浅,很感谢老师对我教给我这么多这么有趣又有用的知识,虽然这门课程结束了,但我对这门有意思的学科的学习还没结束。”

本课程平时作业与考核方案的设计自始至终贯彻OBE理念,带领学生“逐级达到顶峰”,即将学生的学习进程划分成不同的阶段,并确定出每阶段的学习目标,这些学习目标是从初级到高级,最终达成顶峰成果。

6.2 解决学科竞赛中的工程问题

在2021年举行的“全国大学生工程实践与创新能力大赛”和“全国大学生电子设计大赛”中,我系学生分别参加了“智能配送无人机”和“植保飞行器”两个赛题。这两个赛题都需要用到OpenMV 视觉模块进行无人机导航。以“智能配送无人机”赛题为例,无人机应具备自主定位、路径规划、目标识别、货物搬运与投递等功能,初赛赛场地图如图5所示。

图5 第七届全国大学生工程实践与创新能力大赛“智能配送无人机”赛题地图

在定位A、B、C 三个目标区时,根据在数字图像处理课程上所学知识,学生们最初想到的方案是存储目标模板图,然后利用特征点检测算法来匹配。由于无人机在飞行时拍摄图像很容易收到光照条件和阴影的影响,经过测试发现,该方案不能稳定的检测特征点或者检测时间过长,从而影响投递货物的准确性。学生们观察到目标区标志都是圆形,于是修改了方案,采用Hough 变换的圆检测来定位,测试发现该方法能够快速、稳定的检测到圆形即目标区标志,为无人机的准确投递和自主路径规划创造了条件。由于学生能灵活应用数字图像处理课程上学到的技术,大幅度提高了无人机视觉传感模块的性能,最终我系学生在初赛中获得了湖北省赛区一等奖、全国总决赛金奖的成绩。

7 结论

“OBE”聚焦的是学生最终达成的顶峰成果,强调以“精熟”内容为前提。在本研究中,首先“提高期望”,设立了普通本科层次学生看似难以企及的课程目标,然后详细阐述了为实现这些目标所构建的新的教学模式,包括:“逆向设计”教学活动,建立更加适配所设计的教学内容和学习难度的MOOC 平台,“混合式”教学方法,“成果导向”的作业与考核评价形式。最后,以定性研究的方法,通过展示学生的“成果输出”,论证了本研究贯穿“OBE”理念构建的教学模式的有效性。学生不仅学习动机和热情大幅度提高,而且真实地掌握了图像处理基本技术,获得了独立开发一套图像处理软件系统所具备的知识储备和编程能力,并能利用该技术在学科竞赛中取得成效。师生双方都从该模式的教学过程中获得了成就感。

目前课程的MOOC 平台视音频资源主要是教师个人录制,下一步准备请专业的在线教育摄制公司来制作更加细致、精美的视音频教学材料。我们将紧跟行业前沿技术,与时俱进,持续更新教学内容,培养当今社会和行业需要的人才。在未来的教学实践中也将不断改善优化本研究的教学模式,并尝试迁移到其他工科同类课程。

猜你喜欢

图像处理编程算法
基于线性源法与图像处理的土壤饱和导水率快速测量方法
“课程思政”视域下职业学校《图像处理》课程教学改革实践
构建《Photoshop图像处理》课程思政实践教学路径的探索
基于图像处理与卷积神经网络的零件识别
玩游戏学编程,Blockly Games上手玩
纺织机上诞生的编程
Travellng thg World Full—time for Rree
编程屋完成数百元万天使轮融资
学编程,先画画
学习算法的“三种境界”