【EasyPR】Linux安装使用EasyPR开源车牌识别系统
【EasyPR】Linux安裝使用EasyPR開源車牌識別系統
零、安裝OpenCV - 3.2.0
我使用的是Kali系統,基于Debian的一個Linux發行版本。
1.配置系統的軟件源(配置正確可跳過)
–參考阿里云開發者網站:https://developer.aliyun.com/mirror/kali
修改源列表
執行命令
按i鍵編輯,添加阿里云給出的鏡像地址,或者直接把內容替換成下面的內容:
deb https://mirrors.aliyun.com/kali kali-rolling main non-free contrib deb-src https://mirrors.aliyun.com/kali kali-rolling main non-free contrib按Esc鍵退出編輯模式,輸入
:wq回車,保存并退出。
更新
執行命令以更新源
更新軟件(可選,無必要不建議)
sudo apt-get upgrade2.安裝cmake程序
檢查安裝
首先查看下系統安裝了沒有
如果沒有版本信息,則到官網下載或者直接用軟件源安裝。版本必須大于2.8.7。
軟件源安裝(推薦)
輸入命令:
用上文所述方法檢查版本,正常即可,否則可以用以下方法手動編譯安裝。
手動安裝:下載
– 下載地址:https://cmake.org/download/
這里我使用3.13.2版本的cmake
手動安裝:編譯安裝
解壓下載得到的文件
進入到解壓目錄
cd cmake-3.13.2配置
./bootstrap --prefix=$HOME/local編譯安裝
make && make install手動安裝:檢查安裝
- 設置環境
- 檢查版本
- 出現版本信息則安裝成功!
3.配置pkg-config環境
軟件源安裝
執行命令:
或者手動安裝:
下載pkg-config
這里我使用的是pkg-config的0.29.2版本
– pkg-config官網:https://www.freedesktop.org/wiki/Software/pkg-config/
下載
wget http://pkgconfig.freedesktop.org/releases/pkg-config-0.29.2.tar.gz解壓
tar -zxvf pkg-config-0.29.2.tar.gz進入解壓目錄
cd pkg-config-0.29.2依次執行下面的命令
./configure make make check sudo make install如果第一條報錯,把第一條換成
./configure --with-internal-glib如果第三條報錯,把路徑改為全英文并且重新解壓執行,并在第三條命令前加上sudo再執行。
安裝檢查
pkg-config --version正常輸出版本號0.29.2即安裝成功!
3.安裝其他依賴
通過軟件源安裝libopenexr-dev:
sudo apt-get install libopenexr-dev4.配置開發環境OpenCV - 3.2.0
這邊EasyPR使用的是OpenCV - 3.2.0,我們也配置同樣的開發環境。
下載OpenCV - 3.2.0
– 下載地址:https://github.com/Itseez/opencv/archive/3.2.0.zip(普通用戶建議使用聯通的網絡,此時親測更快)
wget https://github.com/Itseez/opencv/archive/3.2.0.zip下載好之后解壓
使用unzip解壓,沒有unzip的先安裝unzip。
unzip安裝
解壓
unzip opencv-3.2.0.zip進入opencv目錄
cd opencv-3.2.0創建release目錄
有博客稱在release目錄下編譯有錯,在opencv-3.2.0目錄下沒有,我是在release目錄下編譯的,沒錯,反而在opencv-3.2.0目錄下編譯有錯。
進入進入release目錄
安裝OpenCV時,所有的文件都會被放到這個release目錄下
使用cmake編譯OpenCV的源碼,安裝到/usr/local/目錄下
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local/ ..如果出現這個錯誤:
/usr/include/c++/7/cstdlib:75:15: fatal error: stdlib.h: 沒有那個文件或目錄把命令替換成
cmake -D CMAKE_BUILD_TYPE=RELEASE -D ENABLE_PRECOMPILED_HEADERS=OFF -D CMAKE_INSTALL_PREFIX=/usr/local/opencv3.1.0 ..安裝
sudo make install -j7如果出現這個錯誤:
make[2]: *** [modules/python3/CMakeFiles/opencv_python3.dir/build.make:180:modules/python3/CMakeFiles/opencv_python3.dir/__/src2/cv2.cpp.o] 錯誤 1 make[1]: *** [CMakeFiles/Makefile2:6687:modules/python3/CMakeFiles/opencv_python3.dir/all] 錯誤 2 make: *** [Makefile:163:all] 錯誤 2看輸出發現原因其實是這個:
/home/minuy/download/opencv-3.2.0/modules/python/src2/cv2.cpp:730:34: error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive] 730 | char* str = PyString_AsString(obj);解決方法:
編輯 opencv-3.2.0/modules/python/src2/cv2.cpp 文件,更改第730行:
再重新編譯安裝就好了。
一、安裝EasyPR
1.下載EasyPR
可以直接到gitee上點擊“克隆/下載”按鈕以下載
–地址:https://gitee.com/easypr/EasyPR
也可以輸入以下命令來克隆倉庫到本地:
git clone https://gitee.com/easypr/EasyPR.git2.修改cmake配置文件
為了避免系統中安裝的老版本opencv對編譯的影響,需要在 CMakeLists.txt 中修改:
set(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} "/usr/local/opt/opencv3")路徑指向opencv3的安裝目錄,該目錄下應該有OpenCV的CMake配置文件。
例如,我的opencv的源碼目錄是/home/minuy/download/opencv-3.2.0
則修改為
3.編譯
進入到EasyPR的目錄:
cd EasyPR直接執行命令:
./build.sh如果出現這個錯誤:
make[2]: *** [CMakeFiles/easypr.dir/build.make:141:CMakeFiles/easypr.dir/src/core/plate_judge.cpp.o] 錯誤 1 make[1]: *** [CMakeFiles/Makefile2:73:CMakeFiles/easypr.dir/all] 錯誤 2 make[1]: *** 正在等待未完成的任務.... [ 48%] Linking CXX static library libthirdparty.a [ 48%] Built target thirdparty make: *** [Makefile:84:all] 錯誤 2解決方法:
修改EasyPR/include/easypr/config.h文件的第四行:
出現[100%] Built target demo之后即編譯成功!
二、測試
直接運行dome
./demo輸出以下信息:
EasyPR Option: 1. 測試; 2. 批量測試(推薦); 3. SVM訓練; 4. ANN訓練; 5. 中文字符訓練; 6. 生成字符; 7. 感謝名單; 8. 退出; 請選擇一項操作:測試時出現以下錯誤
test_plate_locate OpenCV Error: Unspecified error (The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script) in cvShowImage, file /home/minuy/download/opencv-3.2.0/modules/highgui/src/window.cpp, line 583 terminate called after throwing an instance of 'cv::Exception' what(): /home/minuy/download/opencv-3.2.0/modules/highgui/src/window.cpp:583: error: (-2) The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script in function cvShowImage解決方法:
安裝libgtk2.0-dev和pkg-config:
安裝時出現以下錯誤
下列軟件包有未滿足的依賴關系: libc6-dev : 破壞: libgcc-9-dev (< 9.3.0-5~) 但是 9.2.1-22 正要被安裝 E: 錯誤,pkgProblemResolver::Resolve 發生故障,這可能是有軟件包被要求保持現狀的緣故。解決方法:
執行以下命令,過程提示全選同意:
然后再重新安裝libgtk2.0-dev和pkg-config,安裝好之后重新編譯OpenCV-3.2.0(之前的工具可能失效,需要重新安裝,下面的命令里有重新安裝)
即依次執行以下命令:
然后再重新編譯一下EasyPR即可。
三、總結
參考資料:
- cmake https://blog.csdn.net/alw2009/article/details/85345715
- OpenCV https://www.cnblogs.com/wycBlog/p/7217498.html
- pkg-config https://www.bilibili.com/read/cv5651011
- glib-2.0>=2.16錯誤 https://blog.csdn.net/alading2009/article/details/20039281
- 沒有頭文件錯誤 https://blog.csdn.net/renweiyi1487/article/details/104160879
- cv2.cpp編譯錯誤 https://blog.csdn.net/qq_44357371/article/details/105966714
- config.h編譯錯誤 https://github.com/liuruoze/EasyPR
- 測試安裝出錯 https://www.cnblogs.com/awakenedy/articles/13446982.html
總結
以上是生活随笔為你收集整理的【EasyPR】Linux安装使用EasyPR开源车牌识别系统的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C# Excel处理工具
- 下一篇: [笔记]Go语言写文件几种方式性能对比