实例演示
用例介绍,目前为用户提供了c/c++/python三种编程语言覆盖预处理推理接口用例。 示例目录命名规则:编程语言+解码模块+预处理模块+推理接口模块
ssd300示例目录
软件流程
编程接口语言
运行环境
cpp_cv_cv_bmrt
opencv解码 (BGR输出)+ opencv预处理 + inference + 后处理
C / C++
soc/pcie/cmodel
cpp_cv_bmcv_bmrt
opencv解码(yuv i420输出)+ bmcv预处理 + inference + 后处理
C / C++
soc
cpp_cv_cv+bmcv_bmrt
opencv解码(yuv i420输出)+ cv::bmcv预处理 + bmcv预处理 + inference + 后处理
C / C++
soc
cpp_ffmpeg_bmcv_bmrt
ffmpeg解码 (yuv压缩输出)+ bmcv预处理 + inference + 后处理
C / C++
soc/pcie
cpp_multi_bmcv_bmrt
多线程性能测试用例 ffmpeg/opencv解码+cv+bmcv+inference+后处理+jpg编码
C / C++
soc
cpp_cv_cv+bmcv_sail
opencv解码(yuv i420输出)+ cv::bmcv预处理 + bmcv预处理 + inference + 后处理
C++
soc
cpp_cv_bmcv_sail
opencv解码(yuv i420输出)+ bmcv预处理 + inference + 后处理
C++
soc
cpp_ffmpeg_bmcv_sail
ffmpeg解码 (yuv压缩输出)+ bmcv预处理 + inference + 后处理
C++
soc/pcie
py_ffmpeg_bmcv_sail
ffmpeg解码 (yuv压缩输出)+ bmcv预处理 + inference + 后处理
python
soc/pcie
本章主要用cpp_cv_bmcv_bmrt和cpp_ffmpeg_bmcv_bmrt,和cpp_cv_cv_bmrt三个用例来做以下三种模式下的编译运行演示。以下示例演示默认用户已经按照第三章内容进行了bmodel的转换。
soc模式用例演示
pcie模式用例演示
cmodel模式用例演示
SOC模式用例演示
解压sdk开发包并运行docker开发环境,本实例都基于此docker环境
$ tar –zxf bmnnsdk2d-bm1684_v2.0.1.tar.gz $ cd bmnnsdk2-bm1684_v2.0.1 $ ./docker_run_bmnnsdk.sh # cd scritps # ./install_lib.sh nntc
实例代码编译:
# cd ../examples/SSD_object/cpp_cv_bmcv_bmrt/ # make -f Makefile.arm clean && make -f Makefile.arm # make -f Makefile.arm install
将install目录拷贝到soc单板进行测试:
**根据第三章转换的bmodel进行测试** **"SOC_BOARD_IP"字符串替换为实际的soc单板ip地址** # scp -r /workspace/install linaro@SOC_BOARD_IP:/data/ # exit $ ssh linaro@SOC_BOARD_IP $ cd /data/install **float32模型测试** $ sudo ./bin/ssd300_cv_bmcv_bmrt.arm image res/ssd300/vehicle_1.jpg model/ssd300/fp32_ssd300.bmodel 1 **int8模型测试** $ sudo ./bin/ssd300_bmcv_object.arm image res/ssd300/vehicle_1.jpg model/ssd300/int8_ssd300.bmodel 1
PCIE模式用例演示
解压sdk开发包并运行docker开发环境,本示例都基于此docker环境
$ tar –zxf bmnnsdk2d-bm1684_v2.0.1.tar.gz $ cd bmnnsdk2-bm1684_v2.0.1/scripts $ sudo ./install_driver_pcie.sh && cd .. $ ./docker_run_bmnnsdk.sh # cd scritps # ./install_lib.sh nntc # source envsetup_pcie.sh && cd .. # cd lib/ffmpeg/x86 && export LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH && cd ../../../ # cd lib/decode/x86 && export LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH && cd ../../../ # cd examples/sail/python3/x86 && pip3 install sophon-2.0.*-py3-none-any.whl
实例代码编译及运行
# cd ../examples/SSD_object/cpp_ffmpeg_bmcv_bmrt/ # make -f Makefile.pcie clean && make -f Makefile.pcie # make -f Makefile.pcie install # cd ../../../install **float32模型测试** # ./bin/ssd300_cv_cv_bmrt.pcie image res/ssd300/vehicle_1.jpg model/ssd300/fp32_ssd300.bmodel 1 **int8模型测试** # ./bin/ssd300_cv_cv_bmrt.pcie image res/ssd300/vehicle_1.jpg model/ssd300/int8_ssd300.bmodel 1
pcie状态监控
$ bm-smi 此命令用于检测pcie工作状态,tpu,mem使用率, 板卡温度等
CMODEL模式用例演示
解压sdk开发包并运行docker开发环境,本示例都基于此docker环境 $ tar –zxf bmnnsdk2d-bm1684_v2.0.1.tar.gz
$ tar –zxf bmnnsdk2d-bm1684_v2.0.1.tar.gz $ cd bmnnsdk2-bm1684_v2.0.1 $ ./docker_run_bmnnsdk.sh # cd scritps # ./install_lib.sh nntc && cd ..
实例代码编译及运行
# cd examples/SSD_object/cpp_cv_cv_bmrt/ # make -f Makefile.x86 clean && make -f Makefile.x86 # make -f Makefile.arm f32 此用例测试了float 32模型示例,运行成功会保存如下图片检测结果: out-0_vehicle_1.jpg
打包和发布
待补充
FAQ
待补充
附录
BMNNSDK2-bm1684用户手册
Copyright © 2018 Bitmain Technologies. All Rights Reserved. 北京比特大陆科技有限公司
Last updated
Was this helpful?