当前位置:   article > 正文

【计算机视觉40例】案例09:答题卡识别

答题卡识别

导读】本文是专栏《计算机视觉40例简介》的第9个案例《答题卡识别》。该专栏简要介绍李立宗主编《计算机视觉40例——从入门到深度学习(OpenCV-Python)》一书的40个案例。

目前,该书已经在电子工业出版社出版,大家可以在京东、淘宝、当当等平台购买。

大家可以在公众号“计算机视觉之光”回复关键字【案例09】获取本文案例的源代码及使用的测试图片等资料。

针对本书40个案例的每一个案例,分别录制了介绍视频。如果嫌看文字版麻烦,可以关注公众号“计算机视觉之光”直接观看视频介绍版。

答题卡识别演示如图1所示,图中绿色表示回答正确、红色表示回答错误,左上角给出的是分数等相关信息。

图1 答题卡识别

答题卡识别的简要流程如图2所示。

图2 流程图

下面对其中的几个关键步骤进行一个简要的介绍:

1、裁边、倾斜校正

透视变换则可以将矩形映射为任意四边形,在OpenCV中通过函数cv2.warpPerspective()实现该操作。

图3 裁边、倾斜校正

2、反色处理

将要操作的选项处理为白色,作为前景对象。

图4 反色处理

3、查找轮廓

找到图像内所有的前景对象轮廓,方便后续从其中筛选出每一个选项。

图5 查找轮廓

4、筛选轮廓

从所有的轮廓中筛选出每一个选项。

图6 筛选轮廓

5、选项分组

将所有找到的选项按照所在位置划分到各自对应的题目内。例如,最靠上的四个选项分别编号为0-3(左右是没有顺序的)、次靠上的四个选项编号为4-6(左右不区分序号),以此类推。

图7 选项分组

6、题目划分

将所有找到的选项按照所在位置划分到各自对应的题目内。例如,编号为0-3的前4个是第1道题目的、编号为4-6的4个是第2道题目的选项,以此类推。

图8 题目划分

在《计算机视觉40例——从入门到深度学习(OpenCV-Python)》一书中,从算法原理、实现流程等角度系统深入地介绍了该案例的理论基础和实现过程,并对具体的代码实现进行了细致的介绍与解释。欢迎大家阅读第9章《答题卡识别》获取详细内容。

《计算机视觉40例——从入门到深度学习(OpenCV-Python)》在介绍Python基础、OpenCV基础、计算机视觉理论基础、深度学习理论的基础上,介绍了计算机视觉领域内具有代表性的40个典型案例。这些案例中,既有传统的案例(数字识别、答题卡识别、物体计数、缺陷检测、手势识别、隐身术、以图搜图、车牌识别、图像加密、指纹识别等),也有深度学习案例(图像分类、风格迁移、姿势识别、实例分割等),还有人脸识别方面的案例(表情识别、驾驶员疲劳监测、识别性别与年龄等)。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/730089
推荐阅读
相关标签
  

闽ICP备14008679号