南京邮电大学通信与信息工程学院 邓丽珍 朱 虎
“图像与视频处理”课程立体化教学研究
——以归一化互相关图像匹配为例
南京邮电大学通信与信息工程学院 邓丽珍 朱 虎
【摘要】立体化教学逐渐成为高校工科专业教师教学的一种重要的教学方法,本文针对工科课程“图像和视频处理”的教学,提出了“实际意义和应用→定义→数学原理→编码→三维效果演示”全方位立体化的教学模式,该模式把工科理论和数学依据以及编程实践浑然天成般的融合在一起,从而全面提高学生的理论创新和实际动手能力。本文以图像匹配里的归一化互相关匹配为例,深入阐述了立体化教学模式实现的具体过程。
【关键词】图像和视频处理;立体化教学;归一化互相关;Matlab编程
图像和视频处理是信息技术中的一门新兴学科,它在军事、安保、医学、遥感、气象等领域得到了广泛应用。“图像和视频处理”课程是高等工科院校通信工程、电子信息工程、广播电视工程和自动化等专业的一门重要专业课,是南京邮电大学广播电视工程专业开设的本科生主干课程。该课程是图像与广播电视工程专业学生本科阶段接触的第一门专业基础课程,向学生介绍了图像与视频处理方面的基础知识。该课程主要将数字图像、视频等媒体信息的处理技术有机地融合在一起,揭示其内在的联系,以便让学生在有限的学习时间内掌握更系统、更全面的知识。
“图像和视频处理”课程是一门对数学推理能力和编程动手能力都要求比较高的课程。传统的照本宣科式的教学方式,忽略了学生的理论联系数学和实践能力培养,缺乏综合应用能力的训练,导致学生面对具体应用问题无从下手。为了加深学生对该课程理论的数学基础的掌握和增强学生解决实际问题的能力,在教学内容和教学方法上进行改革,在教学中引入立体教学法。通过工科的定义联系数学原理在到编程实现,最后到实验结果立体显示的方式,来巩固所学理论知识,加深学生对抽象理论知识的理解和感性认识,同时更好地培养学生的理论功底和创新能力,进而达到学以致用的目的。
本文在结合了“图像和视频处理”课程中的具体内容的基础上,作者提出一种“图像和视频处理”课程教学中的立体化教学模式。该教学模式分为“实际意义和应用→定义→数学原理→编码→三维效果演示”的五个教学环节,五个环节环环相扣,相互依存,把工科定义和数学理论以及编程实践浑然天成般的融合在一起。通过对实际意义和应用的讲解提高学生学习的兴趣,从而引出工科定义,通过分析其数学意义,提高学生对其理论的数学依据的理解,可以更好的激励学生的创造性思维;然后,通过编程实验和三维效果演示,使原本很抽象的内容变得简单生动。另外,为了满足学生实践的要求,可以布置课后编程作业,这样不但可以巩固所学知识,还可提高学生的动手能力。
下面我们将以图像和视频处理里面的图像匹配中的归一化互相关为例,将介绍如何把枯燥无味的归一化互相关匹配算法,转化为实际意义和应用→定义→数学原理→编码→三维效果演示的立体化教学方式。
图像匹配是“图像和视频处理”课程中一节重要的内容。图像匹配技术在生活和工作中有着广泛的应用,根据相关专家统计大约有40%的机器视觉应用中需要用到图像匹配技术。图像匹配技术有着极其广泛的应用,从工业流水线的自动监控到军事上的目标检测识别与跟踪、从遥感中的资源分析到气象中的气象预报、从医疗中的医疗诊断到交通管理的智能交通、从文字识别到图像数据库检索以及景物分析中的变化检测等等,几乎现代生活中的每一处都能见到图像匹配技术。
所谓图像匹配是指在一幅(或一批)图像中寻找与给定目标图像相似的图像或者图像区域(子图像)的过程。通常将已知目标图像称为基准图(或者模板图),而将待搜索图像中可能与它对应的子图称作该模板的待匹配的目标图像。图像匹配是在来自不同时间或者不同视角的同一场景的两幅或多幅图像之间寻找对应关系,基准图可以比实时图大也可以比实时图小。互相关匹配算法是一种最基本的灰度统计匹配方法,它要求参考图像和待匹配图像具有相似的灰度和尺度信息。归一化互相关匹配算法是一种经典的互相关的匹配算法,经常写为NCC(Normalized Cross Correlation)算法,其通过计算模板图像和待匹配图像的互相关系数值来确定匹配的相似程度,互相关系数最大时对应的搜索窗口的位置决定了模板图像在待匹配图像中的位置。NCC的相关矩阵公式定义为:
其中,h(x,y)和f(x,y)表示实时图像H和模板图像F在(x,y)位置像素点的灰度值。NCC算法具有很高的准确性和适应性。
通过观察互相关匹配的公式,我们可以联想到中学数学学过的柯西不等式:
把工科的理论联系到学生所学的数学知识里面,有助于学生深化理解理论,为将来进行科研创新打下良好的基础。这要求授课教师有着更强的责任心,而且需要扎实的理论功底和数学分析能力。
“图像和视频处理”课程所授内容都可以通过计算机编程来进行试验和测试,通过实验的结果和效果,从而直观的再现课程所讲述的内容,提高学生的学习兴趣和建立学生动手创新的自信心。当然,这要求教师具备极强的编程能力和将理论与编程代码相结合的解释能力,现场讲解编程思想和演示编程过程,不仅可以熏陶学生处理的思路和提高学生的编程技巧,而且可以很好的建立起学生发现问题解决问题的兴趣和能力。
本文应用MATLAB R2014a影像处理工具箱中提供的相关函数和命令,对数字图像进行互相关匹配去识别基准图,其核心代码和注释如下:
scene = im2double(imread(‘1.jpg’));%读取目标图像并转为双精度浮点型
template = im2double(imread(‘1_template.jpg’));%读取基准图像并转为双精度浮点型
[template_height,template_width]=size(template);%输出目标图像大小
[scene_height,scene_width]=size(scene);%输出基准图像大小
for i=1:scene_height-template_height
for j=1:scene_width-template_width
temp_picture=imcrop(scene,[j,i,template_width-1,template_height-1]);
r(i,j)=corr2(temp_picture,template); %计算互相关系数
end
end
figure, surf(r), shading flat,hold on %画出三维互相关系数的峰值图像。
scene = im2double(imread(‘1.jpg’));%读取目标图像并转为双精度浮点型
[x,i]=max(r), [y,j]=max(max(r)),i=i(j); %找出相关系数的峰值的位置
plot(j:j+template_width,i,’r’);%画红色的匹配结果框
plot(j:j+template_width,i+template_height,'r');
plot(j,i:i+template_height,'r');
plot(j+template_width,i:i+template_height,'r');
figure,imshow(template,[]); %显示匹配结果
课堂上通过运行代码,用来演示利用互相关匹配算法的实现过程,具体的实验结果见图1。
图1 互相关匹配算法实例
最后,让学生课后思考和实验习题;针对传统的互相关匹配方法计算速度比较慢的缺点,采用什么方法可以提高算法的实时性,改进要有数学依据和实验验证。这样,完成了学生可以在课堂上见到从实际意义和应用到定义,再到数学原理和编码,和最后的三维效果演示的整个全方位的立体化教学过程,从而增加对理论认识的深度,掌握理论付诸于实践的编程技术和实验技巧,同时提供相应方法实现的源代码供学生参考学习。再增加学生的课后实验和扩展,这样可以达到全方面的引导和提高学生的创新学习能力。
本文根据“图像和视频处理”课程的具体特点和特色,通过结合理论的数学依据和具体可见的编程演示实验,提出了实际意义和应用→定义→数学原理→编码→三维效果演示的立体化教学方式。这种教学方式即可以提高了学生的学习兴趣和动手能力,而且能够增强学生的数学分析能力和激发学生的理论创新能力。将图像和视频处理的专业知识和实际应用、数学以及编程实验有机结合起来,使得学生可以即掌握图像和视频处理课程知识和相关技术,也提高了学生的专业素质和创新能力。
参考文献
[1]章毓晋.图像工程(下)图像处理[M].北京∶清华大学出版社,2006.3.
[2]冈萨雷斯著,阮秋琦译.数字图像处理(matlab 版)[M].北京∶电子工业出版社,2009.5.
[3]朱虎,卢官明,谢世朋.“数字电视原理”理论实践一体化教学研究[J].电子世界,2014(13)∶54.
[4]梅中辉,李晓飞,图像与视频处理教学过程中的若干思考[J].科技资讯,2009(26)∶232.
基金项目:南京邮电大学教改基金(编号:JG00215JX66)。
作者简介:
邓丽珍(1985—),女,安徽宿州人,博士,讲师,研究方向:信号处理与模式识别。