携手创造,共同生长!这是我参加「日新计划 8 月更文应战」的第23天,点击检查活动详情
NanoDetPlus Python布置示例
在布置前,需确认以下两个过程
-
- 软硬件环境满足要求,参阅FastDeploy环境要求
-
- FastDeploy Python whl包装置,参阅FastDeploy Python装置
本目录下提供infer.py
快速完结NanoDetPlus在CPU/GPU,以及GPU上经过TensorRT加速布置的示例。执行如下脚本即可完结
#下载布置示例代码
git clone https://github.com/PaddlePaddle/FastDeploy.git
cd examples/vison/detection/nanodet_plus/python/
#下载NanoDetPlus模型文件和测试图片
wget https://bj.bcebos.com/paddlehub/fastdeploy/nanodet-plus-m_320.onnx
wget https://gitee.com/paddlepaddle/PaddleDetection/raw/release/2.4/demo/000000014439.jpg
# CPU推理
python infer.py --model nanodet-plus-m_320.onnx --image 000000014439.jpg --device cpu
# GPU推理
python infer.py --model nanodet-plus-m_320.onnx --image 000000014439.jpg --device gpu
# GPU上运用TensorRT推理
python infer.py --model nanodet-plus-m_320.onnx --image 000000014439.jpg --device gpu --use_trt True
运转完结可视化成果如下图所示
NanoDetPlus Python接口
fastdeploy.vision.detection.NanoDetPlus(model_file, params_file=None, runtime_option=None, model_format=Frontend.ONNX)
NanoDetPlus模型加载和初始化,其间model_file为导出的ONNX模型格局
参数
- model_file(str): 模型文件途径
- params_file(str): 参数文件途径,当模型格局为ONNX格局时,此参数无需设定
- runtime_option(RuntimeOption): 后端推理配置,默以为None,即选用默许配置
- model_format(Frontend): 模型格局,默以为ONNX
predict函数
NanoDetPlus.predict(image_data, conf_threshold=0.25, nms_iou_threshold=0.5)
模型预测结口,输入图像直接输出检测成果。
参数
- image_data(np.ndarray): 输入数据,留意需为HWC,BGR格局
- conf_threshold(float): 检测框相信度过滤阈值
- nms_iou_threshold(float): NMS处理过程中iou阈值
返回
返回
fastdeploy.vision.DetectionResult
结构体,结构体说明参阅文档视觉模型预测成果
类成员属性
预处理参数
用户可按照自己的实践需求,修正下列预处理参数,从而影响终究的推理和布置作用
- size(list[int]): 经过此参数修正预处理过程中resize的巨细,包括两个整型元素,表明[width, height], 默许值为[320, 320]
- padding_value(list[float]): 经过此参数能够修正图片在resize时分做填充(padding)的值, 包括三个浮点型元素, 别离表明三个通道的值, 默许值为[0, 0, 0]
- keep_ratio(bool): 经过此参数指定resize时是否保持宽高比例不变,默许是fasle.
- reg_max(int): GFL回归中的reg_max参数,默许是7.
- downsample_strides(list[int]): 经过此参数能够修正生成anchor的特征图的下采样倍数, 包括三个整型元素, 别离表明默许的生成anchor的下采样倍数, 默许值为[8, 16, 32, 64]