文章目錄
- 環境依賴
- 編譯
- 測試
- 總結
環境依賴
軟件 | 版本 | 說明 | 獲取方式 |
---|---|---|---|
mxVision | 5.0.RC2 | mxVision軟件包 | 獲取方式 |
Ascend-CANN-toolkit | 6.2.RC2 | Ascend-cann-toolkit開發套件包 | 獲取方式 |
Ubuntu | 22.04 |
代碼倉庫地址:
https://gitee.com/ascend/ascend_community_projects/tree/310B/HelmetIdentification_V2
鏡像版本:
編譯
獲取模型:https://gitee.com/link?target=https%3A%2F%2Fmindx.sdk.obs.cn-north-4.myhuaweicloud.com%2Fmindxsdk-referenceapps%2520%2Fcontrib%2FHelmetIdentification%2Fmodel.zip
解壓 model.zip 并將onnx文件移到項目的model目錄下:
轉換模型:注意,這里沒有采用源碼中的atc-env.sh
轉換腳本的方式。
配置環境變量:
source /usr/local/Ascend/ascend-toolkit/set_env.sh
source /usr/local/Ascend/mxVision-5.0.RC2/set_env.sh
轉模型:
cd ~/HelmetIdentification_V2/model
atc --model=./YOLOv5_s.onnx --framework=5 --output=YOLOv5_s --insert_op_conf=./aipp_YOLOv5.config --input_format=NCHW --log=info --soc_version=Ascend310B1 --input_shape="images:1,3,640,640"
執行完以上命令行,model
目錄下會出現om
模型
修改CMakeList.txt
cd ~/HelmetIdentification_V2/src
將24
行和35
行改為 /usr/local/Ascend/ascend-toolkit/latest/aarch64-linux
目錄下的include
和lib64
目錄,這里需要修改為自己的toolkit
目錄
編譯準備
更新安裝庫文件
apt-get update
apt-get install -y libavformat-dev
建立三個庫的軟軟鏈接
ln -s /usr/lib/aarch64-linux-gnu/libavcodec.so.58 /usr/lib/aarch64-linux-gnu/libavcodec.so
ln -s /usr/lib/aarch64-linux-gnu/libavutil.so.56 /usr/lib/aarch64-linux-gnu/libavutil.so
ln -s /usr/lib/aarch64-linux-gnu/libavformat.so.58 /usr/lib/aarch64-linux-gnu/libavformat.so
由于代碼提供了對video
和image
的不同main.cpp
,這里我們選用video
的。將兩個文件備份后,留下main.cpp
cd ~/HelmetIdentification_V2/src
rm main-image.cpp
cd ..
mkdir build_video
cd build_video
cmake ..
make -j4
至此,會在~/HelmetIdentification_V2
目錄下生成main
可執行文件
測試
在HelmetIdentification_V2
文件夾下,需要新建result
文件夾以及內部的one、two
兩個文件夾用于存放結果
cd ~/HelmetIdentification_V2
mkdir result
cd result
mkdir one
mkdir two
退回到HelmetIdentification_V2
文件夾,運行如下命令
./main test_person.h264 1920 1080
1920 1080
為輸入視頻的寬高
結果圖片保存在HelmetIdentification_V2/result
文件夾中,文件夾one
保存第一路輸入的結果,文件夾two
保存第二路輸入的結果。
輸出樣例為:
紅框標出的應該是未佩戴安全帽的信息。
總結
本篇文章可以算是昇騰系列的一個入門樣例,跑通了應該就能知道大概的操作流程,接下來應該又是一段難忘的開發心路歷程,希望自己挺住!!!
參考文檔:
https://gitee.com/ascend/ascend_community_projects/tree/310B/HelmetIdentification_V2
https://zhuanlan.zhihu.com/p/652517700
如果閱讀本文對你有用,歡迎點贊收藏呀!!!
2023年11月24日14:55:12