基于图像处理的工程制图作业批改方法研究
2021-11-09朱文博杜锋
朱文博 杜锋
摘 要:为了减轻制图教师批改尺规作业的工作量,提出一种基于图像处理的匹配算法。首先将纸质版作业拍照为图像;然后对图像进行灰度化,利用OTSU方法二值化,对有效区域进行裁剪,调节标准答案与学生作业像素尺寸大小,采用帧差法进行标准答案和学生作业的匹配,将标准答案与学生作业相减得出不同之处;最后在学生作业中将不同之处标记出来,从而实现尺规作业的自动批改。通过实验验证,该方法能快速准确地批改尺规作图。对于采用AutoCAD等软件绘图的作业只需另存为图片格式,同样适用于本文所述方法。
关键词:图像处理;图像匹配;帧差法;工程制图作业;自动批改
中图分类号:TP391.4 文献标识码:A
Research on the Correcting Method of Engineering Drawing
Homework based on Image Processing
ZHU Wenbo, DU Feng
(School of Mechanical Engineering, University of Shanghai for Science and Technology, Shanghai 200093, China)
teacherzwb@163.com; 1002054400@qq.com
Abstract: In order to reduce the workload of drawing teachers in correcting ruler-and-compass construction assignments, this paper proposes a matching algorithm based on image processing. Firstly, the paper homework is photographed as an image that is then grayed and binarized by OTSU method. The effective area is clipped, and the pixel size of the standard answer and the students' homework are adjusted. The frame difference method is used to match the standard answer and students' homework. The standard answer and the students' homework are subtracted to get their differences, which are finally marked in students' homework. Therefore, the automatic correction of students' homework is realized. The experimental results show that the method can correct ruler-and-compass construction homework quickly and accurately. The proposed method also applies to drawing homework with software such as AutoCAD, which only needs to be saved as an image format.
Keywords: image processing; image matching; frame difference method; engineering drawing homework; automatic
correction
1 引言(Introduction)
工程制圖是工科学生必修的一门专业基础课程,是培养学生绘制与阅读各类机械图样能力的课程。要掌握此课程的知识,练习习题是必不可少的。练习习题可以分为两类,一类是计算机软件绘图;另一类是最为广泛的尺规绘图。目前已有一些针对计算机软件绘图自动批改的研究[1]。然而在尺规绘图方面,仍然是教师手动批改,这使得教师需要花费大量的精力批改习题,导致教师的科研效率大大降低。繁重的工作量使基于图像处理的自动批改系统得到较好的应用,其核心包括图像采集、图像处理、分析模块以及人机交互模块等。采用图像处理的方法如何自动批改大量的制图作业,减轻制图教师的工作量,是一个值得研究的课题。
2 研究现状(Research status)
在现有的自动批改制图作业的方法中,绝大部分需要学生首先使用绘图软件做作业,之后再进行软件的二次开发完成作业批改任务。沈培玉等[2]利用ObjectARX反应器编写程序进行图元整理及分类;刘小婷[3]基于立体重构,使用AutoCAD的二次开发完成作业批改。杨万理等[4]自主研发了矢量图形平台ATVGP完成作业以及进行作业的批改,此研究突破了CAD平台绘图的限制,但仍需要在固定平台中完成作业。目前来看,刚进入大学的学生还是以尺规画图为主,软件作图为辅,然而针对尺规画图作业的自动批改却鲜有研究。本文将学生的纸质尺规作业进行拍照,将软件作图作业进行截图,基于图像处理来进行图像匹配,从而完成作业的批改。
目前应用广泛的图像匹配方法主要有两大类:一是基于灰度化相关的图像匹配,此方法算法简单,但计算量大;另一种是基于特征进行图像匹配,主要的算法有:SURF算法、Harris算法、SIFT算法等,计算量小,但精确度不高。这两种方法只能找到两幅图像相同像素的对应位置,而制图作业批改需要找到标准答案与学生作业(均拍摄为图像)这两幅图像之间的不同之处,使用这两种方法均不能得到所需结果。本文将采用帧差法对标准答案与学生作业进行图像匹配,找出不同之处并做出标记。
3 基于图像处理的工程制图作业批改方法(Correcting method of engineering drawing based on image processing)
3.1 图像灰度处理及二值化
标准答案与学生作业的图像匹配与图像颜色无关,因此将彩色图像灰度化后其传输数据由三维矩阵降至一维矩阵,即可加快后期对图像处理的速度,故本文将所采集的彩色图像一律采用加权平均算法进行图像灰度处理。
二值化处理是对灰度化图像进行阈值操作,去除灰度图像中的噪声。本文采用最大类间方差法[5]。该方法是日本学者大津(Nobuyuki Otsu)于1979 年提出的用于二值化的一种阈值确定方法,又称为大津法(OTSU)。此方法计算速度较快,可根据灰度图像自行确定阈值,因此可以较好地适应不同场景的图像。
3.2 有效区域截取及旋转
标准答案与学生作业在拍照或截图时会出现无效区域,为了节省计算时间,对标准答案与学生作业提取有效区域。本文采用基于轮廓最小正外接矩形的方法截取所需的有效区域。遍历整张图像,寻找最小正外接矩形所需最大坐标与最小坐标,原始图像如图1(a)所示。根据最大坐标与最小坐标,利用最小正外接矩形截取有效区域后的图像如图1(b)所示。由于学生拍摄的图像可能是歪的,截取出来的图片在矩形框中也是歪的,因此需要对其进行旋转校正。从图1(b)中获取矩形框的四个顶点的坐标,的角度以及图像中心点,以中心点为旋转中心利用图像仿射旋转变换原理[6]对图像进行旋转校正,如图1(c)所示。
3.3 有效区域图像的像素矩阵调节
无论标准答案还是学生作业的有效区域图像均是以像素矩阵的形式存储的。为了便于后续使用帧差法匹配標准答案与学生作业图像,需使两幅图的像素矩阵行列数一致。对于一道制图题目,标准答案是固定的,学生作业却各式各样,标准答案只需处理一次,故将学生作业行列数调整为标准答案的行列数。
设学生作业像素矩阵为,标准答案像素矩阵为。若且,则不需要更改像素矩阵。若或,则需利用双线性插值算法[7]将作业原图像素矩阵变为作业新图像素矩阵。表示作业原图图像的像素值;表示作业新图图像的像素值,如图2所示。
(1)若求得作业原图中的行、列数值均为整数,直接将赋予到作业新图。
(2)若求得作业原图中的行、列数值均为非整数,需利用双线性插值的方法得到。对行、列数值取整,找到、、、像素值,如图3所示。用式(2)求出。
(3)若行、列数值一个为整数,另一个为非整数。假设行为非整数,列为整数,利用式(3)求得像素值;若列为非整数,行为整数,则利用式(4)求得。
式(2)、式(3)、式(4)求出的数值若为小数,四舍五入为整数。通过式(1)—(4)求出作业新图像素矩阵。
3.4 图像匹配
采用帧差法将标准答案与学生作业进行匹配,此方法广泛应用于对运动目标的检测[8]。将像素矩阵大小一致的标准答案与学生作业进行灰度处理。设学生作业灰度图像为,标准答案灰度图像为,根据帧差法的运算过程将对应像素点相减,并取绝对值,如式(5)所示,得到最终的差分结果图像为。
设定阈值将差分图二值化处理。经过大量实验对比,设定阈值为225比较合理。随后继续处理该二值化图像,若差分图像中的像素值大于225,则为图像目标;若小于225,则为背景。采用自适应中值滤波[9]进行滤波降噪,并采用形态学梯度算子[10]中的膨胀腐蚀性算子进行边缘处理,通过膨胀连接目标边缘、填充黑洞,腐蚀二值化图像背景中的噪声点。
3.5 批改结果显示
采用轮廓查找的方法将处理后的二值化图像中所有像素点检测出来并保存。之后,在学生作业中,将保存的所有像素点用轮廓绘制的方法使用红色线条绘制出学生作业错误之处,最终完成作业批改。
4 实验步骤与结果(Experimental procedures and results)
4.1 实验条件的构建
实验平台的搭建包括计算机一台,本实验采用VS2015+OpenCV进行实验软件系统的开发。实验设备还包括用于拍摄尺规作业的设备,使用普通手机即可,为了拍照清晰,手机安装在支架上,避免拍照时人为晃动手机;作业放置在载物台上;采用成本低、光亮稳定的条形LED灯光源照明,如图4所示。
由于本文所提算法是针对一个具有外轮廓的图进行匹配,如果是一个不加外框的三视图,则会匹配出单独的三个图,因此对于三视图的作业,需要将三视图加一个边框,即作为一个整体图像来解决这一问题。如图5所示,原习题集格式为图5(a),需修改为如图5(b)所示格式。
4.2 实验步骤
以图6(a)为标准答案,图6(b)为学生作业为例,对两幅图进行图像处理,找出该学生作业错误之处,并对错误之处进行标注。用手机拍照纸质版作业,并用手机里安装的全能扫描王APP处理后得到的JPG图像如图6所示。
实验过程如下:
(1)图像预处理——灰度化、二值化
将扫描的原图采用OpenCV[11]中的CV_BGR2GRAY函数进行灰度化处理,得到标准答案与学生作业的灰度化图像。灰度化后做二值化处理,采用OTSU的方法,利用threshold函数分割目标与背景两部分,得到标准答案二值化图像,如图7(a)所示;得到学生作业二值化图像,如图7(b)所示。
(2)按轮廓剪切有效区域图像
由于学生拍摄的图或大或小,而图像处理只需要矩形框内的图形,需裁剪矩形框外面的空白处,得到有效矩形框及内部图形。利用OpenCV中的findContours函数获取矩形的轮廓,利用boundRect函数中的正外接矩形存储上面所获取的轮廓,然后用仿射变换进行旋转校正并裁剪掉轮廓外的区域。两幅生成的有效区域图像保存到本地文件夹,方便后续步骤所用。
(3)调整标准答案与学生作业像素矩阵大小
调整学生作业像素矩阵大小与标准答案一致。调用OpenCV库中的resize函数,用双线性插值算法调整学生作业像素矩阵。
(4)帧差法进行图形匹配
截取有效区域以及统一像素矩阵大小后,对标准答案与学生作业进行灰度处理,利用subtract函数对标准答案与学生作业进行差分运算,得到两幅图的差分图像,如图8(a)所示。对差分图像选用225的阈值进行二值化处理得到二值化图像,之后进行自适应中值滤波去除噪声,然后采用形态学中的闭运算处理,选取矩形结构,先膨胀后腐蚀,连接目标边缘,填充黑洞,使得边缘更加清晰,得到的二值化图像如图8(b)所示。
(5)显示批改结果
得到标准答案与学生作业的不同之处之后,用上述的findcontours函数找寻二值化图像中的轮廓,然后用drawcontours函数调节为红色线条(本文显示为粗线条处)在学生作业中绘制出来,即可得到最终的批改效果。批改结果如图8(c)所示。
4.3 实验验证及数据分析
为了验证本文方法的准确性,对学生纸质尺规作图作业进行大量测试,部分作业、批改结果以及耗时如表1所示。
基于某一图形,对不同学生的作业、批改结果进行了测试,如表2所示(仅列出两位学生)。
从表1和表2可以看出,无论是圆形、弧形、直线、虚线,还是漏线、多线的地方都是可以标出的。经过500 张标准答案与学生作业实验的对比,经检测有487 张批改结果是正确的。此方法准确率高达97.4%。同时经测试,一个矩形框内的作业匹配程序运行大约为0.01 μs,运行速度快,节省了教师大量的批改作业时间。
本文所提方法对于采用AutoCAD等软件绘制的图形,只要将文件保存为JPG或其他图片格式,同样适用。部分实验结果如表3所示。
5 结论(Conclusion)
本文基于图像处理实现了制图作业的自动批改,对作业图像进行灰度化、二值化,并提取有效区域,随后利用帧差法对比标准答案与学生作业,在学生作业中标注错误地方,最终获得批改结果。该方法减轻了制图教师批改作业的负担。相对于采用CAD二次开发作业批改系统,本文方法既可以处理计算机软件绘图的作业,更能处理尺规作图的作业,处理作业的形式更广泛,并且运行准确且速度快。实验测试准确率为97.4%,每个图形批改运行时间约为0.01 μs,大大節省了制图教师批改作业时间。
参考文献(References)
[1] 陈振兴.一种简单的《工程制图》作业自动评判系统的实现[J].科技创新与应用,2020(12):44-45.
[2] 沈培玉,周洪军.基于反应器的制图作业批改CAI系统研究[J].工程图学学报,2010,31(04):179-182.
[3] 刘小婷.基于立体重构的工程制图作业智能批改技术的研究与实践[D].镇江:江苏科技大学,2016.
[4] 杨万理,王宁,王广俊.土木工程制图作业批改系统的研究与实现[J].图学学报,2014,35(04):613-618.
[5] 袁小翠,吴禄慎,陈华伟.基于Otsu方法的钢轨图像分割[J].光学精密工程,2016,24(07):1772-1781.
[6] 李海彦,徐汀荣,张立晓,等.基于仿射变换的多姿态人脸矫正和识别[J].计算机应用研究,2014,31(04):1215-1219,1228.
[7] SURESH C, SINGH S, SAINI R, et al. A comparative analysis of image scaling algorithms[J] Image, Graphics and Signal Processing, 2013, 5(5):55-62.
[8] RAMYA P, RAJESWARI R. A modified frame difference method using correlation coefficient for background subtraction[J]. Procedia Computer Science, 2016, 93:478-485.
[9] 刘鹏宇,哈睿,贾克斌.改进的自适应中值滤波算法及其应用[J].北京工业大学学报,2017,43(04):581-586.
[10] 徐国靖.基于形态学梯度的图像边缘检测算法[D].西安:西安电子科技大学,2013.
[11] 张广渊.数字图像处理:OpenCV3实现[M].北京:中国水利水电出版社,2019:110-153.
作者简介:
朱文博(1973-),女,博士,副教授.研究领域:数字化设计及制造.
杜 锋(1996-),男,硕士生.研究领域:机器视觉,图像处理.