define的基本用法easypr最新Linux,EasyPR的基本使⽤
1、easypr下载运⾏
# cd EasyPR
进⼊⼯程⽂件 我们可以看到很多的⽂件,现在应该注意 build.sh 与 这两个⽂件就ok了。
#
加⼊set( OpenCV_DIR "/home/andy/opencv-3.2.0/build") 注意,这⾥的opencv路径是⾃⼰安装时候的路径
如果现在运⾏ #./build.sh 会编译到⼀半报错、
对于上⾯这个问题需要按照提⽰的错误去 在github上看到⼀个答案解决了这个问题 : Opencv3.2版本的⽀持,编译前仅需要将config.h中将#define CV_VERSION_THREE_ZERO改为#define CV_VERSION_THREE_TWO即可。
2、在Linux下安装EasyPr遇到的问题:
easypr/src/util/kv.cpp:11: void easypr::Kv::load(const string&): Assertion `reader‘ failed.
解决⽅案:
在include/easypn/config.h中将相对地址全部修改为绝对地址
static const char* kDefaultSvmPath = "/home/mxy/qt_code/easypr5/model/l";
static const char* kLBPSvmPath = "/home/mxy/qt_code/easypr5/model/l";
static const char* kHistSvmPath = "/home/mxy/qt_code/easypr5/model/l";
static const char* kDefaultAnnPath = "/home/mxy/qt_code/easypr5/l";
static const char* kChineseAnnPath = "/home/mxy/qt_code/easypr5/model/l";
static const char* kGrayAnnPath = "/home/mxy/qt_code/easypr5/l";
//This is important to for key transform to chinese
static const char* kChineseMappingPath = "/home/mxy/qt_code/easypr5/model/province_mapping";
若还是不⾏,则在linux下⾯的⽤cmake编译的后来把编译好的demo放进EasyPR⽂件⾥⾯再运⾏就好了
3、测试:
./demo recognize -p resources/image/chars_identify.jpg
./demo recognize -p *****
//*****是你要解析的图⽚(绝对地址,或者能够到他的地⽅)
4、怎么调⽤easyPR库
我们利⽤的是原来EasyPR的demo包的使⽤⽅法:./demo recognize -p file;这条指令是对指定的⽂件直接进⾏车牌识别,使⽤的是command_line_handler(argc, argv);函数
故⽽:
const char *a_test[4] = {"./demo","recognize","-p","./chars_recognise.jpg"};
command_line_handler(4, a_test);
只需要定义⼀个const char的数组,然后将数组传进去即可以调⽤到EasyPR的功能,即实现对指定⽂件的解析
若是遇到: Assertion `!pty()‘ failed.这个错误,
原因及解决⽅案
请⼀定好好检查图⽚读取路径有没有写对
可能错误:
1.图⽚路径写成了如下形式:C:\Users\Desktop\test\
正确的应该为:C:/Users/Desktop/test/
(在程序中斜杠‘\‘有转义字符含义)
2.图⽚路径少写了⼀个斜杠(图⽚存放在test⽂件夹中)
错误:C:/Users/Desktop/test
正确:C:/Users/Desktop/test/
(千千万万不要忘了最后⼀个斜杠,不然读取的就变成了test这个⽂件夹)
3.图⽚的格式不对!
4.图⽚的数量不⼀致!
5.路径中、⽂件夹名称都不要包含中⽂!.(编程中各种命名都尽量使⽤易懂的英⽂)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论