OpenCV的答题卡识别的Python实现
基于OpenCV的答题卡识别
哈喽~ 你们的猿码君又来咯~
今天是2月29日,四年才会出现一天,那么今天猿码君要来跟大家聊一聊什么呢?
OpenCV是一款通用的图形处理方面的类库,对图片的处理提供了各种各样的操作。考试里面的选择题非常多,用人工去判卷显然非常不合算,所以考虑用OpenCV实现自动识别选项。
下面我们一起来简单的了解一下吧!
原始图片:
识别边框:
纠正位置:
高亮图片:
识别选项:
识别填涂答案:
红色标注识别的区域:
主要步骤:
· 读取图片
· 图片转化为灰度图
· 图片设定阈值
· 开运算(先腐蚀,后膨胀)
· 指定答题区域
· 找到涂选框
· 根据涂选框的坐标确定所涂选的选项及题号
识别原理:
把答题卡放在深色背景中,用查找轮廓定位好答题卡位置,用透视变换取出答题卡图像,根据位置判断是否被涂黑,识别出ABCD,对比标准答题计算出成绩。
如何用Python实现?
好啦,今天就先到这吧,祝大家下一个2月29日能成为理想中的自己!
答题卡识别
就可以收到我们的源码链接了哦~
猿码分享