标题 | 基于DCNN的试卷智能统分系统设计与开发 |
范文 | 赵晟然 朱波 伍常亮 摘? 要: 为了解决传统的纸质试卷统分方法需要依靠人工识别和汇总分数导致效率低且容易出错的问题,本文设计开发了一个基于DCNN实现纸质试卷智能统分的应用系统。首先对涉及的图像处理关键技术和基于DCNN的手写分数识别模型进行研究,然后对系统进行需求分析、功能结构设计、主要业务流程设计和前后端子系统的接口设计,最后展示了系统运行情况,并根据开发过程和运行结果对系统进行总结。 关键词: DCNN;手写数字识别;微信小程序;统分系统 中图分类号: TP391. 41? ? 文献标识码: A? ? DOI:10.3969/j.issn.1003-6970.2019.07.037 【Abstract】: In order to solve the problem that the traditional paper test method is dependent on manual identification and summary scores, which leads to low efficiency and error-prone problems, this paper designs and develops an application system based on DCNN to realize the intelligent test of paper test papers. Firstly, the key techniques of image processing and DCNN-based handwritten score recognition model are studied. Then the system is analyzed for requirements, functional structure design, main business process design and interface design of front and rear terminal systems. Finally, the system operation is demonstrated. The system is summarized based on the development process and operational results. 【Key words】: DCNN; Handwritten digit recognition; WeChat applet; Unified system 0? 引言 纸质试卷作为一种传统的考试载体,具有使用方便,成本低廉等优点,在从小学、中学到高校的不同层级、不同种类的教育过程中均占据主流地位,同时在企业招聘和诸多社会工作考核中得到广泛应用。但是,纸质试卷的使用大都需要人工判分、统分等工作贯穿其中。最常见的统分方式是将试卷各个题目的得分先登记到试卷头的分项得分表中,然后再依靠人工将各分项分数汇总,得到试卷的总分。此种方法统分的效果显著依赖于人工汇总分数时计算的效率和准确率,因此受人的因素影响较大,在统分试卷量较大时,容易出错,且效率不高。 分析人工统分试卷的过程,关键环节是统分者正确识别出分项得分表中各个题目的分数(通常由试卷评阅人手工填写),其本质就是一个手写数字识别的过程。随着人工智能及机器学习技术的发展,手写数字识别已经成为一种典型的可以依靠计算机来自动完成的事务,属于计算机图像识别的范畴。近几年,机器学习领域中的深度学习方法在图像识别上取得重大突破,尤其是深度卷积神经网络(Deep Convolutional Neural Networks,DCNN)的应用,极大提升了图像识别的准确率,也成为当前手写数字识别的利器。有关卷积神经网络的研究可以追溯到1962年,Hubel D H与Wiesel T N在生物研究中受到猫的视觉皮层神经元结构的启示,提出了感受野的概念[1];1989年,LeCun Y等人使用卷積神经网络进行手写邮政编码数字的识别,被认为是当今深度卷积神经网络应用的开端[2];2007年,任丹与陈学峰介绍了手写数字识别的原理及实现方法,并通过应用阐述了相关内容[3]。如今,随着相关技术的逐渐成熟,有关DCNN的研究愈发深入。2017年,孔祥浩采用DCNN网络学习特性进行特征二次优选与降维,基于深度卷积神经网络展开了对特征优化以及分类识别方法的研究[4];2018年,杨东旭等人针对传统DCNN模型中存在的问题,提出一种将噪声注入Softmax并结合迁移学习的图像分类方法,并使用MNIST对所提方法的良好效果进行了验证[5]。 当前基于DCNN进行手写数字识别的研究已非常多,在涉及到手写数字识别的诸多领域也得到了广泛应用,但是,还没有其在纸质试卷统分过程中的应用见诸报道。因此,本文考虑设计开发一个基于DCNN实现纸质试卷智能统分的应用系统,以减少传统依赖人工进行试卷统分的工作量,并降低统分错误率。 1? 试卷统分表图像处理过程 图像处理就是通过计算机对图像进行去噪、增强、复原、分割、提取特征等操作[6]。对图片进行处理不仅可以帮助减少原始图像中的干扰和噪声等影响因素,还能够增强图像的清晰度,提高DCNN模型对手写数字的识别正确率。 图像分割作为图像处理过程中的关键技术,可以将试卷统分栏图像中手写数字的有效特征部分提取出来,是DCNN模型对图像特征进行降低向量维度和确定数字分类等工作的基础。因此,图像处理过程对于系统后续的识别效果具有重要意义。 本系统中主要涉及对试卷卷头的统分栏内的分数进行图像分割。通过对卷头统分栏内的手写数字进行识别和验证,结果表明本方法具有一定的普适性和准确性,能够处理手写规范的图片与部分手写字迹潦草和不规范的图片。 系统对图像的具体处理过程如图1所示。(a)是系统前端所采集的试卷卷头统分栏原图;(b)图展示的是系统对原图按照颜色进行分割;(c)图展示的是系统将分割后的图像进行二值化处理的效果。 接下来系统开始对卷头统分栏以栏为单位进行分割,将统分栏各栏内的数组进行单独提取和顺次排列。每一栏内所包含的分数数组排列情况如图2所示。 经过以上的图像处理过程,系统已经将前端采集到的统分栏原图分割为以栏为单位、顺次排列的一个个数组。接下来系统开始对每个栏内的数组进行细化分割,最终分割效果如图3所示。 至此,系统对试卷统分栏内的数字图像已经处理完毕,实现了对统分栏内分数数字的有效分割。 2? 手写分数识别模型 2.1? 选择分类算法 DCNN在保留传统神经网络的容错性强、自适应能力强和自学习能力强等优点的基础上,能够隐式地从训练数据中对特征模式进行学习,实现对特征的有效提取。除此之外,DCNN还具有很好的自学习能力,更容易通过引导学习来达到预期目标。因此,本系统选择深度卷积神经网络作为分类算法。 2.2? 构建手写分数识别模型 本系统采用TensorFlow1.0-GPU进行DCNN模 型的搭建、训练、测试以及应用。TensorFlow是具有多层级结构的机器学习框架,支持高性能的数值计算。不仅可以帮助处理大量数据,还可以建立用于实现各种智能功能的模型,因此在人工智能领域得到了广泛应用。结合本系统的工作特点和目标功 能,本系统采用具有函数简单、实现计算过程简化、更易学习和优化等优点的线性整流函数(ReLU)作为激活函数。 经过前期的准备工作,最终建立的DCNN模型总体结构为:输入层(input)>卷积层(conv1)>池化层(pool1)>卷积层(conv2)>池化层(pool2)>全连接层(fullyconn)>输出层(softmax)。DCNN模型图如图4所示。 由图可知,输入一张尺寸为28×28的黑白图像进入DCNN模型时,卷积层1开始对图像进行特征提取。为了防止过量提取特征进而导致过拟合的出现,设定合适的卷积核大小显得尤为重要[7]。 本文在对相关资料的阅读学习的基础上,通过预研确定各项参数及模型工作过程如下:将卷积层1的卷积核设定为32,卷积层2的卷积核设定为64。首先进行卷积,卷积过程可以有效减少参数的数量。接下来激活函数relu开始工作,池化层1的卷积核设定为32,通过池化可以降低来自卷积层的特征向量维数,进而降低后面卷积层的处理复杂程度。经过卷积与池化过程后,全连接层将1024个尺寸为1×1的神经单元输送至softmax层进行归一化,softmax层将会数字按照0到9的10个类型对神经元进行分类,最终确定最大相似概率的数字。至此,完成基于DCNN模型对图像所包含的数字的识别过程。 2.3? 模型训练与测试 本系统选取MNIST中的完整数据对DCNN模型进行训练和测试。MNIST由7万张黑底白字的手写数字图片构成,其中的5.5万张图片作为训练集,0.5万张图片作为验证集,1万张图片作为测试集。每张图片由28×28个像素点构成,每个像素点用一个灰度值表示。 图5反映的是DCNN模型在训练过程中的训练精度变化情况。 在使用MNIST数据集对所搭建的DCNN模型进行训练和测试后,DCNN模型的测试精度最终达到98.8%。 3? 系统需求分析及设计 3.1? 需求分析 针对传统试卷统分方法存在依靠人工计算总分,存在工作效率低且容易出错等问题,结合系统的预期特点和功能,經过需求分析确定本系统应具有操作简单、使用方便、人机交互界面友好的特点;可以通过使用手机拍摄试卷统分栏图片,快速实现对试卷统分栏内分数数字的准确识别以及智能计算总分的功能。同时,要求系统运行稳定,鲁棒性高,扩展性好,可以有效满足当前试卷统分工作过程中的使用需求。 3.2? 系统设计 完成需求分析以后,根据需求分析结果进行系统体系结构和前端子系统的设计。 3.2.1? 系统体系结构 该系统设计微信小程序作为系统前端,借助TensorFlow深度学习框架完成后台的相关模型的搭建和运行。系统体系功能结构如图6所示。 设计系统工作流程如下:首先,系统通过前端的手机微信小程序采集试卷卷头统分栏内的分数图像,然后将分数图像传送到服务端,在完成对原始图片进行包括读取、旋转缩放、二值化处理以及分数的分割、去噪和形态学处理的图像处理过程后,调用基于DCNN实现的分类模型,识别出卷头统分栏中每个单项的得分,经过系统后端程序的运行,最终汇总计算出试卷总分并显示在系统前端,将最终结果反馈给用户。本系统工作流程如图7所示。 3.2.2? 前端子系统设计 微信小程序作为一种轻量型应用,只需要通过用户扫一扫就可以使用,不仅符合用户的使用习惯,也解放了用户手机内存的占用。除此以外,微信小程序还具有覆盖面广、方便快捷、即用即走、速度快、安全稳定等优点[8]。 系统集合时下热门的微信小程序,设计出一套适配于该系统的微信小程序作为系统前端。微信小程序前端具体设计与运行过程如下: (1)微信小程序调用wx.chooseImage控件对试卷卷头统分栏进行拍照,拍照时会调用位置框自动识别并划定统分栏图像范围。拍照过程中可以将实时情况显示给用户。 (2)使用wx.uploadFile控件,将图片文件上传至服务器端的一个开辟的路径,同时保存图片文件名至服务器端的MySQL数据库,并设置当前状态为0,表示图片还未识别。图片上传情况和数据库表设计如图8所示。 (3)使用Python链接数据库,每隔0.2秒查找状态为0的记录,如果有记录存在,则调用封装好的图片预处理函数和DCNN进行图像识别,将结果按某种格式编码为字符串形式,并将数据库表中的scores字段更新为识别结果,同时将状态更新为1,表示识别完成;如果记录不存在,则继续启动线程执行SQL语句。微信小程序采用setInterval控件每隔1秒查询一次数据库,若查询结果scores不为“nothing”,则解析scores字符串,得到单项得分并计算总分。数据库表更新后结果如图9所示。 (4)最终汇总计算出试卷卷头统分栏内的总分并显示在系统前端,将最终结果反馈给用户,完成系统的手写分数识别功能。 4? 系统运行情况 微信小程序調用控件实现拍照功能如图10所示。拍照后系统会在运行后将识别结果显示在微信小程序界面,快速清晰地反馈给用户,如图11所示。 5? 结论 本文针对传统试卷统分方法存在工作效率低、容易出错等问题,构建了微信小程序前端,Python语言、TensorFlow深度学习框架和MySQL数据库作为系统后台的试卷智能统分系统。系统通过建立合适的DCNN模型并使用MNIST数据集对其进行训练和测试,取得了98.8%的识别精度。系统通过前端采集统分栏图像,后台调用DCNN模型对处理后的统分栏内手写数字图像进行准确识别和计算,最终将结果反馈至前端界面,完成手写分数的智能统分过程。 验证结果表明该系统可以显著降低试卷统分工作强度,提高工作效率和统分正确率。但是该系统仍然存在不足:当前针对书写工整的数字及数组识别正确率较高,但是对于存在跨栏现象或字迹潦草的数字和数组识别正确率较低,这将作为本系统后续研究的重点。 参考文献 Hubel D H, Wiesel T N. Receptive fields, binocular interaction and functional architecture in the cat's visual cortex[J]. The Journal of Physiology, 1962, 160(1): 106-154. Lecun Y, Boser B, Denker J S, et al. Backpropagation Applied to Handwritten Zip Code Recognition[J]. Neural Computation, 1989, 1(4): 541-551. 任丹, 陈学峰. 手写数字识别的原理及应用[J]. 计算机时代, 2007(3): 17-18. 孔祥浩. 基于深度卷积神经网络的特征优化与分类识别方法研究[D]. 哈尔滨工业大学硕士论文, 2017. 6. 杨东旭, 赖惠成, 班俊硕, 等. 基于改进DCNN结合迁移学习的图像分类方法[J]. 新疆大学学报(自然科学版), 2018, 35(2). 江明, 刘辉, 黄欢. 图像二值化技术的研究[J]. 软件导刊, 2009(4): 175-177. 周志华. 机器学习[M]. 清华大学出版社, 2016. 1. 刘刚. 微信小程序开发图解案例教程[M]. 人民邮电出版社, 2017. 5. |
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。