-
Notifications
You must be signed in to change notification settings - Fork 2k
HyperLPR的安装
HyperLPR是一个基于Python的使用深度学习针对对中文车牌识别的实现,与其他开源的车牌识别项目相比,它的检测速度和鲁棒性和多场景的适应性都要好于已有框架。我们设计了较为鲁棒的算法来完成在复杂场景下的车牌识别。
目前的车牌识别算法的Pipeline 如下
step1. 使用opencv 的 HAAR Cascade 检测车牌大致位置
step2. Extend 检测到的大致位置的矩形区域
step3. 使用类似于MSER的方式的 多级二值化 + RANSAC 拟合车牌的上下边界
step4. 使用CNN Regression回归车牌左右边界
step5. 使用基于纹理场的算法进行车牌校正倾斜
step6. 使用CNN滑动窗切割字符
step7. 使用CNN识别字符
接下来的文章会逐一的介绍本框架使用的算法流程和详细过程。
由于本项目是基于Python2开发,在未来的一段时间内,将会转为Python3开发。所以目前的版本仅支持Python2开发。所需的依赖如下:
- Keras (>2.0.0)
- Theano(>0.9) or Tensorflow(>1.1.x)
- Numpy (>1.10)
- Scipy (0.19.1)
- OpenCV(>3.0)
- scikit-image (0.13.0)
在Windows下,由于没有给Python2的tensorflow版本所以,可以选择theano和CNTK作为Keras的后端。在Windows下,推荐使用adaconda来配置环境,具体教程可以参考此文。在安装完Keras和及其backend后。
由于Numpy和Scipy在adaconda中已经集成了。接下来需要安装OpenCV
pip install opencv-python
Linux下安装较为简单,输入在bash中执行以下命令即可:
更新本地索引
sudo apt-get update
安装Python环境
sudo apt-get install python2.7 python-pip
sudo pip install numpy opencv-python scipy
sudo pip install theano
sudo pip install keras==2.0.0
Mac下安装同样很简单,Mac是自带Python2环境的,由于Mac没有自带的包管理器,如果没有安装Python环境的话,需要下载类似于Linux的包管理器HomeBrew,可以在这里参考安装。
安装Python
brew update
brew install python
sudo pip install numpy opencv-python scipy
sudo pip install theano
sudo pip install keras==2.0.0
下载HyperLPR可以使用Git(但是提前必须安装Git命令行工具)也可以从Github直接下载Zip
git clone https://github.com/zeusees/HyperLPR.git
cd HyperLPR
HyperLPR的训练好的默认模型放在model目录下,训练模型的代码暂未开源。
需要使用请将hyperlpr和model一起移动到工程目录。
接着就可以通过如下代码开始简单使用了
from hyperlpr import pipline as pp
import cv2
image = cv2.imread("filename")
image,res = pp.SimpleRecognizePlate(image)