关键词 电脑 扫描 识别 纸介调查问卷 识别算法 自动旋转 对齐
为一个教学机构录入14000多页的调查问卷. 调查问卷主要是选择题, 大部分调查者将选项涂黑, 因此考虑用计算机扫描后识别.
下面总结出主要的流程和要点
1. 用自动进纸的扫描仪,扫描 设定用灰度200dpi
2. 去色 设置黑白阈值, 把灰度转换成黑白值, 然后存放在如boolean[][]数组变量中
3. 旋转 目的是把文字方向调整为水平. 因为最开始没有考虑到用机器识别, 因此问卷上没有特殊的识别符号, 因此采用通用的方法解决.
任取最左边的一点, 以任意接近水平的角度向右边画一条直线,计算直线上黑点的个数, 如果两个角度相邻的直线之间的黑点个数差异超过阈值, 并且其中一个的黑点数小于阈值,则认为这两根线中的黑点多的一条为一根水平线, 记录下此线的斜率. 取得多个这样的备选直线后, 求斜率均值, 剔除偏离均值超过阈值的斜率, 剩下的直线再求斜率均值,直到没有斜率偏差超过阈值,此时可求方差估判斜率均值是否有效. 求方差一步经实践可以省略, 此算法能够识别有至少一个文字段落, 并且没有大量图片的文档.
4. 拉伸图形 一个是缩小图片减小下一步计算机处理量, 另一个是要求缩小后所有文字笔画均为单像素,包括选项部分如果有方框, 方框边缘要是单像素
5. 定位 图形角度已经正确, 位置还需要确定,在图形中有文字的地方选取总共2000~4000像素的图形区域, 截图做成单个文件. 然后在每一个文件中寻找这个标记的位置, 寻找算法是按像素匹配, 错误率超过阈值的为匹配失败, 继续从下一点开始匹配. 为了加快匹配速度, 标记图形的第一像像素应为黑. 匹配时首先检查该像素是否为黑, 如果不是,则直接跳过, 一般调查问卷大量有白色区域, 可节约大量时间. 阈值可根据扫描质量在30%~50%之间, 阈值比较小可以加快识别速度.在每一个文件中找到标记为之后,就可以根据标记和每个选项的相对位置找到每一页的每个选项
6. 识别黑白 前面已经知道了每一页每个选项相对于该页的位移, 则根据这个数据截取区域, 区域面积可为选项方框大小的4倍左右. 前述, 所有笔画和方框都是单像素粗细的, 下面将寻找左右连续点, 这里连续点的定义是该点的上下左右像素也均为黑色, 文字笔画和方框的像素不会被统计进入这个数值, 这个数值超过一个阈值, 则认为是黑, 否则是白
7. 输出结果 为了快速校对结果, 将每个选项截图保存成文件, 识别为黑的保存在一个文件夹, 识别为白的保存在一个文件夹, 这样快速浏览黑白两个文件夹, 如果有白框出现在黑文件夹或黑框出现在白文件夹, 则可迅速确定此页判定有误
以上各阈值需要根据扫描质量, 问卷字体大小, 行距, 选项方框大小和填写着涂写力度等来考虑
--
from: huxiaodi
2009年4月1日
电脑扫描识别纸介调查问卷
订阅:
博文评论 (Atom)
没有评论:
发表评论