Raspberry Pi學習筆記(二十七):在Pi上執行YOLOv3

Source: Deep Learning on Medium

darknet-nnpack : 針對Arm處理器進行優化,使用YOLOv3-tiny模型進行辨識只要 1~1.2秒左右,而且不用任何額外的GPU

安裝

sudo apt install ninja-build
sudo apt install clang
sudo pip3 install --upgrade git+https://github.com/Maratyszcza/PeachPy
sudo pip3 install --upgrade git+https://github.com/Maratyszcza/confu

編譯NNPACK-darknet

git clone https://github.com/thomaspark-pkj/NNPACK-darknet.gitconfu setup
python ./configure.py
ninja
sudo cp -a lib/* /usr/lib/
sudo cp include/nnpack.h /usr/include/
sudo cp deps/pthreadpool/include/pthreadpool.h /usr/include/
#在進行ninja這個步驟的時候盡量不要讓Pi執行其他任務,避免當機,如果當機重開後再進行ninja即可

darknet-nnpack

darknet-nnpack是進行辨識的主要程式

git clone https://github.com/thomaspark-pkj/darknet-nnpack.git
cd darknet-nnpack
make

當完成make編譯之後,我們可以透過預先訓練好的weights檔案來進行物件偵測,此版本比起AlexeyAB快上30倍(以YOLOv3-tiny為例)