Skip to content
License Plate Recognition For Car With Python And OpenCV
Python JavaScript
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Screenshots
test Add files via upload Mar 16, 2018
train chinese name to english May 8, 2018
.gitignore Initial commit Mar 16, 2018
LICENSE Initial commit Mar 16, 2018
README.md Update README.md Mar 17, 2018
config.js config file Mar 23, 2018
predict.py adaptive opencv version May 8, 2019
surface.py Update surface.py Mar 17, 2018
svm.dat new one May 26, 2018
svmchinese.dat init project Mar 16, 2018

README.md

License-Plate-Recognition

License Plate Recognition For Car With Python And OpenCV

用python3+opencv3做的中国车牌识别,包括算法和客户端界面,只有2个文件,surface.py是界面代码,predict.py是算法代码,界面不是重点所以用tkinter写得很简单。

使用方法:

版本:python3.4.4,opencv3.4和numpy1.14和PIL5
下载源码,并安装python、numpy、opencv的python版、PIL,运行surface.py即可

算法实现:

算法思想来自于网上资源,先使用图像边缘和车牌颜色定位车牌,再识别字符。车牌定位在predict方法中,为说明清楚,完成代码和测试后,加了很多注释,请参看源码。车牌字符识别也在predict方法中,请参看源码中的注释,需要说明的是,车牌字符识别使用的算法是opencv的SVM, opencv的SVM使用代码来自于opencv附带的sample,StatModel类和SVM类都是sample中的代码。SVM训练使用的训练样本来自于github上的EasyPR的c++版本。由于训练样本有限,你测试时会发现,车牌字符识别,可能存在误差,尤其是第一个中文字符出现的误差概率较大。源码中,我上传了EasyPR中的训练样本,在train\目录下,如果要重新训练请解压在当前目录下,并删除原始训练数据文件svm.dat和svmchinese.dat。

额外说明:算法代码只有500行,测试中发现,车牌定位算法的参数受图像分辨率、色偏、车距影响,有的车型识别效果有待提高。
有任何疑问请邮件至 wzh191920@sina.com
界面效果:

You can’t perform that action at this time.