基于OpenCV 的“数字图像处理”课程阶梯式实践教学体系研究

2024-04-17 05:18孙勇智
科教导刊 2024年8期
关键词:数字图像处理阶梯式图像处理

丁 进,施 秧,孙勇智

(浙江科技大学自动化与电气工程学院 浙江 杭州 310023)

当前我国经济处于从高速增长向高质量发展转变的重要阶段,以人工智能为代表的新一代信息技术将成为我国“十四五”期间推动经济高质量发展、建设创新型国家,实现新型工业化、信息化、城镇化和农业现代化的重要技术保障和核心驱动力之一。机器人作为新兴技术的重要载体和现代产业的关键装备,引领产业数字化发展、智能化升级,不断孕育新产业新模式新业态。

“数字图像处理”课程是人工智能、机器人、自动化等新工科专业人才培养方案中的核心课程,为其他一些主干课程,比如移动机器人导航、无人驾驶基础、智能汽车制作等的顺利开展奠定了技术基础[1-2]。数字图像处理课程主要讲授数字图像基础,包括图像的定义、表示和采样、图像的灰度级和颜色空间、图像的统计特性和图像的评价指标;图像增强,包括图像灰度变换、图像空间滤波、图像频域滤波;图像变换,包括几何变换、灰度变换、彩色变换;图像复原,包括图像去噪、图像反模糊、维纳滤波;图像压缩,包括压缩依据、无损压缩方法、有损压缩方法;图像分割,包括阈值分割、区域分割、边缘分割;图像特征提取,包括纹理分析、形状分析、颜色分析;机器视觉,包括目标识别、图像匹配、三维重建等。然而,在当前的课程教学中,理论教学占了大部分学时,实践教学学时少,仅有实验部分面向实践教学,无法全面彻底地培养学生的动手实践能力,使之在实际工程项目中能够通过编写代码解决图像处理与分析的相关问题[3-4]。因此,“数字图像处理”课程的实践教学亟待改革。而如何为学生搭建合适的实践教学体系,为其建立平滑的学习曲线是关键。

本文组织如下:在第二部分,首先简要介绍了OpenCV开源图像算法库,其次重点阐述了“课堂—作业—实验—大作业”四层阶梯式实践教学体系。在第三部分,对基于OpenCV的“数字图像处理”课程阶梯式实践教学体系进行了总结。

1 基于OpenCV 的“数字图像处理”阶梯式实践教学体系

1.1 OpenCV 简介

OpenCV 是Open Source Computer Vision Library 的缩写,是一个跨平台的计算机视觉库,提供图像处理、图像分析和机器视觉的各种功能和算法[5]。它由C 和C++编写,同时也支持Python 和Java 等其他编程语言。OpenCV 提供的功能非常丰富,包括图像处理、图像分析和机器视觉。图像处理是计算机视觉的基础,OpenCV 提供了各种图像处理算法,包括图像滤波、图像分割、图像变换、图像特征提取等。图像分析是指从图像中提取信息,OpenCV 提供了各种图像分析算法,包括图像识别、图像分类、图像跟踪等。机器视觉是指利用计算机来模拟人的视觉功能,Open-CV 提供了各种机器视觉算法,包括物体检测、目标跟踪、运动分析等。OpenCV 是开源的,可以用于商业和研究领域,具有跨平台特性,支持多种操作系统和硬件平台。Open-CV 的算法经过优化,可以实现实时处理。OpenCV 已经被广泛应用于计算机视觉研究、图像处理和编辑、机器视觉和自动化、医学图像处理以及视频分析和监控等领域。

1.2 “课堂—作业—实验—大作业”四层阶梯式实践教学体系

“数字图像处理”课程选用冈萨雷斯、伍兹著的《数字图像处理》教材,阮秋琦、阮宇智译,第4 版,电子工业出版社出版。该书比较适合作为讲授数字图像处理内容的入门教材,它从图像处理的起源发展讲起,依次讲授图像处理基础、空间域图像增强方法、频率域图像增强方法、图像复原基本方法、彩色图像处理、形态学基本操作、图像压缩基本概念、图像分割基本方法、特征描述和物体识别基础知识。这些章节的知识点包含了大量的图像处理方法和技巧,如果仅靠课堂讲授和少量实验学时,难以培养学生的动手实践能力,使得他们在实际工程项目中能够灵活运用并编写代码解决相关图像处理与分析的问题。

本文提出了“课堂―作业―实验―大作业”四层阶梯式实践教学体系,目的是为学生建立“算法函数讲解―单个算法简单应用―多个算法融合应用―工程问题综合运用”的平滑学习曲线,由浅入深、由点及面地训练他们在实际工程项目中编写图像算法的能力。

在“课堂”这一层次中,教师不仅要讲授每个图像处理方法的原理和必要的数学推导,更要结合OpenCV 给学生介绍该方法的编程实现、对应的OpenCV 函数、函数的参数等具体实现细节。比如图像处理基础中的连通域概念,教师介绍完它的理论知识后,紧接着介绍OpenCV 中与之对应的函数connectedComponents 和connectedComponentsWithSt ats,以及这两个函数的每个参数(比如image、label、connectivity等)的意义,可以结合OpenCV的讲解页面进行介绍。这两个函数讲解完之后,为了让学生有更加直观的体会,教师可以在机器上面运行这两个函数,并试验不同的参数输入,让学生观察运行结果和中间变量变化情况。在讲解空间域滤波时,教师首先介绍空间域滤波的种类,其次介绍OpenCV的相关函数及其参数,比如平滑函数Gaussian-Blur(参数sigmaX,gigmaY,ksize 等)和锐化函数Sobel(参数dx,dy,ksize,scale 等)。讲解完函数细节后,教师运行演示例子给学生们以感性的认识。

在“作业”这一层次中,由于学生在课堂上已经对图像处理方法的理论和OpenCV 函数有了深入的认识,接下来通过课后作业令其通过编程进一步加深对这些知识点的理解与实践。每章的课后作业可以有多个,每个作业都是对本章的单个图像处理方法的编程练习。比如,在第二章数字图像基础中,可以作为作业的知识点包括读取一幅图片的宽和高、对一幅图片进行采样、标记出一幅图像的连通区域等。在频率域图像增强一章中,可以设置两幅图像的谱图和相角交叉重构的作业来加深学生对谱图和相角在重构中的角色的理解。

在“实验”这一层次中,由于学生已经在作业中对单个图像处理知识点有了动手实践的经历,教师将各章的知识点整合一下,设计实验题目,对学生综合利用图像处理知识点的能力进行训练。比如,在空间域图像增强一章,可以将图像去噪、锐化、灰度值变换综合起来考查。笔者为空间域图像增强一章布置的实验题目为:通过空间域图像处理方法去除噪声并突出病灶。在形态学图像处理一章,可以将膨胀、腐蚀、开运算、闭运算等形态学操作综合起来进行出题。笔者为形态学图像处理一章设计的实验题目为:为指纹图像去噪并将断裂的部分连接起来。

在“大作业”这一层次中,由于学生已经对每章的知识点进行了综合编程练习,教师可以尝试使用实际项目中的图像处理问题进一步训练其灵活运用图像算法的能力。工程项目问题往往综合了多个章节的图像处理知识点,在大作业环节布置面向实际工程项目的问题,既能激发学生的学习兴趣,又可以更深入地训练学生的动手实践能力。比如,对高速铁路接触网系统中关键部件——绝缘子位置的准确识别有助于学生对其分割,进而判断其有无缺陷。在该大作业中,首先需要对绝缘子图像进行预处理,进行去噪、对比度拉伸等操作,其次进行边缘检测和阈值分割,提取出图像中物体的边缘,可能包括绝缘子、杆柱、腕臂等。根据绝缘子轮廓特征,采用Hough 变换的方法,检测绝缘子边缘进而实现定位。可以看到,在该大作业中,用到了空间域图像增强章节的直方图均衡化和平滑滤波,数字图像基础章节的连通区域检测,形态学图像处理章节的开运算和闭运算,以及图像分割章节的Canny 边缘检测算法、Hough 变换和Otsu 二值化算法。

可以看出,“课堂―作业―实验―大作业”四层阶梯式实践教学体系能够由浅入深、由点及面地培养学生的图像处理编程实践能力。课堂环节讲授图像处理知识点以及对应的OpenCV单个函数,作业环节使用MS Visual Studio练习OpenCV函数,实验环节对各章的知识点进行了Open-CV 综合编程,大作业环节使用实际工程例子对学生灵活运用图像处理知识进行训练。调查问卷显示大多数学生认可这种阶梯式实践教学体系,表示在该体系训练下,自己动手编写图像算法的能力和分析问题的能力得到了很大的提高。

2 结语

数字图像处理技术在人工智能和机器人领域有着重要的应用。在人脸识别中,数字图像处理技术可以用于提取人脸特征,并将其与数据库中的已知人脸进行匹配,从而实现人脸识别。在目标跟踪中,数字图像处理技术可以用于提取目标的特征,并将其与数据库中的已知目标进行匹配,从而实现目标跟踪。在图像分割中,数字图像处理技术可以用于将图像分割成不同的区域,以便于提取图像中的感兴趣区域。在机器人导航中,数字图像处理技术可以帮助机器人识别周围的环境,实时建图并规划行进路线。然而,在当前的课程教学中,理论学时占了绝大部分,实践学时偏少,仅有少数几次实验被用来培养学生的动手实践能力,因此,设计一种全新的、能够充分全面地培养学生动手能力的课程实践教学体系至关重要。本文提出一种点面结合、深入浅出的阶梯式实践教学体系。该体系包括“课堂―作业―实验―大作业”四个层次,对应于“算法函数讲解―单个算法简单应用―多个算法融合应用―工程问题综合运用”四个内容,可以为学生建立起平滑的学习曲线。学生的作业、实验、大作业完成情况显示,大多数学生的任务完成质量超过预期。课程结课后的问卷调查显示,大多数学生认可这种全新的实践教学体系,认为该体系能够有效地培养其动手能力。

猜你喜欢
数字图像处理阶梯式图像处理
探讨个体化阶梯式疼痛管理模式在肿瘤晚期患者中的应用效果
探索学时积分制 构建阶梯式成长激励体系
谈阶梯式朗读教学——以《天上的街市》为例
基于图像处理的机器人精确抓取的设计与实现
机器学习在图像处理中的应用
信息与计算科学专业《数字图像处理》课程教学探讨与实践
微课在大学专业课中的应用研究
以应用实例为主线、以程序设计为主导的数字图像处理课程教学方法改革
基于图像处理的定位器坡度计算
普通高中音乐鉴赏模块阶梯式教学法的探索