计算机竞赛 机器视觉opencv答题卡识别系统

0 前言

🔥 优质竞赛项目系列,今天要分享的是

🚩 答题卡识别系统 - opencv python 图像识别

该项目较为新颖,适合作为竞赛课题方向,学长非常推荐!

🥇学长这里给一个题目综合评分(每项满分5分)

  • 难度系数:3分
  • 工作量:3分
  • 创新点:3分

🧿 更多资料, 项目分享:

https://gitee.com/dancheng-senior/postgraduate

什么是机器视觉

答题卡识别使用的是机器视觉识别算法, 那什么是机器视觉算法呢?

机器视觉,并不是视觉,他不具有人类的视觉理解能力,说穿了他只是图像处理技术的工程应用,都是由工程师开发的算法来完成任务,并且是特定的算法完成特定的任务,互相之间没有通用性。

废话不多说, 学长到大家看看, 这项技术实现的效果如何.

实现步骤

答题卡识别步骤:

  • Step #1: 检测到图片中的答题卡
  • Step #2: 应用透视变换来提取图中的答题卡(以自上向下的鸟瞰视图)
  • Step #3: 从透视变换后的答题卡中提取 the set of 气泡/圆点 (答案选项)
  • Step #4: 将题目/气泡排序成行
  • Step #5: 判断每行中被标记/涂的答案
  • Step #6: 在我们的答案字典中查找正确的答案来判断答题是否正确
  • Step #7: 为其它题目重复上述操作

首先,打开摄像头扫描答题卡

对摄像头获取到的答题卡图片进行二值化腐蚀膨胀边缘检测

轮廓计算,进行顶点对齐,得到下图

对图像进行倾斜变换和仿射变换,得到下图

开始对图像进行二值化,边缘检测等操作,最终得到结果


最后

🧿 更多资料, 项目分享:

https://gitee.com/dancheng-senior/postgraduate

相关推荐
D___H9 分钟前
Part10_编写自己的解释器
python
Zero_to_zero123411 分钟前
Claude code系列(一):claude安装、入门及基础操作指令
人工智能·python
Yeats_Liao12 分钟前
异步推理架构:CPU-NPU流水线设计与并发效率提升
python·深度学习·神经网络·架构·开源
哲-哲14 分钟前
WVP+ZLM搭建碰到问题
java
编程彩机16 分钟前
互联网大厂Java面试:从Spring Cloud到分布式事务的技术场景解析
java·spring cloud·微服务·消息队列·分布式事务
黎雁·泠崖18 分钟前
Java内部类与匿名内部类:定义+类型+实战应用
java·开发语言
青槿吖24 分钟前
第二篇:JDBC进阶骚操作:防注入、事务回滚、连接池优化,一篇封神
java·开发语言·jvm·算法·自动化
青&棠27 分钟前
JDK 多版本管理工具 jvms
java
FITA阿泽要努力32 分钟前
Agent Engineer-Day 1 初始智能体与大语言模型基础
java·前端·javascript
hnxaoli34 分钟前
统信小程序(八)归档目录自动调整
linux·python