一、EasyPR介绍
EasyPR是一个开源的中文车牌识别系统,其目标是成为一个简单、高效、准确的非限制场景(unconstrained situation)下的车牌识别库。
二、准备工作
根据EasyPR作者的使用说明文档,Windows下环境要求为:
EasyPR源码下载——EasyPR源码下载地址
Opencv下载——Opencv-3.1.0下载地址
软件环境配置——VS2013下载地址
三、安装OpenCV SDK
1、下载完后得到文件opencv-3.1.0.exe,双击后会提示解压到指定目录,这里我解压到D盘。
点击Extract开始解压
2、配置系统环境变量
【打开控制面板】
⟶
\longrightarrow
⟶【系统与安全】
⟶
\longrightarrow
⟶【系统】
⟶
\longrightarrow
⟶【高级系统设置】
⟶
\longrightarrow
⟶【环境变量】
⟶
\longrightarrow
⟶【系统变量】
添加刚才解压opencv-3.1.0.exe文件路径下bin文件夹的路径
**注:这里vc12表明了openCV的编译环境为VS2013。(vc14表明了openCV的编译环境为VS2015)
四、EasyPR工程文件配置
这一步的配置也是根据EasyPR作者的使用说明文档来配置的。
下载并解压EasyPR后,用VS2013打开文件下的sln文件:
里面包含两个子模块,demo和libeasypr。
1、demo包含目录添加
右键单击demo
⟶
\longrightarrow
⟶【属性】
⟶
\longrightarrow
⟶【配置属性】
⟶
\longrightarrow
⟶【VC++ 目录】
⟶
\longrightarrow
⟶【包含目录】
添加opencv的include文件
这里还得加上$(SolutionDir),不加这个后面编译会有报错
2、demo库目录添加
库目录选择VS2013对应的vc12里的lib文件夹,如下
3、demo——Debug版本的附加依赖项添加
右键单击demo
⟶
\longrightarrow
⟶【属性】
⟶
\longrightarrow
⟶【配置属性】
⟶
\longrightarrow
⟶【链接器】
⟶
\longrightarrow
⟶【输入】
⟶
\longrightarrow
⟶【附加依赖项】
修改为opencv_world310d.lib,不同版本的OpenCV修改的值不同,我这里OpenCV版本是3.1.0,所以是opencv_world310d.lib。
4、demo——Release版本的附加依赖项添加
修改为opencv_world310.lib,注意和上面的区分开来,这里310后面没有加d。
5、libeasypr包含目录添加
右键单击libeasypr
⟶
\longrightarrow
⟶【属性】
⟶
\longrightarrow
⟶【配置属性】
⟶
\longrightarrow
⟶【VC++ 目录】
⟶
\longrightarrow
⟶【包含目录】
五、编译
右键单击demo
⟶
\longrightarrow
⟶【生成】没有报错可执行下一步
【调试】
⟶
\longrightarrow
⟶【开始执行】
注: 直接双击运行程序会出现找不到opencv动态库的情况,这个时候有两个办法:
在opencv\build\x64\vc(…)\bin下找到缺失的dll放到执行目录下。
将上述bin目录添加到系统环境变量PATH中,然后重新运行程序。
我这里报错找不到opencv_world310d.dll这个文件,下面说一下我的解决方法。
- 在D:\opencv\build\x64\vc12\bin路径下找到opencv_world310d.dll文件。
- 将该文件复制到执行目录下EasyPR-master\x64\Debug,重新运行程序。
成功运行代码!!!
最后附上作者的博客——计算机的潜意识,作者在博客里面详细地写了EasyPR车牌识别的原理。在此感谢EasyPR作者的无私奉献!!!