毕设有着落了!一套开源的,基于SpringBoot的车牌识别系统

程序员的成长之路

互联网/程序员/技术/资料共享 

关注

阅读本文大概需要 4 分钟。

前言

这个项目是良月柒在逛社区时发现的,刚看到它,思绪直接被拉回了几年前,当初有同学的毕设就是停车场管理系统,关键的功能——车牌识别,连硬件都整上了,一整套流程跑下来,pretty......

时间过得真快,已经在社会大学摸爬滚打好几年了。果然,鲁迅诚不欺我:学生是这个世界上最舒坦的职业~!

不说了,赶紧搞完搞完去搬砖,今晚不热还可以多搬两车。

介绍

这是一个用Spring Boot+Maven+OpenCV 实现的车牌识别系统,包含车牌检测、车牌号识别训练。

基于Java语言的深度学习项目,在整个开源社区来说都相对较少,而基于Java语言实现车牌识别的EasyPR-Java项目,最后更新已经是五年前。

项目作者参考了EasyPR原版C++项目、以及fan-wenjie的EasyPR-Java项目,同时查阅了部分OpenCV官方4.0.1版本C++源码,结合了对Java语言的理解,整理出来的该项目。

EasyPR地址:https://gitee.com/easypr/EasyPR
EasyPR-Java地址:https://github.com/fan-wenjie/EasyPR-Java

基础概念

OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉和机器学习软件库;轻量级而且高效,由一系列C函数和少量C++类构成;该库的核心使用C++编写。

本项目是使用的Java语言实现,其本质是通过Java去调用OpenCV C++接口实现的。

这里提供了两种方式去调用C++的接口:

1.通过javacpp调用;这种方式是原版EasyPR-Java项目的使用方式,在这里更新了javacpp版本,以及切换了依赖包的引用方式为maven pom引入。

2.通过opencv官方提供的java 语言的api调用,个人推荐这种方式调用,毕竟是官方的版本。

说明

  • 这是一个入门级教程项目,大牛请绕路(作者本人也在学习图片识别相关技术)。

  • 当前(yx-image-recognition)项目在原有EasyPR项目基础上,增加了绿牌识别功能(当前的训练库绿牌样本太少,还需要增加这块的训练,后续逐步上传)。

  • 已经添加基于svm算法的车辆检测训练、以及基于ann算法的车辆号码识别训练功能。

使用体验:除了个别车牌识别很精准之外,其他的目前存在问题,可能跟车牌角度光线存在关系。

包含功能

  • 绿车牌检测及车牌号码识别

  • 单张图片、多张图片并发、单图片多车牌检测及识别

  • 图片车牌检测训练

  • 图片文字识别训练

  • 包含两种依赖包的实现方式:基于org.bytedeco.javacpp包的实现方式;基于org.opencv官方包的实现方式

  • org.opencv官方包,提供了java语言api;java项目可以通过build path方式或者环境变量的方式引用;

  • org.bytedeco.javacpp包,JavaCPP是一个开源库,它提供了在 Java 中高效访问本地 C++的方法;在pom中引入坐标依赖即可

操作界面

车牌检测过程

高斯模糊:

图像灰度化:

Sobel 算子:

图像二值化:

图像闭操作:

二值图像降噪:

提取外部轮廓:

外部轮廓筛选:

开发环境

  • 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

安装jdk,安装maven,开发软件(eclipse、idea)。

安装教程

1.将项目拉取到本地git clone https://gitee.com/admin_yu/yx-image-recognition

打开拉取下来的项目,将其中的PlateDetect文件夹拷贝到D盘下,默认车牌识别操作均在D:/PlateDetect/目录下处理。

如需修改路径,打开com/yuxue/constant/Constant.java文件编辑常量参数即可(可以使用绝对盘符路径,也可以使用项目相对路径)。

2.javacpp方式调用

> 方式一:添加pom依赖坐标

dependency>
       <groupId>org.bytedeco.javacpp-presets</groupId>
       <artifactId>opencv</artifactId>
       <version>4.0.1-1.4.4</version>
   </dependency>
   <!-- 引入这个包,会把所有平台的依赖包都导入,大小有200+M,实际上用不到 -->
   <!-- 只需要从lib目录引入对应的操作系统版本包(lib/opencv-4.0.1-1.4.4-windows-x86_64.jar)即可 -->
   <!-- <dependency>
       <groupId>org.bytedeco.javacpp-presets</groupId>
       <artifactId>opencv-platform</artifactId>
       <version>4.0.1-1.4.4</version>
   </dependency> -->

解除掉org.bytedeco.javacpp-presets注释,增加exclusion标签排出多余的包。

> 方式二:添加依赖包

/lib/opencv-4.0.1-1.4.4-windows-x86_64.jar依赖包添加到build path中。

3.用Spring Boot的方式启动项目,浏览器输入http://localhost:16666/index即可打开操作界面

浏览器输入 http://localhost:16666/swagger-ui.html 即可打开接口文档页面。

结尾

本项目作者:yuxue,一个不资深的java语言从业者。

项目地址:https://gitee.com/admin_yu/yx-image-recognition


别忘记点个再看,咱们下篇见

每天进步一点点
慢一点才能更快

<END>

推荐阅读:

如何一句话证明你在阿里工作过

我C,原码/反码/补码,我特喵也忘个精光...

5T技术资源大放送!包括但不限于:C/C++,Linux,Python,Java,PHP,人工智能,单片机,树莓派,等等。在公众号内回复「2048」,即可免费获取!!

微信扫描二维码,关注我的公众号

写留言

朕已阅 

已标记关键词 清除标记
<p> <span style="color:#E53333;font-size:18px;"><strong>课程介绍</strong></span> </p> <p> 仓库管理系统主要功能有采购入库采购退货销售出库销售退货仓库盘点库存报表Excel导入导出按钮级权限控制及系统日志等功能系统采用SpringBoot ,mybatis,easyui,ajax,mssql数据库等技术开发。提供所有源代码下载系统功能完善可直接运行。 </p> <span style="font-size:18px;color:#E53333;"><strong>开发环境</strong></span><br /> 项目开发语言:SpringBoot ,mybatis,easyui,ajax,mssql数据库<br /> 项目运行环境:jdk1.8及以上版本,tomcat8.0及以上版本,sql server2005及以上版本<br /> 项目开发工具: 本项目开发工具是Intellij Idea<br /> <br /> <span style="font-size:18px;color:#E53333;"><strong>课程目标</strong></span><br /> <p> 掌握SpringBoot等技术熟悉仓库管理系统主要功能采购入库采购退货销售出库销售退货仓库盘点系统报表权限控制及日志等 </p> <p> <span style="color:#E53333;font-size:14px;"><strong>50多门JAVA系列全套课程包括大一新生到大四毕业所有JAVA系列技术专业课程项目实战商业项目等;</strong></span><br /> <span style="color:#E53333;"><strong>基础课程:</strong></span><br /> JAVA初级工程师:<br /> <span> </span>1、计算机基础<br /> <span> </span>2、HTML语言基础<br /> <span> </span>3、C语言从入门到精通+贪吃蛇游戏<br /> <span> </span>4、贪吃蛇游戏<br /> <span> </span>5、SQL SERVER数据库基础<br /> <span> </span>6、JAVA从入门到精通+推箱子游戏+QQ即时通讯软件<br /> <span> </span>7、推箱子游戏;<br /> <span> </span>8、仿QQ即时通讯软件;<br /> <strong><span style="color:#E53333;">JAVA中级工程师:</span></strong><br /> <span> </span>9、SQLSERVER数据库高级<br /> <span> </span>10、SQLSERVER从入门到精通(基础+高级)<br />  11、JavaScript从入门到精通<br /> <span> </span>12、JSP从入门到精通+点餐系统<br /> <span> </span>13、JSP从入门到精通+在线视频学习教育平台<br /> <span> </span>14、JSP从入门到精通+大型电商平台;<br /> <span> </span>15、XML从入门到精通<br /> <span> </span>16、数据结构(JAVA版)<br /> <strong><span style="color:#E53333;">JAVA高级工程师:</span></strong><br /> <span> </span>17、Oracle数据库从入门到精通,<br /> <span> </span>18、ajax+jquery从入门到精通<br /> <span> </span>19、EasyUI从入门到精通<br /> <span style="color:#E53333;"><strong>SSH框架:</strong></span><br /> <span> </span>20、Struts2从入门到精通课程<br /> <span> </span>21、Hibernate从入门到精通课程<br /> <span> </span>22、Spring从入门到精通课程;<br /> <span> </span>23、Echarts从入门到精通,<br /> <span> </span>24、Excel基于POI导入导出<br /> <span style="color:#E53333;"><strong>工作流框架:</strong></span><br /> <span> </span>25、Activiti流程框架从入门到精通<br /> <span> </span>26、JBPM流程框架从入门到精通<br /> SSM框架:<br /> <span> </span>27、MyBatis从入门到精通<br /> <span> </span>28、Spring MVC从入门到精通<br /> <span> </span>29、Spring Boot入门到精通<br /> <span> </span>30、Spring Cloud入门到精通<br /> <span style="color:#E53333;"><strong>面试题:</strong></span><br /> <span> </span>31、职业生涯规划及面试题集锦<br /> <span style="color:#E53333;"><strong>商业项目:</strong></span><br /> <span> </span>32、微信公众号在线支付系统<br /> <span> </span>33、微信生活缴费在线支付系统<br /> <span> </span>34、支付宝生活缴费在线支付系统<br /> <span> </span>35、在线考试系统<br /> <span> </span>36、人脸识别智能考试系统(人工智能AI)<br /> <span> </span>37、仓库管理及质量追溯系统<br /> <span> </span>38、房屋出租管理系统APP(身份证识别)<br /> <span> </span>39、手机订餐管理系统<br /> <span> </span>40、CRM客户关系管理系统<br /> <span> </span>41、大型房地产CRM销售管理系统<br /> <span> </span>42、CMPP2,CMPP3移动网关系统<br /> <span> </span>43、仓库管理系统SpringBoot)<br /> <span> </span>44、影院在线售票系统(仿猫眼电影)<br /> <span style="color:#E53333;"><strong>人工智能:</strong></span><br /> <span> </span>45、人脸识别在线考试系统<br /> <span> </span>46、人脸识别系统项目实战<br /> <span> </span>47、车牌识别停车场管理系统<br /> <span> </span>48、身份证识别系统项目实战<br /> <span> </span>49、营业执照识别系统项目实战<br /> <span> </span>50、名片识别管理系统 </p> <div> <br /> </div>
相关推荐
<p>      掌握基于腾讯人工智能(AI)车牌识别技术使用车牌识别技术实现一个完整停车场管理系统项目包括网页调用摄像头拍照车牌拍照识别上传车牌图片识别用户管理车辆管理(临时车与包月车)车辆出场入场管理停车费收费管理按照临时车或包月车自动计算停车费系统参数设置修改用户密码及安全退出等功能系统采用Jsp技术使用SSM框架Mysql数据库ajax技术及人工智能等相关技术实现。</p> <h2><span style="color: #e03e2d;">重要通知:本课程根据腾讯AI车牌识别新接口更新新接口源代码发布程序购买课程同学可以下载新程序包括(运行程序及源代码)更新时间:2021-2-17</span><br /><br /><span style="color: #e53333;">项目开发技术:java,jsp,mysql,MyBatis,SpringMVC,jquery,ajax,json</span><br /><span style="color: #e53333;">项目运行环境:jdk1.7及以上版本,tomcat6.0及以上版本,mysql5.5及以上版本</span><br /><span style="color: #e53333;">项目开发工具: 本项目开发工具是Eclipse,也支持myEclipseIntellij Idea等其他版本开发工具</span><br /><br /></h2> <p style="color: #333333;"><span style="font-size: 20px;"><span style="color: #ff0000;"><strong>相关课程学习顺序</strong></span></span></p> <p style="color: #333333;">本校课程是培养JAVA软件工程师及JSP WEB网络应用程序开发android工程师全套课程课程学习顺序如下:<br /><span style="color: #ff0000;"><strong>JAVA初级工程师:</strong></span><br />    1、计算机基础<br />    2、HTML语言基础<br />    3、C语言从入门到精通+贪吃蛇游戏<br />    4、贪吃蛇游戏<br />    5、SQL SERVER数据库基础<br />    6、JAVA从入门到精通+推箱子游戏+QQ即时通讯软件<br />    7、推箱子游戏;<br />    8、仿QQ即时通讯软件;<br /><span style="color: #ff0000;"><strong>JAVA中级工程师:</strong></span><br />    9、SQLSERVER数据库高级<br />    10、SQLSERVER从入门到精通(基础+高级)<br />              11、JavaScript从入门到精通<br />    12、JSP从入门到精通+点餐系统<br />    13、JSP从入门到精通+在线视频学习教育平台<br />    14、JSP从入门到精通+大型电商平台;<br />    15、XML从入门到精通<br />    16、数据结构(JAVA版)<br /><span style="color: #ff0000;"><strong>JAVA高级工程师:</strong></span><br />    17、Oracle数据库从入门到精通,<br />    18、ajax+jquery从入门到精通<br />    19、EasyUI从入门到精通<br /><span style="color: #ff0000;"><strong>SSH框架:</strong></span><br />    20、Struts2从入门到精通课程<br />    21、Hibernate从入门到精通课程<br />    22、Spring从入门到精通课程;<br />    23、Echarts从入门到精通,<br />    24、Excel基于POI导入导出<br /><span style="color: #ff0000;"><strong>工作流框架:</strong></span><br />    25、Activiti流程框架从入门到精通<br />    26、JBPM流程框架从入门到精通<br /><span style="color: #ff0000;"><strong>SSM框架:</strong></span><br />    27、MyBatis从入门到精通<br />    28、Spring MVC从入门到精通<br /><span style="color: #ff0000;"><strong>面试题:</strong></span><br />    29、职业生涯规划及面试题集锦<br /><span style="color: #ff0000;"><strong>商业项目:</strong></span><br />    30、微信公众号在线支付系统<br />    31、微信生活缴费在线支付系统<br />    32、支付宝生活缴费在线支付系统<br />    33、在线考试系统<br />    34、手机订餐管理系统<br />    35、CRM客户关系管理系统<br />    36、大型房地产CRM销售管理系统<br />    37、CMPP2,CMPP3移动网关系统<br /><span style="color: #ff0000;"><strong>人工智能:</strong></span><br />    38、人脸识别在线考试系统<br />    39、人脸识别系统项目实战<br />    40、车牌识别系统项目实战<br />    41、身份证识别系统项目实战<br />    42、营业执照识别系统项目实战</p> <p style="color: #333333;">          43、名片识别管理系统</p>
<p><span style="max-width: 100%; box-sizing: border-box; font-family: 'Hiragino Sans GB', 'Microsoft Yahei', arial, 宋体, 'Helvetica Neue', Helvetica, STHeiTi, sans-serif; font-size: 14px; background-color: #ffffff; color: #ff0000;">通过该课程学习可以掌握如下技术</span></p> <p>  1、Vue3.x+ElementUI前后端分离技术跨域访问XSS防脚本注入Node.js</p> <p>  2、Springboot、Maven、Spring AOP切面实现系统日志</p> <p>  3、MySql数据库、MyBatisPlus、Redis</p> <p>  4、Shiro权限控制:菜单角色及权限管理(按钮及用户级别权限)</p> <p>  5、Swagger、knife4j接口文档配置</p> <p>  6、Echarts图表、POI  Excel导入导出</p> <p>  7、单点登录(一个用户不能在多个设备同时登录)</p> <p style="margin: 0px; max-width: 100%; box-sizing: border-box; color: #333333; font-family: 'Hiragino Sans GB', 'Microsoft Yahei', arial, 宋体, 'Helvetica Neue', Helvetica, STHeiTi, sans-serif; font-size: 14px; background-color: #ffffff;">  8、腾讯云AI车牌识别</p> <p style="margin: 0px; max-width: 100%; box-sizing: border-box; color: #333333; font-family: 'Hiragino Sans GB', 'Microsoft Yahei', arial, 宋体, 'Helvetica Neue', Helvetica, STHeiTi, sans-serif; font-size: 14px; background-color: #ffffff;"><span style="color: #ff0000;">项目功能:</span></p> <p style="margin: 0px; max-width: 100%; box-sizing: border-box; color: #333333; font-family: 'Hiragino Sans GB', 'Microsoft Yahei', arial, 宋体, 'Helvetica Neue', Helvetica, STHeiTi, sans-serif; font-size: 14px; background-color: #ffffff;"><span style="color: #333333; font-family: Hiragino Sans GB, Microsoft Yahei, arial, 宋体, Helvetica Neue, Helvetica, STHeiTi, sans-serif;"><span style="font-size: 14px;">1、掌握编写云平台项目数据库设计方法</span></span></p> <p style="margin: 0px; max-width: 100%; box-sizing: border-box; color: #333333; font-family: 'Hiragino Sans GB', 'Microsoft Yahei', arial, 宋体, 'Helvetica Neue', Helvetica, STHeiTi, sans-serif; font-size: 14px; background-color: #ffffff;"><span style="color: #333333; font-family: Hiragino Sans GB, Microsoft Yahei, arial, 宋体, Helvetica Neue, Helvetica, STHeiTi, sans-serif;"><span style="font-size: 14px;">2、综合各种停车场项目需求灵活收费记时规则</span></span></p> <p style="margin: 0px; max-width: 100%; box-sizing: border-box; color: #333333; font-family: 'Hiragino Sans GB', 'Microsoft Yahei', arial, 宋体, 'Helvetica Neue', Helvetica, STHeiTi, sans-serif; font-size: 14px; background-color: #ffffff;"><span style="color: #333333; font-family: Hiragino Sans GB, Microsoft Yahei, arial, 宋体, Helvetica Neue, Helvetica, STHeiTi, sans-serif;"><span style="font-size: 14px;">3、</span></span><span style="color: #333333; font-family: Hiragino Sans GB, Microsoft Yahei, arial, 宋体, Helvetica Neue, Helvetica, STHeiTi, sans-serif;"><span style="font-size: 14px;">主要功能有合作伙伴管理停车场管理车辆管理财务管理车牌识别财务明细及统计图表权限、菜单、角色及日志等功能</span></span></p> <p style="margin: 0px; max-width: 100%; box-sizing: border-box; color: #333333; font-family: 'Hiragino Sans GB', 'Microsoft Yahei', arial, 宋体, 'Helvetica Neue', Helvetica, STHeiTi, sans-serif; font-size: 14px; background-color: #ffffff;"><span style="color: #333333; font-family: Hiragino Sans GB, Microsoft Yahei, arial, 宋体, Helvetica Neue, Helvetica, STHeiTi, sans-serif;"><span style="font-size: 14px;"><span style="color: #e03e2d;">开发工具:</span>idea,vscode</span></span></p> <p style="margin: 0px; max-width: 100%; box-sizing: border-box; color: #333333; font-family: 'Hiragino Sans GB', 'Microsoft Yahei', arial, 宋体, 'Helvetica Neue', Helvetica, STHeiTi, sans-serif; font-size: 14px; background-color: #ffffff;"><span style="color: #333333; font-family: Hiragino Sans GB, Microsoft Yahei, arial, 宋体, Helvetica Neue, Helvetica, STHeiTi, sans-serif;"><span style="font-size: 14px;"><span style="color: #e03e2d;">讲师经验:</span>20多年开发设计经验10多年大学教育经验设计40多个大型项目</span></span></p> <p style="margin: 0px; max-width: 100%; box-sizing: border-box; color: #333333; font-family: 'Hiragino Sans GB', 'Microsoft Yahei', arial, 宋体, 'Helvetica Neue', Helvetica, STHeiTi, sans-serif; font-size: 14px; background-color: #ffffff;"> </p> <p style="margin: 0px; max-width: 100%; box-sizing: border-box; color: #333333; font-family: 'Hiragino Sans GB', 'Microsoft Yahei', arial, 宋体, 'Helvetica Neue', Helvetica, STHeiTi, sans-serif; font-size: 14px; background-color: #ffffff;"> </p> <p style="margin: 0px; max-width: 100%; box-sizing: border-box; color: #333333; font-family: 'Hiragino Sans GB', 'Microsoft Yahei', arial, 宋体, 'Helvetica Neue', Helvetica, STHeiTi, sans-serif; font-size: 14px; background-color: #ffffff;"> </p>
目标识别是计算机视觉一个重要研究领域由此延伸出车辆型号识别具有重 要实际应用价值特别是在当今交通状况复杂大城市智能交通系统成为发展趋 势这离不开对车辆型号进行识别和分类工作本文围绕如何利用计算机视觉方 法进行车辆型号识别和分类展开一系列研究: 本文对当前目标识别和分类特征和算法做总结和归纳。分析比较作为图 像特征描述常见特征算子总结归纳他们提取方法、特征性能以及相互之间 关联。另外介绍在目标识别工作中常用分类方法,阐述他们各自原理和工作 方法。研究深度神经网络理论依据分析比较深度神经网络不同特征学习方 法以及卷积神经网络训练方法。分析比较不同特征学习方法特点选取 k-means 作为本文使用特征学习方法利用卷积神经网络结构搭建深度学习模型进行车辆 车型识别工作。 本文为测试基于深度学习车辆型号分类算法性能在 30 个不同型号共 7158 张图片上进行实验;并在相同数据上利用改进 SIFT 特征匹配算法进行对比实验; 进过实验测试深度学习方法在进行车型分类实验中取得 94%正确率并在与 SIFT 匹配实验结果对比后进一步证实:深度学习方法能够应用在车辆型号识别领域
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付 9.90元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值