用Python+OpenCV+Yolov5+PyTorch开发的车牌识别软件(包含训练数据)

news2025/2/28 3:15:14

目录

演示视频

软件使用说明

软件设计思路


演示视频

这是一个可以实时识别车牌的软件,支持图片和视频识别,以下是软件的演示视频。

车牌识别软件

点击查看代码购买地址

软件使用说明

1. 下载源码后,首先安装依赖库。项目所用到的依赖库已经放在了requirements.txt文件中,大家可以使用以下命令进行安装。建议要使用requirements.txt中指定的版本库,其他版本的库可能会导致部分功能异常。

pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

2. 安装完毕后,运行main.py即可打开软件。

3. 软件打开后会自动加载模型,加载完毕后才会允许选择待识别文件。

4. test-pic和test-video文件夹中分别存放了图片和视频用于识别。

5. 选择完待识别文件后,点击开始识别按钮即可。

软件设计思路

1. 首先获取一些包含车牌的图片,然后使用labelimg进行标注。标注完毕后再使用yolov5进行训练,得到一个车牌定位模型。

2. 再用PyTorch训练只有车牌的图片,得到一个车牌内容识别模型。

3. 车牌颜色通过Opencv的HSV色域值处理可以得到。

4. 车牌定位出来之后,可以进行透视变换处理从而提高识别准确度。但如果你训练的车牌数据够多角度够刁钻,准确度也高的话,那透视变换处理这一步的话其实也可以省略跳过。

5. 界面的话通过PyQt5库实现,难度不大。重点就是知道如何将将numpy类型的值转成QPixmap,好让图片显示到界面上。

6. 为了做到实时识别,在识别前一定要先加载模型(包括yolov5训练出来的定位模型以及PyTorch训练出来的车牌号识别模型)。要改下yolov5的detect.py代码文件好让它跟PyQt5结合。

这是我训练出来的模型准确度,测试图片都是蓝色车牌。

注:我使用的绝大多数图片是蓝色车牌,有少量一部分是绿色车牌,其他颜色的车牌都没有。 车牌没有那种角度特别刁钻、也没有那种模糊的受天气影响的图片,所以该模型对蓝色车牌和质量较好图片有较高的识别准确度。如果读者有更好的识别模型,可以直接替换项目中res文件夹下的content_recognition.pth模型文件。

../test-plate/京A25071_186571_000.jpg的预测结果为京A25071,预测正确
../test-plate/京A82889_180804_000.jpg的预测结果为京A82889,预测正确
../test-plate/京GRY777_197241_000.jpg的预测结果为浙GRY777,预测错误
../test-plate/京HJ7009_152600_000.jpg的预测结果为京HJ7009,预测正确
../test-plate/京LX5685_72488_000.jpg的预测结果为京LX5685,预测正确
../test-plate/京N1J626_98989_000.jpg的预测结果为京N1J626,预测正确
../test-plate/京NMX666_144294_000.jpg的预测结果为京NMX666,预测正确
../test-plate/京NS5500_196624_000.jpg的预测结果为京NS5500,预测正确
../test-plate/京PXC079_199402_000.jpg的预测结果为京PXC079,预测正确
../test-plate/京Q7E2F9_65569_000.jpg的预测结果为京Q7E2F9,预测正确
../test-plate/京Y53576_39140_000.jpg的预测结果为京Y53576,预测正确
../test-plate/冀A191EY_60434_000.jpg的预测结果为冀A191EY,预测正确
../test-plate/冀AC599V_184765_000.jpg的预测结果为冀AC599V,预测正确
../test-plate/冀AT5H81_83549_000.jpg的预测结果为冀AT5H81,预测正确
../test-plate/冀AVN720_57458_000.jpg的预测结果为冀AVN720,预测正确
../test-plate/冀JS9095_44958_000.jpg的预测结果为冀JS9095,预测正确
../test-plate/川AF5R53_157267_000.jpg的预测结果为川AF5R53,预测正确
../test-plate/川KBF959_130319_000.jpg的预测结果为川KBF959,预测正确
../test-plate/川RFF054_76632_000.jpg的预测结果为川RFF054,预测正确
../test-plate/川X90621_93848_000.jpg的预测结果为川X90621,预测正确
../test-plate/新AJ8865_138937_000.jpg的预测结果为闽AJ8865,预测错误
../test-plate/晋A6C135_56498_000.jpg的预测结果为晋A6C135,预测正确
../test-plate/晋JKV262_22000_000.jpg的预测结果为冀JKV262,预测错误
../test-plate/沪A083M4_14497_000.jpg的预测结果为沪A083M4,预测正确
../test-plate/沪A88E81_00018_000.jpg的预测结果为沪A88E81,预测正确
../test-plate/沪A93H97_95235_000.jpg的预测结果为沪A93H97,预测正确
../test-plate/沪ABC729_193472_000.jpg的预测结果为苏ABC729,预测错误
../test-plate/沪ARJ520_68433_000.jpg的预测结果为沪ARJ520,预测正确
../test-plate/沪AYG132_109248_000.jpg的预测结果为皖AYG132,预测错误
../test-plate/沪B916J0_123991_000.jpg的预测结果为沪B916J0,预测正确
.
.
.
当中省略
.
.
.
../test-plate/苏AE377M_97415_000.jpg的预测结果为苏AE377M,预测正确
../test-plate/苏AF73V5_135748_000.jpg的预测结果为苏AF73V5,预测正确
../test-plate/苏AG56N0_85544_000.jpg的预测结果为苏AG56N0,预测正确
../test-plate/苏AH617S_178756_000.jpg的预测结果为苏AH617S,预测正确
../test-plate/苏AL38K8_139404_000.jpg的预测结果为苏AL38K8,预测正确
../test-plate/苏AN7L88_133545_000.jpg的预测结果为苏AN7L88,预测正确
../test-plate/苏AP1T68_113273_000.jpg的预测结果为苏AP1T68,预测正确
../test-plate/苏APZ928_11308_000.jpg的预测结果为苏APZ928,预测正确
../test-plate/苏AQ92C9_23127_000.jpg的预测结果为苏AQ92C9,预测正确
../test-plate/苏AR91L5_128784_000.jpg的预测结果为苏AR91L5,预测正确
../test-plate/苏AS71T2_133232_000.jpg的预测结果为苏AS71T2,预测正确
../test-plate/苏AT6Z98_48088_000.jpg的预测结果为苏AT6Z98,预测正确
../test-plate/苏AUA826_04308_000.jpg的预测结果为苏AUA826,预测正确
../test-plate/苏AUN095_161402_000.jpg的预测结果为苏AUN095,预测正确
../test-plate/苏AX813X_178632_000.jpg的预测结果为苏AX813X,预测正确
../test-plate/苏AZ358U_151776_000.jpg的预测结果为苏AZ358U,预测正确
../test-plate/苏B0RR19_79460_000.jpg的预测结果为苏B0RR19,预测正确
../test-plate/苏B5ZX98_171484_000.jpg的预测结果为苏B5ZX98,预测正确
../test-plate/苏B6WM90_191120_000.jpg的预测结果为苏B6WM90,预测正确
../test-plate/苏B9Y692_61405_000.jpg的预测结果为苏B9Y692,预测正确
../test-plate/苏BUE957_123055_000.jpg的预测结果为苏BUE957,预测正确
../test-plate/苏C573CD_164740_000.jpg的预测结果为苏C573CD,预测正确
../test-plate/苏C652H9_97980_000.jpg的预测结果为苏C652H9,预测正确
../test-plate/苏C697DK_88802_000.jpg的预测结果为苏C697DK,预测正确
../test-plate/苏C751H5_163948_000.jpg的预测结果为苏C751H5,预测正确
../test-plate/苏C7H260_117104_000.jpg的预测结果为苏C7H260,预测正确
../test-plate/苏CZ816B_91218_000.jpg的预测结果为苏CZ816B,预测正确
../test-plate/苏DAX363_81388_000.jpg的预测结果为苏DAX363,预测正确
../test-plate/苏DB177V_105007_000.jpg的预测结果为苏DB177V,预测正确
../test-plate/苏DR809J_191106_000.jpg的预测结果为苏DR809J,预测正确
../test-plate/苏DSC378_98947_000.jpg的预测结果为苏DSC378,预测正确
../test-plate/苏DW001Q_176309_000.jpg的预测结果为苏DW001Q,预测正确
../test-plate/苏DW5196_26608_000.jpg的预测结果为苏DW5196,预测正确
../test-plate/苏E02E2S_106472_000.jpg的预测结果为苏E02E2S,预测正确
../test-plate/苏E0U3R7_182117_000.jpg的预测结果为苏E0U3R7,预测正确
../test-plate/苏E0V50G_172507_000.jpg的预测结果为苏E0V50G,预测正确
../test-plate/苏E0Y10A_19966_000.jpg的预测结果为苏E0Y10A,预测正确
../test-plate/苏E1D3D9_94252_000.jpg的预测结果为苏E1D3D9,预测正确
../test-plate/苏E1KU80_14570_000.jpg的预测结果为苏E1KU80,预测正确
../test-plate/苏E37V27_86827_000.jpg的预测结果为苏E37V27,预测正确
../test-plate/苏E58Q1J_163640_000.jpg的预测结果为苏E58Q1J,预测正确
../test-plate/苏E5C51X_115318_000.jpg的预测结果为苏E5C51X,预测正确
../test-plate/苏E5FN93_149961_000.jpg的预测结果为苏E5FN93,预测正确
../test-plate/苏E6L2E9_189678_000.jpg的预测结果为苏E6L2E9,预测正确
../test-plate/苏E79VL5_77578_000.jpg的预测结果为苏E79VL5,预测正确
../test-plate/苏E7BA76_159247_000.jpg的预测结果为苏E7BA76,预测正确
../test-plate/苏E7S1R9_26278_000.jpg的预测结果为苏E7S1R9,预测正确
../test-plate/苏E891N5_04774_000.jpg的预测结果为苏E891N5,预测正确
../test-plate/苏E95DM5_152524_000.jpg的预测结果为苏E95DM5,预测正确
../test-plate/苏EB3P81_151964_000.jpg的预测结果为苏EB3P81,预测正确
../test-plate/苏ES33F3_141968_000.jpg的预测结果为苏ES33F3,预测正确
../test-plate/苏ES787A_113028_000.jpg的预测结果为苏ES787A,预测正确
../test-plate/苏EU7F37_27537_000.jpg的预测结果为苏EU7F37,预测正确
../test-plate/苏EW0806_29402_000.jpg的预测结果为苏EW0806,预测正确
../test-plate/苏EX8U57_136236_000.jpg的预测结果为苏EX8U57,预测正确
../test-plate/苏EY37L0_126817_000.jpg的预测结果为苏EY37L0,预测正确
../test-plate/苏FC589B_07934_000.jpg的预测结果为皖AC589B,预测错误
../test-plate/苏G070A6_176303_000.jpg的预测结果为皖A070A6,预测错误
../test-plate/苏J051E2_79853_000.jpg的预测结果为苏J051E2,预测正确
../test-plate/苏KA9968_124182_000.jpg的预测结果为苏KA9968,预测正确
../test-plate/苏L6228C_163029_000.jpg的预测结果为苏L6228C,预测正确
../test-plate/苏L6B286_74527_000.jpg的预测结果为苏L6B286,预测正确
../test-plate/苏L91T97_76781_000.jpg的预测结果为苏L91T97,预测正确
../test-plate/苏LGY501_43928_000.jpg的预测结果为苏LGY501,预测正确
../test-plate/苏LVN623_100722_000.jpg的预测结果为苏LVN623,预测正确
../test-plate/苏MGZ007_159590_000.jpg的预测结果为苏MGZ007,预测正确
../test-plate/苏MJ975K_126727_000.jpg的预测结果为苏MJ975K,预测正确
../test-plate/苏N7A038_152529_000.jpg的预测结果为苏N7A038,预测正确
../test-plate/豫A3CW10_116027_000.jpg的预测结果为豫A3CW10,预测正确
../test-plate/豫AQ7W30_110924_000.jpg的预测结果为豫AQ7W30,预测正确
../test-plate/豫BU0826_40429_000.jpg的预测结果为豫BU0826,预测正确
../test-plate/豫C2078U_97010_000.jpg的预测结果为豫C2078U,预测正确
../test-plate/豫C255R8_121788_000.jpg的预测结果为豫C255R8,预测正确
../test-plate/豫JE6918_129744_000.jpg的预测结果为豫JE6918,预测正确
../test-plate/豫PCH280_126347_000.jpg的预测结果为豫PCH280,预测正确
../test-plate/豫R50Z05_157033_000.jpg的预测结果为豫R50Z05,预测正确
../test-plate/豫R88005_68418_000.jpg的预测结果为豫R88005,预测正确
../test-plate/豫S3U312_16552_000.jpg的预测结果为豫S3U312,预测正确
../test-plate/豫SL6022_90909_000.jpg的预测结果为豫SL6022,预测正确
../test-plate/贵A0905V_79482_000.jpg的预测结果为贵A0905V,预测正确
../test-plate/赣B6B366_09568_000.jpg的预测结果为鄂B6B366,预测错误
../test-plate/赣B88968_138377_000.jpg的预测结果为赣B88968,预测正确
../test-plate/赣E282A2_134559_000.jpg的预测结果为赣E282A2,预测正确
../test-plate/辽BS5L55_77039_000.jpg的预测结果为辽BS5L55,预测正确
../test-plate/鄂A0GG72_120243_000.jpg的预测结果为鄂A0GG72,预测正确
../test-plate/鄂A6SU07_166449_000.jpg的预测结果为鄂A6SU07,预测正确
../test-plate/鄂AC6K16_84586_000.jpg的预测结果为鄂AC6K16,预测正确
../test-plate/鄂AT21V5_141520_000.jpg的预测结果为鄂AT21V5,预测正确
../test-plate/鄂HGG353_77747_000.jpg的预测结果为鄂HGG353,预测正确
../test-plate/闽BHK131_193696_000.jpg的预测结果为苏BHK131,预测错误
../test-plate/闽BR0181_89843_000.jpg的预测结果为闽BR0181,预测正确
../test-plate/闽C588Z6_179979_000.jpg的预测结果为闽C588Z6,预测正确
../test-plate/闽JH3118_103539_000.jpg的预测结果为闽JH3118,预测正确
../test-plate/陕AH5G68_181022_000.jpg的预测结果为皖AH5G68,预测错误
../test-plate/鲁AQ363J_163092_000.jpg的预测结果为鲁AQ363J,预测正确
../test-plate/鲁H718LE_189842_000.jpg的预测结果为鲁H718LE,预测正确
../test-plate/鲁JYX551_161790_000.jpg的预测结果为鲁JYX551,预测正确
../test-plate/鲁MKX861_137571_000.jpg的预测结果为鲁MKX861,预测正确
../test-plate/鲁RN025G_172111_000.jpg的预测结果为鲁RN025G,预测正确
../test-plate/黑A9172D_164031_000.jpg的预测结果为粤A9172D,预测错误
99.22%

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/520381.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

bash shell 基础命令

章节目录: 一、浏览文件系统1.1 Linux 文件系统1.2 遍历目录 二、列出文件和目录三、处理文件3.1 创建文件3.2 复制文件3.3 命令行补全3.4 链接文件3.5 文件重命名3.6 删除文件 四、管理目录4.1 创建目录4.2 删除目录 五、查看文件内容5.1 查看文件类型5.2 查看整个…

【Linux】Linux编辑神器vim的使用

目录 一、Vim的基本概念 二、Vim的基本操作 1、进入vim 2、正常模式切换至插入模式 3、插入模式切换至正常模式 4、正常模式切换至底行模式 5、退出Vim编辑器 三、Vim正常模式命令集 1、移动光标 2、删除文字 3、复制 4、替换 5、撤销 四、Vim底行模式命令集 1、列出行号 2、光…

【Linux】进程信号捕捉

前言 在【Linux】进程信号及信号产生中,我们提到,进程接收到信号,并不是立刻处理,而是在合适的时候才执行相应的动作,那合适的时候是什么时候呢,进程捕捉信号的过程究竟是怎么样的呢?本篇博客就…

Python入门(七)if语句(二)

if语句(二) 1.if语句1.1 简单的if语句1.2 if-else语句1.3 if-elif-else结构1.4 使用多个elif代码块1.5 使用多个elif代码块 2.使用if语句处理列表2.1 检查特殊元素2.2 确定列表不是空的2.3 使用多个列表 作者:xiou 1.if语句 前面我们理解了…

React Native技术探究:开发高质量的跨平台移动应用的秘诀

作为一个跨平台移动应用开发框架,React Native在开发过程中能够有效提高开发效率、降低开发成本、缩短上线时间,因此备受开发者的欢迎。然而,如何使用React Native开发出高质量的跨平台移动应用呢?本文将探究这个问题,…

(一)PUN 2基本介绍

一、开始 (一)基本简介 1.简介 Photon Unity Networking (PUN) 是一个用于多人游戏的 Unity 包。灵活的配对让您的玩家进入可以通过网络同步对象的房间。 RPC、自定义属性或“低级别”光子事件只是其中的一些功能。快速且(可选)可靠的通信是通过专用的…

选卡攻略!一分钟教你选择一款好的流量卡!

很多流量卡看似便宜,但用起来套路不少,所以,挑选一款流量卡并不是只看资费,而且要了解它的各个方面,比如:优惠期、合约期等等,今面,小编就带大家一块了解如何选择一款好的流量卡。 …

默认的HuggingFace模型

介绍 在本文中,我将探讨表征学习中常见的一种做法——使用预训练神经网络的冻结状态作为学习特征提取器。 具体而言,我感兴趣的是研究使用这些提取的神经网络特征训练的简单模型的性能与使用迁移学习初始化的微调神经网络的性能的比较。预期受众主要是数…

一款功能强大的多合一聚合支付Discuz插件,可直接替换DiscuzX 3.5自带的支付接口

源码介绍: Discuz论坛多合一聚合支付接口插件,该插件直接替换了自带的支付接口功能, 增强了支付的扩展性,自带支持支付宝、微信、QQ钱包官方支付, 以及彩虹易支付、我爱支付、虎皮椒等支付通道,并且可以…

专家共话:存力一体成“东数西算”全场景利器

从2022年2月17日正式全面启动至今,“东数西算”工程已经度过了一周年。一年多的实践探索证明,激活数据要素,推动算力成为核心生产力,离不开“存力先行”。其中,东西部存力一体化,是支撑“东数西算”全场景应…

「读书感悟系列」友者生存:与人为善的进化力量(我会解释人类善良和暴力的进化原因)...

作者 | gongyouliu 编辑 | gongyouliu ‍ 最近花了不长的时间读完了这本『友者生存:与人为善的进化力量』,由于我对进化生物学非常感兴趣,又有4年的生物学学习背景,读起来还是非常容易的,这本书算是人类进化学的科普读…

tcp cubic 与随机丢包

前面提到过一个 AIMD 的修正方法,“二次机会 MD”:首次丢包只 MD 收缩一个相对较小的比例,再次丢包时再继续收缩,直到 beta * Wmax。 效果如下图: 大意是在检测到丢包时,先 MD 一个相对小的缩放比例&…

DS215KLDCG1AZZ03A如何编写温度比例的代码?

DS215KLDCG1AZZ03A如何编写温度比例的代码&#xff1f; 可编程逻辑控制&#xff0c;简称PLC&#xff0c;由美国机械工程师迪克莫利于1年1968月<>日首次设计。PLC最初是为了减少汽车行业员工的工作量而开发的&#xff0c;从那时起&#xff0c;它们已被用于所有其他恶劣环境…

常用linux多场景查找文件的方法及对比

波哥整理了在linux中根据文件名称查文件&#xff0c;根据文件内容查找文件&#xff0c;根据进程号查找文件的方法及命令详细解释。 一、find命令 find命令可以在指定目录下查找文件&#xff0c;其语法如下&#xff1a; find <目录> <选项> <匹配模式> 选项和…

vue-4:注册组件,组件传参,特殊属性ref $parent $root,透传,内置组件,自定义指令,mixins混入

注册组件&#xff0c;使用组件&#xff08;项目中都是写component中&#xff09; 为什么用组件&#xff1a;组件可以复用&#xff0c;每一个组件都是独立的&#xff0c;模板&#xff0c;数据&#xff0c;css样式互不影响 全局注册组件component&#xff1a;请勿滥用全局组件in…

一个打通基于XML管理Bean

目录 准备工作 添加依赖 引入配置文件 获取bean ①方式一&#xff1a;根据id获取 ②方式二&#xff1a;根据类型获取 ③方式三&#xff1a;根据id和类型 ④注意的地方 ⑤扩展知识 依赖注入之setter注入 ①创建学生类Student ②配置bean时为属性赋值 ③测试 依赖注…

Powerlink协议在嵌入式linux上的移植和主从站通信(电脑和linux板通信实验)

使用最新的openPOWERLINK 2.7.2源码&#xff0c;业余时间搞定了Powerlink协议在嵌入式linux上的移植和测试&#xff0c;并进行了下电脑和linux开发板之间的通信实验。添加了一个节点配置&#xff0c;跑通了源码中提供的主站和从站的两个demo。这里总结下移植过程分享给有需要的…

飞桨EasyDL月刊:4月功能全新升级,模型训练步骤缩短63%

亲爱的开发者&#xff1a; 近来以生成式 AI、多模态预训练大模型为代表的技术变革正席卷全球&#xff0c;与此相关的智能化工具和平台陆续发布。飞桨 EasyDL 和 BML 位于文心全景图的工具与平台层&#xff0c;提供大模型开发套件及多种建模方式&#xff0c;全面支持基于大模型能…

访客接入-唯一客服系统文档中心

网站可以通过多种方式接入客服系统&#xff0c;直接跳转链接&#xff0c;或者在页面右下角弹窗 访客链接 可以在自己的网站接入&#xff0c;访客独立链接&#xff0c;入口形式可以完全自己写&#xff0c;只是跳转链接。 例如下面的访客链接https://gofly.v1kf.com/chatIndex?k…

Angular开发之——安装Angular CLI并初始化项目(02)

一 概述 Angular CLI介绍及开发环境准备安装Angular CLI开发工具使用Angular CLI初始化Angular项目简单体验Angular 二 Angular CLI介绍及开发环境准备 2.1 Angular CLI介绍 目前&#xff0c;无论你使用什么前端框架&#xff0c;都必须要使用到各种NodeJS工具&#xff0c;An…