python目录下提供了一系列Python例程,具体情况如下:
序号 | Python例程 | 说明 |
---|---|---|
1 | segformer_opencv.py.py | 使用OpenCV解码、OpenCV前处理、SAIL推理 |
2 | segformer_bmcv.py | 使用SAIL解码、BMCV前处理、SAIL推理 |
如果您在x86/arm平台安装了PCIe加速卡(如SC系列加速卡),并使用它测试本例程,您需要安装libsophon、sophon-opencv、sophon-ffmpeg和sophon-sail,具体请参考x86-pcie平台的开发和运行环境搭建或arm-pcie平台的开发和运行环境搭建。
此外您可能还需要安装其他第三方库:
pip3 install terminaltables
如果您使用SoC平台(如SE、SM系列边缘设备),并使用它测试本例程,刷机后在/opt/sophon/
下已经预装了相应的libsophon、sophon-opencv和sophon-ffmpeg运行库包。您还需要交叉编译安装sophon-sail,具体可参考交叉编译安装sophon-sail。
此外您可能还需要安装其他第三方库:
pip3 install terminaltables
python例程不需要编译,可以直接运行,PCIe平台和SoC平台的测试参数和运行方式是相同的。
segformer_opencv.py和segformer_bmcv.py的命令参数相同,以segformer_opencv.py的推理为例,参数说明如下:
usage:segformer_opencv.py [--input IMG_PATH] [--bmodel BMODEL] [--dev_id DEV_ID]
--input: 推理图片路径,可输入整个图片文件夹的路径;
--bmodel: 用于推理的bmodel路径,默认使用stage 0的网络进行推理;
--dev_id: 用于推理的tpu设备id。
图片测试实例如下,支持对整个图片文件夹进行测试。
# 测试整个文件夹
python3 python/segformer_opencv.py --input datasets/cityscapes --bmodel models/BM1684/segformer.b0.512x1024.city.160k_fp32_1b.bmodel --dev_id 0
测试结束后,会将预测结果保存在results/
推理时间等信息。