您的当前位置:首页正文

基于OCR文字识别技术应用软件的设计与实现

2021-08-20 来源:欧得旅游网
基于OCR文字识别技术应用软件的设计与实现

作者:邱治涵 王嘉豪 李文炜 王东灿 来源:《电脑知识与技术》2021年第26期

摘要:信息化教育方式的多样化应用是教育教学创新的重要体现,而文字识别技术在电子信息教学方面起着不可忽视的作用。针对传统的纸质试卷保存方式存在的易丢失、易损坏等弊端问题,设计实现了基于Tesseract-OCR引擎的将纸质型试题转化电子型试题的智能文字识别移动智能终端软件。本软件在拥有支持对常见题型的智能转换功能外,还提供试题网络共享、在线试题批阅等功能。

关键词:灰度处理; 双峰法; Tesseract-OCR; 试题生成;文字识别 中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2021)26-0047-03

开放科学(资源服务)标识码(OSID): 1 引言

随着文字识别技术的迅速发展,其相关领域的应用在人们日常生活中得到了极大的认可。将纸质型的试题通过拍照转化成电子型试题的应用方式,可以有效地解决用户在长时间学习的过程中将试卷损坏或遗落,造成后期对应试题的复习、总结练习不便的问题。同时随着智能移动设备的普及,电子信息化成为主要的教育发展趋势本文综合国内各考试试卷的试题题型,设计与实现了基于Tesseract-OCR引擎的线下试卷拍照转化为线上试卷的移动智能端软件。 2 Tesseract概述

在当前主流文字识别技术中,Tesseract作为主要被使用的开源引擎之一,是20世纪80年代中期由惠普实验室开发、谷歌公司维护的开源OCR(Optical Character Recognition , 光学字符识别)引擎[1]。在这些年Tesseract引擎更新了3.0的版本之后,其与Microsoft Office Document Imaging(MODI)相比,开始支持长短时记忆神经网络(LSTM),可以通过不断的数据集进行训练训练,将文字识别的准确率不断提高,现已经支持对一百多门语言的文字进行识别处理。 3 软件总体设计 3.1 功能需求

本软件主要实现的功能是用户通过拍照上传试题图片的方式,在本地生成对应文字识别后的电子型试题,同时包括对试题内容的修改、共享功能等实现,主要功能模块如下。 1) 注册模块:新用户在软件的账户注册页面,填写相关用户信息,向系统进行提交并反馈对应注册号状态。

2) 登录模块:用户在软件登录页面填写账户名和密码,向系统提交请求后,自动进行身份校验,如果账户名与密码匹配成功则进入软件首页,否则提示登录失败的原因和重新填写信息的语句。

3) 图片上传模块:用户在移动端首页点击相机形状的按钮,通过拍照的方式将纸质试题的内容上传,在上传过程中用户可以调用图片剪切功能,对需要上传的图片大小进行调整,然后向系统发出请求。

4) 試题共享模块:用户在“个人试题中心”可以选择试题将其添加入共享区;已添加至共享区的试卷可被其他用户查看与使用。如果用户在本地共享后的试题发生了修改,共享区对应的试题内容也发生改变。

5) 试题内容修改功能:用户在试卷上传完成后,可以在试卷对应的修改功能区对其进行修改。

6) 试题文字识别模板:该模板作为此软件的核心模板,它需要根据用户上传的图片进行文字的提取,并按照图片对应的题型转化成电子试题。为保证试题文字识别的准确率,系统将会优先从已有的试题库中进行文字匹配,将其反馈给用户,用户可以拒绝选择试题库识别的试题,选择当前拍照所转化的电子试题。图1为试题生成软件的功能模板。 3.2 非功能需求

1) 实时性:用户对试题修改完成后,共享区中对应分享的试卷同步修改,保证其他用户在使用时的实时性与准确性。

2) 可靠性:针对具体模块的数据库,指定备份与恢复机制。建立多级系统日志功能,将对应产生的事件或错误信息进行记录。保证用户上传试卷的完整性与软件的使用可靠度。 3) 独立性:每个用户正在使用的试卷都独立的保存在本地,无网络请求,保证了用户使用的稳定性的需求,同时减轻了服务器被频繁访问带来的压力。 3.3 用户需求

用户在登录成功后将出现一个气泡导航栏,其包括三个部分,首页部分主要使用的功能是拍照上传并生成对应的试题,第二个部分为所有用户共享部分,可以拉取个人所需要的试题至本地保存,最后一部分为个人试题部分,包含有个人上传的信息和生成、拉取的电子试题。 3.4 试题生成流程设计

用户在使用试题拍照功能模块的时候,将首先对其的身份进行校验,判断其是否成功登录,如果未登录将会跳转至登录页面。校验成功后调用相机的拍照功能,同时可以对所拍的图片进行大小截取。然后将图片向系统进行提交后,开始文字识别,生成对应的电子试题,用户可以选择除软件智能转化的试题外,还可以选择从试题数据库中匹配的相关试题。图2为试题生成流程图。 4 文字识别

服务器对用户上传的图片进行文字识别试题生成的过程:

1) 服务器在接收到用户的发出的照片请求后,首先对图片进行灰度转化,将彩色的图像进行灰度处理,对每个像素点进行颜色的RGB值(0~255之间)的转换,同时对转化后的

RGB值的三个分量进行YUV颜色模型求解,再全部储存在对应的矩阵中,继而建立灰度图,其中YUV颜色模型为:Y=0.3R+0.58G+0.11B[2]。图3为上传的测试试题原图片。

2) 完成灰度图的转化后,将转化后的灰度图进行二值化处理:对灰度图对应的矩阵中的值进行处理,将像素值小于K值的点设为0转化为黑色,将像素点大于等于K值的点设为255转化为白色,其中阙值K采用双峰法进行计算[3],并根据数组中数值大小进行间距分割。图4为二值化处理并间隔计算后的结果图。

3) 将二值化后的图像输入Tesseract引擎接口中[4],识别出照片对应的文字,然后对文字段落进行分隔,以试题类型(选择题、判断题、解答题)作为依据进行试题生成。图5为最终生成试题效果图。 5 测试结论

本软件文字识别的准确度满足用户在使用过程中的实际需求。在对100张测试图片采用有无间隙区域划分的对比测试后,无区域划分转化的试题准确率为95%,有区域划分转化的试题准确率为98%。我们可以看出在对上传图片后的二值化数组的内容大小进行文字区域划分,有效地提高了对常见题型的转化效果。 6 结束语

随着教育水平的提升和,各领域水平考试相继出现。各类学习软件层出不穷,但是对纸质试题智能转化成电子试题的应用却很匮乏,线上试题储存方式将会有一个客观前景。同时本软件引入了共享的思想,解决了用户对试题寻求困难的问题。对学生这样需要对重点试题进行总结的群体有极大的帮助。 参考文献:

[1] 劉琪,李鑫.关于Android平台的OCR文字识别[J].数字技术与应用,2017(7):229,231.

[2] 霍延军.采样优化支持的指纹图像二值化算法研究[J].单片机与嵌入式系统应用,2020,20(9):43-46.

[3] 曹佩,王刚,白璇姣.基于SNP双峰法的人参花、西洋参花、三七花及其混合物的快速鉴定[J].北京:中国现代中药,2021,1(2):6-7.

[4] 叶子卿.基于Tesseract-OCR的古代汉语文字识别方法的设计与实现[D].南京:南京邮电大学,2020.

[5] 宗佳.高校继续教育信息化建设研究[J].中国多媒体与网络教学学报(上旬刊),2020(12):1-4.

[6] 熊子豪.基于移动端的校园健康晨检系统的设计与开发[D].武汉:华中师范大学,2018. [7] Gers F A,Schraudolph N N,Schmidhuber J..Learning precise timing with LSTM recurrent networks[J].Journal of Machine Learning Research,2002,3:115-143.

[8] Bai D D,Wang C Q,Zhang B,et al.Sequence searching with CNN features for robust and fast visual place recognition[J].Computers & Graphics,2018,70:270-280. 【通联编辑:李雅琪】

因篇幅问题不能全部显示,请点此查看更多更全内容