Python例程
目录
python目录下提供了一系列Python例程,具体情况如下:
| 序号 | Python例程 | 说明 |
|---|---|---|
| 1 | slowfast_opencv.py | 使用OpenCV解码、OpenCV前处理、SAIL推理 |
如果您在x86/arm平台安装了PCIe加速卡(如SC系列加速卡),并使用它测试本例程,您需要安装libsophon、sophon-opencv、sophon-ffmpeg和sophon-sail,具体请参考x86-pcie平台的开发和运行环境搭建或arm-pcie平台的开发和运行环境搭建。
此外您可能还需要安装其他第三方库:
pip3 install opencv-python-headless如果您使用SoC平台(如SE、SM系列边缘设备),并使用它测试本例程,刷机后在/opt/sophon/下已经预装了相应的libsophon、sophon-opencv和sophon-ffmpeg运行库包。您还需要交叉编译安装sophon-sail,具体可参考交叉编译安装sophon-sail。
此外您可能还需要安装其他第三方库:
pip3 install opencv-python-headless注:
上述命令安装的是公版opencv,如果您希望使用sophon-opencv,可以设置如下环境变量:
export PYTHONPATH=$PYTHONPATH:/opt/sophon/sophon-opencv-latest/opencv-python/若使用sophon-opencv需要保证python版本小于等于3.8。
python例程不需要编译,可以直接运行,PCIe平台和SoC平台的测试参数和运行方式是相同的。
usage: slowfast_opencv.py [--input INPUT_PATH] [--bmodel BMODEL] [--dev_id DEV_ID]
--input: 测试数据路径,格式:文件夹/类别(二级目录)/视频;
--bmodel: 用于推理的bmodel路径,默认使用stage 0的网络进行推理;
--dev_id: 用于推理的tpu设备id;
--classnames: 数据集类别文件。测试实例如下,对Kinetics400视频数据集的一个子集进行测试。
python3 python/slowfast_opencv.py --input datasets/test --bmodel models/BM1684X/slowfast_bm1684x_fp32_1b.bmodel --dev_id 0 --classnames datasets/kinetics_classnames.txt测试结束后,会打印预测结果、推理时间等信息,并将预测结果保存在./results/slowfast_bm1684x_fp32_1b.bmodel_opencv_python.json中。
INFO:root:result saved in ./results/slowfast_bm1684x_fp32_1b.bmodel_opencv_python.json
INFO:root:decode_time(ms): 43.18
INFO:root:preprocess_time(ms): 126.90
INFO:root:inference_time(ms): 281.32
INFO:root:postprocess_time(ms): 0.24
all done.