分享一个基于 SpringMvc + OpenCV 的答题卡识别系统

2021-06-09 10:52:50 浏览数 (1)

简介

OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,它提供了一系列图像处理和计算机视觉方面很多通用算法。是研究图像处理技术的一个很不错的工具。最初开始接触是2016年因为公司项目需要,但是当时网上可供参考的 demo 实在太少了,而且基本上都是基于C、C 实现的。也就是从 2017 年开始,关于 java opencv 的资料才渐渐多起来。处于这种情况,就想搭建一个有助于我们学习和了解 opencv 的一个平台。因此就有了这个系统。从安装开始,和大家一起学习记录 OpenCV 的相关知识,直至最终一个简单但完整 DEMO 的实现(答题卡识别)。

软件架构

SpringMVC AdminLTE 2 maven。考虑到之前 demo 测试,要么都是生成图片查看效果,要么用 swing 绘制,遇到参数变化的时候,不便于调试,于是就做成了大家熟悉的 web 模式。后台是基于 SpringMVC,也没有数据库交互,就是个页面操作效果实时查看的功能,现在很简单。前端使用的是AdminLTE 2,一个基于 bootstrap 的轻量级后台模板。

主要内容

  • 图像二值化
  • 图像自适用二值化
  • 高斯模糊
  • 图片缩放
  • 腐蚀膨胀
  • 进阶形态学变换
  • 边缘检测
  • 检测直线
  • 检测圆
  • 检测颜色
  • 轮廓识别
  • 模板查找
  • 绘制灰度直方图
  • 答题卡识别demo

系统效果

另外正在陆续实现一个拍照识别答题卡的小程序,可以微信小程序搜索扫扫阅卷。

0 人点赞