基于 MATLAB 的答题卡识别软件设计
- 课题意义
随着教育技术的飞速发展,考试普遍使用答题卡来记录答案,采用计算机自动识别答案卡信息,计算考生的成绩,可以减少阅卷人的工作量。本文利用 Matlab 软件设计一个答题卡的自动识别系统,实现了对答题卡的中考生考号、考试科目、考试成绩的准确识别与计算。
目前,考试的主流方法是以试卷的考试为主。自动阅卷系统的研究主要是基于计算机图像处理技术的光标读取器和答题卡标识系统。基于数字图像处理技术,需要提前扫描考生答题卡生成电子图像文件,然后存储在计算机中。在处理时直接在软件中读入。利用数字图像处理的各种技术和方法,对考生的考试成绩进行识别。利用这种技术不仅可以节省考试管理和考核部门的人力,物力,而且也能提高工作效率,提高评估的公平性。
- 答题卡识别软件设计
2.1、系统软件设计
系统软件包括:
- 图像预处理部分:包括图像灰度化、二值化等;
- 对图像进行霍夫变换得到霍夫变换域,用于检测答题卡中的直线段;
- 计算倾斜角度,矫正图像:Hough 变换检测到的直线可以计算出直线的斜率,然后用反三角函数可以得到倾斜角度。再对图像进行旋转,得到符合要求的图像;
- 对图像进行滤波并进行区域划分:原图像的二值化图像有噪声,所以利用除噪函数进行滤波,然后根据答题卡的特征划分区域;
- 分割图像,生成网格线:根据答题卡的特点划分区域,再根据答题卡的填涂区域分布进行网格线划分;
- 识别和显示:识别考上学号、考试科目、考生答案,