代碼倉庫
1、碼云Gitee:https://gitee.com/yangkun_monster/raspberrypi-License-Plate-Recognition
2、Github:https://github.com/pifan-open-source-community/raspberrypi-License-Plate-Recognition
視頻教程地址:
嗶哩嗶哩bilibili:樹莓派愛好者基地
人工智能車牌識別,該項目主要用車牌識別算法對圖像或視頻中的車牌進行識別。首先進行車牌區域檢測,然后將檢測后的圖像區域進行文本識別操作,反饋車牌的識別結果的同時將車牌區域進行框選,并將識別結果顯示在對應車輛上方,后期移植在樹莓派上進行實時視頻流的車牌檢測和識別。
前期:主要考慮PC端性能,并盡可能優化模型大小,訓練可采用GPU,但調用模型測試的時候用CPU運行,測試幀率和準確性(測試10張左右圖像的運行時間取平均值或實時視頻流的幀率)。
車牌識別方案?后期:部署在樹莓派端,在本地進行USB攝像頭實時視頻流的車牌識別。
編程語言: python。
Demo展示:輸入單張圖像或USB攝像頭實時視頻流,在顯示器上顯示出識別的結果(區域框選+識別結果)。
EasyPR是一個中文的開源車牌識別系統,其目標是成為一個簡單、靈活、準確的車牌識別引擎。
相比于其他的車牌識別系統,EasyPR有如下特點:
下載樹莓派官方鏡像
http://raspberrypi.org/software/operating-systems/
版本Raspberry Pi OS with desktop and recommended software
下載后并解壓縮
然后燒錄鏡像燒錄系統。這里如果不會可以查看樹莓派愛好者基地之前的視頻教程,哈哈哈哈哈。
輸入命令
sudo nano /etc/apt/sources.list
將其他源 前面加上 # 注釋掉
下面粘貼科大源
deb http://mirrors.ustc.edu.cn/raspbian/raspbian/ buster main contrib non-free rpi
輸入 ctrl+o 回車保存,再ctrl+x 退出
輸入命令
sudo apt-get update
sudo apt-get install cmake
檢查版本
cmake -version
出現版本信息則安裝成功!
下載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 --with-internal-glib
make
make check
sudo make install
如果第三條報錯,把路徑改為全英文并且重新解壓執行,并在第三條命令前加上sudo再執行。)
通過軟件源安裝libopenexr-dev
sudo apt-get install libopenexr-dev
下載OpenCV - 3.2.0
wget https://github.com/Itseez/opencv/archive/3.2.0.zip
使用unzip解壓,沒有unzip的先安裝unzip。
sudo apt-get install unzip
解壓
unzip 3.2.0.zip
進入opencv目錄
cd opencv-3.2.0
創建release目錄
mkdir release
進入release目錄,安裝OpenCV時,所有的文件都會被放到這個release目錄下
cd release
使用cmake編譯OpenCV的源碼,安裝到/usr/local/目錄下
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local/ ..
編譯安裝
make
sudo make install
如果出現此錯誤:
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
解決方法:
編輯 opencv-3.2.0/modules/python/src2/cv2.cpp 文件,更改第730行:
bool pyopencv_to(PyObject* obj, String& value, const char* name)
{ (void)name; if(!obj || obj == Py_None) return true; char* str = (char *)PyString_AsString(obj);//這是文件的第730行,更改這行,在=后面加(char *)if(!str) return false; value = String(str); return true;
再重新編譯安裝就好了。
在樹莓派愛好者基地微信公眾號發送【EasyPR】就可以獲得壓縮包。
解壓后上傳到/home/pi目錄下。
進入到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文件的第四行:
#ifndef EASYPR_CONFIG_H_
#define EASYPR_CONFIG_H_ #define CV_VERSION_THREE_TWO//修改這一行,將#define CV_VERSION_THREE_ZERO改為#define CV_VERSION_THREE_TWO
再編譯,出現[100%] Built target demo之后即編譯成功!
測試直接運行dome
./demo
輸出以下信息:
EasyPR Option:
1. 測試;
2. 批量測試(推薦);
3. SVM訓練;
4. ANN訓練;
5. 中文字符訓練;
6. 生成字符;
7. 感謝名單;
8. 退出;
請選擇一項操作:
選擇“2批量測試”,可進行多張照片識別。
可以在EasyPR/resources/image目錄下對general_test和native_test這兩個文件夾中的照片進行替換,換成自己的車牌照片。
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态