基于 Spring Boot 的车牌识别系统(附项目地址)!
程序员私房菜
共 1923字,需浏览 4分钟
· 2020-08-11
gitee开源地址 介绍 包含功能 软件版本 软件架构 操作界面 车牌检测过程 图片车牌文字识别过程 安装教程 参考文档
gitee开源地址
“https://gitee.com/admin_yu/yx-image-recognition
介绍
spring boot + maven 实现的车牌识别及训练系统 基于java语言的深度学习项目,在整个开源社区来说都相对较少;而基于java语言实现车牌识别EasyPR-Java项目,最后的更新已经是五年以前。 本人参考了EasyPR原版C++项目、以及fan-wenjie的EasyPR-Java项目;同时查阅了部分opencv官方4.0.1版本C++的源码,结合个人对java语言理解,整理出当前项目 这是一个入门级教程项目,本人目前也正在学习图片识别相关技术;大牛请绕路 当前项目在原有EasyPR项目基础上,增加了绿牌识别功能,只不过当前的训练库文件包含绿牌的样本太少,还需要重新增加绿牌样本的训练,后续会逐步上传 当前已经添加基于svm算法的车牌检测训练、以及基于ann算法的车牌号码识别训练功能 后续会逐步加入证件识别、人脸识别等功能
包含功能
黄 蓝 绿 黄蓝绿车牌检测及车牌号码识别 单张图片、多张图片并发、单图片多车牌检测及识别 图片车牌检测训练 图片文字识别训练 包含两种依赖包的实现方式:基于org.bytedeco.javacpp包的实现方式;基于org.opencv官方包的实现方式 org.opencv官方包,提供了java语言api;java项目可以通过build path方式或者环境变量的方式引用; org.bytedeco.javacpp包,JavaCPP是一个开源库,它提供了在 Java 中高效访问本地 C++的方法;在pom中引入坐标依赖即可
软件版本
jdk 1.8.61+ maven 3.0+ opencv 4.0.1 ;javacpp1.4.4;opencv-platform 4.0.1-1.4.4 spring boot 2.1.5.RELEASE yx-image-recognition 1.0.0版本
软件架构
B/S 架构,前端html + requireJS,后端java 数据库使用 sqlite3.0 接口文档使用swagger 2.0
操作界面
![](https://filescdn.proginn.com/a6e5ce319844eaec3dfbaefa6ccd0a8f/5ef12ab930eb32f6ccd2e00bc863b385.webp)
车牌图片来源于网络,仅用于交流学习,不得用于商业用途;如有侵权,请联系本人删除
车牌检测过程
高斯模糊:
![](https://filescdn.proginn.com/c5217a0d3d0922a0f549c4df93f0cef4/ab348ed187c90846bf242976e7ed09b1.webp)
图像灰度化:
![](https://filescdn.proginn.com/50f682e00a1c8faf662089feb6791d35/c24ce786495ba4ce2734c8f904b56a31.webp)
Sobel 算子:
![](https://filescdn.proginn.com/4e8a8c1f1fa86075e77d951fa7718e41/cf4a3a4702f34c2256fa579563f05521.webp)
图像二值化:
![](https://filescdn.proginn.com/c9f75427d67a03a50e363eb91c40ef6c/8c2d447908bfd43bb85ee84d6d822355.webp)
图像闭操作:
![](https://filescdn.proginn.com/76bafa8477fe8b180824500db592123e/950567db0bab76eb2a7da8a265ba2994.webp)
二值图像降噪:
![](https://filescdn.proginn.com/7e526346848c30499a73751112e01187/c31d95ca75dad851f65ce29fd0df7791.webp)
提取外部轮廓:
![](https://filescdn.proginn.com/f204631be0af896c9973b328aef2d62e/dff33d750dd75dd4b5b5db87fabd77a0.webp)
外部轮廓筛选:
![](https://filescdn.proginn.com/4ec515bbbdd9b1ed18a9d31844428ba4/d15999638e3ed43ea6f5bf319e6cb9f7.webp)
切图:
![](https://filescdn.proginn.com/7bce621adbbda40209630f13b4d654ea/b0a9bdc4a91437d29956b18e20882479.webp)
重置切图尺寸:
![](https://filescdn.proginn.com/235b1ea157d1936573210432976f8a5f/36db456d2ea0d314860cf84a7d5cef2e.webp)
车牌检测结果:
![](https://filescdn.proginn.com/eff50a56addd40e85724f44faddfa31b/00ff850ef7e2c1c722c601c8ac9dc328.webp)
图片车牌文字识别过程
debug_char_threshold:
![](https://filescdn.proginn.com/fe9fbe20d377a3444129baf3d47a8e27/dad5b15bbe193886a81d11c0301ed3c5.webp)
debug_char_clearLiuDing:
![](https://filescdn.proginn.com/bf969379fa01112919e42a0268178deb/38d5614f35f38cf0102bed799e676cbd.webp)
debug_specMat:
![](https://filescdn.proginn.com/f61836592e62ff75ae2d8873591478a2/7ed4e2d00c446959610e3118b1b20280.webp)
debug_chineseMat:
![](https://filescdn.proginn.com/ba03a738076fa74fc1b2d4787f4c7457/270ad5cf177a29cf5423e348499220c7.webp)
debug_char_auxRoi:
![](https://filescdn.proginn.com/7ef3aa0d98e7e9ccf859811dd062910f/3e1ee457f184d784251854ae31dd2ebf.webp)
安装教程
开发环境搭建:./doc/01_开发环境搭建.md 将项目拉取到本地,PlateDetect文件夹拷贝到d盘下,默认车牌识别操作均在d:/PlateDetect/目录下处理 需要修改操作路径,修改com/yuxue/constant/Constant.java文件常量参数即可,可以使用绝对盘符路径,也可以使用项目相对路径 spring boot方式运行项目,浏览器上输入 http://localhost:16666/index 即可打开操作界面 浏览器上输入 http://localhost:16666/swagger-ui.html 即可打开接口文档页面
参考文档
liuruoze/EasyPR:https://gitee.com/easypr/EasyPR fan-wenjie/EasyPR-Java:https://github.com/fan-wenjie/EasyPR-Java opencv官方:https://opencv.org/
如果有人问学习数据结构和算法有什么书籍可以推荐,那么《数据结构和算法(第二版)》一定必读不可,这本书第二版的豆瓣评分高达 8.3 ,很经典,非常适合假期集中时间阅读。
这本书在市面上已经绝版了,非常经典,我这提供了高清电子书下载: 获取方式 《数据结构和算法》第二版高清电子书已经打包好,可以通过下述步骤来获取:
扫描下方二维码回复:数据结构,
可获取下载链接
???
?长按上方二维码 2 秒
回复「数据结构」即可获取资料
点赞是最大的支持
评论