运行
视频解码
功能介绍
通过构造VideoDecoder类实例可实现视频解码功能,解码功能配置项及各项约束与支持情况请参考VideoDecodeConfig类数据结构说明。
视频解码支持自定义输出数据格式,通过自定义回调函数传入解码功能配置项,方便用户解码后的数据,详情可参考VdecCallBacker类数据结构说明。
接口调用流程
首先根据需求定义需要的输出数据组合方式,根据组合方式参考VdecCallBacker定义回调函数传入解码功能配置项,然后实例化VideoDecoder类,最后调用decode成员函数完成解码,获取数据。
视频解码接口调用流程参考如下:
图1 视频解码接口调用流程

mxVision提供VideoDecoder类进行视频解码,关键步骤说明如下:
-
定义输出数据组合形式。
- 输出数据包含视频帧解码后得到的的Image类数据、当前解码帧的“frameId”和通道“channelId”。
- 可根据需要选择获取以上哪些数据。
-
定义输出回调函数。
- 根据要获取的数据定义回调函数,在函数内组装自定义数据。
- 回调函数输入参数固定为VideoDecodeCallBack形式,函数内可选择输出。
- 请勿在回调函数内实现过于复杂的操作,建议只进行自定义获取解码数据操作。
-
构造视频解码配置项。
配置项及各项约束与支持情况请参考VideoDecodeConfig数据结构说明。
-
实例化视频解码类。
将配置好的VideoDecodeConfig传入构造函数接口,实例化视频解码类。
-
调用decode接口对视频进行解码。
示例代码
如下提供关键步骤的代码示例,不可以直接拷贝运行,仅供参考。
import os
import numpy as np
import time
from mindx.sdk import base
from mindx.sdk.base import Image, ImageProcessor
from mindx.sdk.base import VideoDecoder, VideoDecodeConfig, VdecCallBacker
decoded_data_list = []
## 视频解码回调函数
def vdec_callback(decodedImage, channelId, frameId):
# 解码完成的Image类存入列表中
decoded_data_list.append(decodedImage)
## 初始化VdecCallBacker类并注册回调函数
vdecCallBacker = VdecCallBacker()
vdecCallBacker.registerVdecCallBack(vdec_callback)
## 初始化VideoDecodeConfig类并设置参数
vdecConfig = VideoDecodeConfig()
vdecConfig.skipInterval = 0
vdecConfig.inputVideoFormat = base.h264_main_level
vdecConfig.outputImageFormat = base.nv12
vdecConfig.width = 1920
vdecConfig.height = 1080
## 初始化VideoDecoder
videoDecoder = VideoDecoder(vdecConfig, vdecCallBacker, device_id, channel_id)
## 获取需解码视频帧文件名
srcDataList = ["frame-{}.data".format(i) for i in range(100)]
## 循环取帧解码
for i, fileName in enumerate(srcDataList):
## 读取视频帧数据存入file
file = np.fromfile(fileName, dtype='uint8')
## 视频帧数据解码
videoDecoder.decode(file, i)
父主题: 媒体数据处理
模型推理
功能介绍
使用mxVision模型推理功能通过给定输入和指定模型,进行推理获得输出结果,支持om格式的模型推理,可使用ATC工具构建的动态Batch、动态分辨率和分档动态维度模型进行推理。模型推理输入为张量Tensor类型,由用户使用mxvision提供的接口构造使用。当前mxvision提供的python接口只支持同步推理。
接口调用流程
使用模型推理前,用户需准备好输入数据以及需要加载的模型,根据模型路径或者内存方式初始化Model类,通过调用Model类的infer接口获取模型推理结果。
模型推理调用流程参考如下:
图1 模型推理接口调用流程

关键接口说明如下:
-
模型初始化。
用户需根据实际业务情况确认模型加载方式,选择从文件加载模型或从内存加载模型。如果从内存加载,需要先将模型文件读取到内存,可通过以下两种方式传入。
- 从文件加载模型,可选择直接向Model接口传入模型路径,进行初始化。
- 通过结构体ModelLoadOptV2中的“loadType”字段指定加载方式后,再传入Model接口,其中加载方式在模型方面区分从文件加载模型,还是从内存加载模型,在内存方面区分是由系统内部管理,还是由用户管理,具体可参见ModelLoadOptV2。
-
调用infer接口获取模型推理结果。
示例代码
以下为功能特性关键步骤的代码示例,不可以直接拷贝运行,仅供参考。
import numpy as np
from mindx.sdk import base
from mindx.sdk.base import Tensor, Model
## 模型推理
## 构造输入Tensor(以二进制输入为例)
## 读取前处理好的numpy array二进制数据
input_array = np.load("preprocess_array.npy")
## 构造输入Tensor类并转移至device侧
input_tensor = Tensor(input_array)
input_tensor.to_device(device_id)
## 构造输入Tensor列表
input_tensors = [input_tensor]
## 模型路径
model_path = "resnet50_batchsize_1.om"
## 初始化Model类
model = Model(modelPath=model_path, deviceId=device_id)
## 执行推理
outputs = model.infer(input_tensors)
父主题: 使用API接口方式开发(Python)
运行
运行样例前,需设置mxVison环境变量。
source {mxVison安装目录}/mxVision/set_env.sh
运行
用户准备好自己的源码文件“main.py”,以及Python运行环境。
使用python3执行文件,命令参考如下。
python3 main.py
:::note 说明
- 若程序执行出现libascendcl.so报错,请参见程序执行出现libascendcl.so报错解决。
- 若调用API参考(Python)视频解码/编码接口结束时出现core dumped现象,请参见调用API参考(Python)视频解码/编码接口结束时出现core dumped现象解决。 :::
父主题: 使用API接口方式开发(Python)
模型支持列表
模型种类 | 模型框架 | 使用后处理动态库 | 获取途径 |
|---|---|---|---|
YOLOv3 | TensorFlow | (tensorinfer框架)modelpostprocessors/libyolov3postprocess.so | |
ResNet-50 | TensorFlow | (tensorinfer框架)modelpostprocessors/libresnet50postprocess.so | |
Faster Rcnn | TensorFlow | (tensorinfer框架)modelpostprocessors/libfasterrcnnpostprocess.so | |
MindSpore | (tensorinfer框架)modelpostprocessors/libfasterrcnnpostprocess.so | ||
YOLOv4 | Pytorch | (tensorinfer框架)modelpostprocessors/libyolov3postprocess.so | |
SSD-VGG16 | Caffe | (tensorinfer框架)modelpostprocessors/libssdvggpostprocess.so | 无 |
SSD MobileNet v1 FPN | TensorFlow | (tensorinfer框架)modelpostprocessors/libssdmobilenetfpnpostprocess.so | |
CRNN | TensorFlow | (tensorinfer框架)modelpostprocessors/libcrnnpostprocess.so | |
YOLOv5 | Pytorch | (tensorinfer框架)modelpostprocessors/libyolov3postprocess.so | |
FasterRCNN-FPN/CascadeRCNN-FPN | Pytorch | (tensorinfer框架)modelpostprocessors/libfasterrcnnpostprocess.so | |
ResNet-18 | TensorFlow | (tensorinfer框架)modelpostprocessors/libresnet50postprocess.so | |
CTPN | TensorFlow | (tensorinfer框架)modelpostprocessors/libctpnpostprocess.so | |
CTPN | MindSpore | (tensorinfer框架)modelpostprocessors/libctpnpostprocess.so | |
DeepLabv3 | MindSpore | (tensorinfer框架)modelpostprocessors/libdeeplabv3post.so | |
BERT-Base (Uncased) | TensorFlow | (tensorinfer框架)modelpostprocessors/libresnet50postprocess.so | |
U-Net | MindSpore | (tensorinfer框架)modelpostprocessors/libunetmindsporepostprocess.so | |
Mask R-CNN | Pytorch | (tensorinfer框架)modelpostprocessors/libmaskrcnnmindsporepost.so | |
FaceNet | TensorFlow | 无需后处理。 | |
SSD MobileNet v1 FPN | MindSpore | (tensorinfer框架)modelpostprocessors/libSsdMobilenetFpn_MindsporePost.so | |
OpenPose | TensorFlow | (tensorinfer框架)modelpostprocessors/libopenposepostprocess.so | 无 |
RetinaNet | TensorFlow | (tensorinfer框架)modelpostprocessors/retinanetpostprocess.so | |
HigherHRnet | Pytorch | (tensorinfer框架)modelpostprocessors/libhigherhrnetpostprocess.so | |
YoloV7Detection | Pytorch | 无 | 无 |
PPYOLOEPlusDetection | Paddle | 无 | 无 |
父主题: 模型支持参考
模型后处理配置参数
各个模型所需要的配置参数见下表。
表1 YOLOv3模型后处理配置参数(yolov3_tf_bs1_fp16.cfg)
| 参数名 | 描述 | 默认值 | 取值区间 |
|---|---|---|---|
| CLASS_NUM | 类别数量。 | 80 | 无 |
| BIASES_NUM | anchor宽高的数量(18表示9个anchor,每个对应一对宽高值)。 | 18 | [0, 100] |
| BIASE | 每两个数组成一个anchor的宽高值,例如10、13表示第一个anchor的宽、高值。 | 10,13,16,30,33,23,30,61,62,45,59,119,116,90,156,198,373,326 | 无 |
| SCORE_THRESH | 目标是否为某种类别物体的阈值,大于阈值即认为是该目标。 | 0.3 | [0.0, 1.0] |
| OBJECTNESS_THRESH | 是否为目标的阈值,大于阈值即认为是目标。 | 0.3 | [0.0, 1.0] |
| IOU_THRESH | 两个框的IOU阈值,超过阈值即认为同一个框。 | 0.45 | [0.0, 1.0] |
| YOLO_TYPE | 表示输出Tensor的个数,3表示有三个feature map输出。 | 3 | [0, 16] |
| ANCHOR_DIM | 每个feature map对应的anchor框数量。 | 3 | [0, 16] |
| MODEL_TYPE | 数据排布格式,0表示NHWC,1表示NCHW,2表示NCHWC。 | 0 | 无 |
| FRAMEWORK | String类型,可选值有MindSpore,PyTorch,TensorFlow 和Caffe。 | TensorFlow | 无 |
| SEPARATE_SCORE_THRESH | 各个类别对应的阈值。 | CLASS_NUM(数量)个SCORE_THRESH(阈值),以逗号为分隔符。(阈值数量等于CLASS_NUM。) | 无 |
表2 ResNet-50模型后处理配置参数(resnet50_aipp_tf.cfg)
| 参数名 | 描述 | 默认值 | 取值区间 |
|---|---|---|---|
| CLASS_NUM | 类别数量。 | 1001 | [0, 2000] |
| SOFTMAX | 布尔型,是否需要在后处理中做softmax计算。 | false | 无 |
| TOP_K | 前K个可能性最大的类。 | 1 | [0, 16] |
表3 FasterRcnn模型后处理配置参数(faster_rcnn_uncut.cfg)
参数名 | 描述 | 默认值 | 取值区间 |
|---|---|---|---|
CLASS_NUM | 类别数量。 | 91 | [0, 1000] |
SCORE_THRESH | 目标是否为某种类别物体的阈值,大于阈值即认为是该目标。 | 0.5 | [0.0, 1.0] |
IOU_THRESH | 两个框的IOU阈值,超过阈值即认为同一个框。 | 0.45 | [0.0, 1.0] |
SEPARATE_SCORE_THRESH | 各个类别对应的阈值。 | CLASS_NUM(数量)个SCORE_THRESH(阈值),以逗号为分隔符。(阈值数量等于CLASS_NUM。) | 无 |
MODEL_TYPE | 可选以下三个值: 0:original 1:nms_cut(模型未做非极大值抑制) 2:FPN | 0 | 无 |
FRAMEWORK | 可选以下三个值: | TensorFlow | 无 |
NMS_FINISHED | modelinfer框架特有的属性值,为布尔值: | true | 无 |
注:“MODEL_TYPE”和“FRAMEWORK”参数配套说明如下: | |||
表4 ssd_vgg模型后处理配置参数(ssd_vgg16_caffe_release.cfg)
| 参数名 | 描述 | 默认值 |
|---|---|---|
| CLASS_NUM | 类别数量。 | 5 |
| SCORE_THRESH | 目标阈值。 | 0.4 |
| SEPARATE_SCORE_THRESH | 各个类别对应的阈值。 | CLASS_NUM(数量)个SCORE_THRESH(阈值),以逗号为分隔符。(阈值数量等于CLASS_NUM。) |
表5 Ssd-Mobilenet-v1-Fpn模型后处理配置参数(ssd_mobilenetv1_fpn.cfg)
| 参数名 | 描述 | 默认值 |
|---|---|---|
| CLASS_NUM | 类别数量。 | 3 |
| SCORE_THRESH | 目标是否为某种类别物体的阈值,大于阈值即认为是该目标。 | 0.5 |
| SEPARATE_SCORE_THRESH | 各个类别对应的阈值。 | CLASS_NUM(数量)个SCORE_THRESH(阈值),以逗号为分隔符。(阈值数量等于CLASS_NUM。) |
表6 CRNN模型后处理配置参数(crnn_ssh_2.cfg)
| 参数名 | 描述 | 默认值 | 取值区间 |
|---|---|---|---|
| CLASS_NUM | 类别数量。 | 0 | [0, 10000] |
| OBJECT_NUM | 可检测的字符数上限。 | 0 | [0, 1000] |
| BLANK_INDEX | 空白符的索引值。 | 0 | [0, 10000] |
| WITH_ARGMAX | 模型backbone是否已经做了argmax。 | false | 无 |
表7 modelinfer框架ResNet特征模型后处理配置参数(resnet_feature_caffe_release.cfg)
| 参数名 | 描述 | 默认值 |
|---|---|---|
| ACTIVATION_FUNCTION | 用来激活模型输出数据的激活函数。 | None |
表8 modelinfer框架ResNet多分类属性模型后处理配置参数(resnet_attribute_caffe_release.cfg)
| 参数名 | 描述 | 默认值 |
|---|---|---|
| ATTRIBUTE_NUM | 模型输出属性的数量。 | 5 |
| ACTIVATION_FUNCTION | 激活函数的类型,目前仅支持sigmoid函数。 | 无 |
| ATTRIBUTE_INDEX | 模型输出属性的索引。请确保索引的数量与ATTRIBUTE_NUM值相等。 | 无 |
表9 modelinfer框架ResNet二分类属性模型后处理配置参数(resnet_attribute_caffe_release.cfg)
| 参数名 | 描述 | 默认值 |
|---|---|---|
| CLASS_NUM | 类别数量。 | 5 |
表10 modelinfer框架YOLOv4模型后处理配置参数(yolov4_pt_bs1_fp16.cfg)
| 参数名 | 描述 | 默认值 |
|---|---|---|
| CLASS_NUM | 类别数量。 | 80 |
| BIASES_NUM | anchor宽高的数量(18表示9个anchor,每个对应一对宽高值) | 18 |
| BIASES | 每两个数组成一个anchor的宽高值,例如10、13表示第一个anchor的宽、高值。 | 10,13,16,30,33,23,30,61,62,45,59,119,116,90,156,198,373,326 |
| SCORE_THRESH | 目标是否为某种类别物体的阈值,大于阈值即认为是该目标。 | 0.3 |
| OBJECTNESS_THRESH | 是否为目标的阈值,大于阈值即认为是目标。 | 0.3 |
| IOU_THRESH | 两个框的IOU阈值,超过阈值即认为同一个框。 | 0.45 |
| YOLO_TYPE | 表示输出Tensor的个数,3表示有三个feature map输出。 | 3 |
| ANCHOR_DIM | 每个feature map对应的anchor框数量。 | 3 |
| MODEL_TYPE | 数据排布格式,0表示NHWC,1表示NCHW。 | 0 |
| FRAMEWORK_TYPE | 模型框架,0表示Pytorch,1表示MindSpore。 | 0 |
| SEPARATE_SCORE_THRESH | 各个类别对应的阈值。 | CLASS_NUM(数量)个SCORE_THRESH(阈值),以逗号为分隔符。(阈值数量等于CLASS_NUM。) |
表11 YOLOv4模型后处理配置参数(yolov4_pt_bs1_fp16.cfg)
| 参数名 | 描述 | 默认值 |
|---|---|---|
| CLASS_NUM | 类别数量。 | 80 |
| BIASES_NUM | anchor宽高的数量(18表示9个anchor,每个对应一对宽高值)。 | 18 |
| BIASES | 每两个数组成一个anchor的宽高值,例如10、13表示第一个anchor的宽、高值。 | 10,13,16,30,33,23,30,61,62,45,59,119,116,90,156,198,373,326 |
| SCORE_THRESH | 目标是否为某种类别物体的阈值,大于阈值即认为是该目标。 | 0.3 |
| OBJECTNESS_THRESH | 是否为目标的阈值,大于阈值即认为是目标。 | 0.3 |
| IOU_THRESH | 两个框的IOU阈值,超过阈值即认为同一个框。 | 0.45 |
| YOLO_TYPE | 表示输出Tensor的个数,3表示有三个feature map输出。 | 3 |
| ANCHOR_DIM | 每个feature map对应的anchor框数量。 | 3 |
| MODEL_TYPE | 数据排布格式,0表示NHWC,1表示NCHW,2表示NCHWC。 | 0 |
| FRAMEWORK | String类型,可选值有MindSpore,PyTorch,TensorFlow 和Caffe。 | MindSpore |
| SEPARATE_SCORE_THRESH | 各个类别对应的阈值。 | CLASS_NUM(数量)个SCORE_THRESH(阈值),以逗号为分隔符。(阈值数量等于CLASS_NUM。) |
| YOLO_VERSION | 使用的yolo模型版本。 | (必选)YOLO_VERSION=4 |
表12 YOLOv5模型后处理配置参数(yolov5_pt_bs1_fp32.cfg)
| 参数名 | 描述 | 默认值 | 取值空间 |
|---|---|---|---|
| CLASS_NUM | 类别数量。 | 80 | [0, 1000] |
| BIASES_NUM | anchor宽高的数量(18表示9个anchor,每个对应一对宽高值)。 | 18 | [0, 1000] |
| BIASE | 每两个数组成一个anchor的宽高值,例如10、13表示第一个anchor的宽、高值。 | 10,13,16,30,33,23,30,61,62,45,59,119,116,90,156,198,373,326 | 无 |
| SCORE_THRESH | 目标是否为某种类别物体的阈值,大于阈值即认为是该目标。 | 0.3 | [0.0, 1.0] |
| OBJECTNESS_THRESH | 是否为目标的阈值,大于阈值即认为是目标。 | 0.3 | [0.0, 1.0] |
| IOU_THRESH | 两个框的IOU阈值,超过阈值即认为同一个框。 | 0.45 | [0.0, 1.0] |
| YOLO_TYPE | 表示输出Tensor的个数,3表示有三个feature map输出。 | 3 | [0, 1000] |
| ANCHOR_DIM | 每个feature map对应的anchor框数量。 | 3 | [0, 1000] |
| MODEL_TYPE | 数据排布格式,0表示NHWC,1表示NCHW,2表示NCHWC(当前仅支持的PyTorch框架模型)。 | 2 | [0, 1000] |
| FRAMEWORK | String类型,可选值有MindSpore,PyTorch,TensorFlow 和Caffe。 | PyTorch | 无 |
| SEPARATE_SCORE_THRESH | 各个类别对应的阈值。 | CLASS_NUM(数量)个SCORE_THRESH(阈值),以逗号为分隔符。(阈值数量等于CLASS_NUM。) | 无 |
| YOLO_VERSION | 使用的yolo模型版本。 | (必选)YOLO_VERSION=5 | 无 |
表13 modelinfer框架FasterRCNN-Fpn/CascadeRCNN-Fpn模型后处理配置参数(fasterrcnn.cfg或cascadercnn.cfg)
| 参数名 | 描述 | 默认值 |
|---|---|---|
| SCORE_THRESH | 目标是否为某种类别物体的阈值,大于阈值即认为是该目标,实验使用0.3。 | 0.5 |
| FPN_SWITCH | FPN开关,这两个模型均要设为true。 | false |
表14 DeepLabV3+(TensorFlow)模型后处理配置参数(deeplabv3.cfg)
| 参数名 | 描述 | 默认值 |
|---|---|---|
| CLASS_NUM | 类别数量。 | 21 |
| FRAMEWORK_TYPE | 深度学习框架类型选择。 | TensorFlow框架选择0 |
表15 CTPN模型后处理配置参数(ctpn_tf.cfg)
| 参数名 | 描述 | 默认值 | 取值区间 |
|---|---|---|---|
| IS_ORIENTED | 是否进行检测框倾斜。 | false | 无 |
| BOX_IOU_THRESH | 检测小框的iou阈值。 | 0.7 | [0.0, 1.0] |
| TEXT_IOU_THRESH | 最终文本框的iou阈值。 | 0.2 | [0.0, 1.0] |
| TEXT_PROPOSALS_MIN_SCORE | 检测小框的最小分数过滤。 | 0.7 | [0.0, 1.0] |
| LINE_MIN_SCORE | 最终文本框的最小分数过滤。 | 0.9 | [0.0, 1.0] |
| IS_MINDSPORE | 是否为MindSpore框架。 | false | 无 |
表16 CTPN模型后处理配置参数(ctpn_mindspore.cfg)
| 参数名 | 描述 | 默认值 | 取值区间 |
|---|---|---|---|
| IS_ORIENTED | 是否进行检测框倾斜。 | false | 无 |
| BOX_IOU_THRESH | 检测小框的iou阈值。 | 0.7 | [0.0, 1.0] |
| TEXT_IOU_THRESH | 最终文本框的iou阈值。 | 0.2 | [0.0, 1.0] |
| TEXT_PROPOSALS_MIN_SCORE | 检测小框的最小分数过滤。 | 0.7 | [0.0, 1.0] |
| LINE_MIN_SCORE | 最终文本框的最小分数过滤。 | 0.9 | [0.0, 1.0] |
| IS_MINDSPORE | 是否为MindSpore框架。 | true | 无 |
表17 ResNet-18模型后处理配置参数(resnet18_aipp_tf.cfg)
| 参数名 | 描述 | 默认值 |
|---|---|---|
| CLASS_NUM | 类别数量。 | 2 |
表18 DeepLabv3(MindSpore)模型后处理配置参数(deeplabv3.cfg)
| 参数名 | 描述 | 默认值 |
|---|---|---|
| CLASS_NUM | 类别数量。 | 21 |
| MODEL_TYPE | 模型推理输出数据的排布格式,0表示NHWC,1表示NCHW。 | 1 |
| FRAMEWORK_TYPE | 深度学习框架类型选择。 | MindSpore框架选择2 |
表19 BERT-Base (Uncased) 模型后处理配置参数(bert.cfg)
| 参数名 | 描述 | 默认值 |
|---|---|---|
| CLASS_NUM | 类别数量。 | 2 |
| CHECK_MODEL | 检查模型兼容性。 | false |
表20 DeepLabV3+(Pytorch)模型后处理配置参数(deeplabv3.cfg)
| 参数名 | 描述 | 默认值 |
|---|---|---|
| CLASS_NUM | 类别数量。 | 21 |
| CHECK_MODEL | 检查模型兼容性。 | true |
| MODEL_TYPE | 模型推理输出数据的排布格式,0表示NHWC,1表示NCHW。 | 1 |
| FRAMEWORK_TYPE | 深度学习框架类型选择。 | Pytorch框架选择1 |
表21 U-Net模型后处理配置参数(unet_simple.cfg)
| 参数名 | 描述 | 默认值 |
|---|---|---|
| CLASS_NUM | 类别数量。 | 2 |
| POST_TYPE | 模型后处理方式,0表示对模型logits输出(NHWC型)做argmax,1表示对模型argmax输出结果(NHW型)透传。 | 1 |
| RESIZE_TYPE | 对像素图做插值还原的方式,暂只支持两种方式: 0:不做插值还原。 1:最邻近插值还原。 | 1 |
表22 Mask R-CNN模型后处理配置参数(mask_rcnn_2017.cfg)
| 参数名 | 描述 | 默认值 | 取值区间 |
|---|---|---|---|
| CLASS_NUM | 推理类别总数,背景不计算在内。 | 80 | [0, 100] |
| SCORE_THRESH | 置信度得分阈值,可根据业务场景调整。 | 0.7 | [0.0, 1.0] |
| IOU_THRESH | IOU阈值,可根据业务场景调整。 | 0.5 | [0.0, 1.0] |
| RPN_MAX_NUM | Region Proposal Network最大个数。 | 1000 | [0, 1000] |
| MAX_PER_IMG | 按置信度排序,每张图预测框的最大值。 | 128 | [0, 150] |
| MASK_THREAD_BINARY | 输入RCNN的掩码阈值。 | 0.5 | [0.0, 1.0] |
| MASK_SHAPE_SIZE | mask_rcnn中掩码的形状,只支持单参数表示正方形。 | 28 | [0, 100] |
| MODEL_TYPE | 可选以下两个值。 0:MindSpore 1:Pytorch | 0 | 无 |
| SEPARATE_SCORE_THRESH | 各个类别对应的阈值。 | CLASS_NUM(数量)个SCORE_THRESH(阈值),以逗号为分隔符。(阈值数量等于CLASS_NUM。) | 无 |
表23 Ssd_Mobilenet_v1_Fpn_for_MindSpore模型后处理配置参数(ssd_mobilenetv1_fpn.cfg))
| 参数名 | 描述 | 默认值 | 取值区间 |
|---|---|---|---|
| CLASS_NUM | 类别数量。 | 81 | [0, 100] |
| SCORE_THRESH | 目标是否为某种类别物体的阈值,大于阈值即认为是该目标。 | 0.5 | [0.0, 1.0] |
| IOU_THRESH | 目标重合程度的阈值,大于阈值即认为两个目标框对应同一个目标。 | 0.6 | [0.0, 1.0] |
| SEPARATE_SCORE_THRESH | 各个类别对应的阈值。 | CLASS_NUM(数量)个SCORE_THRESH(阈值),以逗号为分隔符。(阈值数量等于CLASS_NUM。) | 无 |
表24 OpenPose模型后处理配置参数(openpose.cfg)
| 参数名 | 描述 | 默认值 | 取值区间 |
|---|---|---|---|
| KEYPOINT_NUM | 关键点个数,加上背景(背景算一个)。 | 19 | [0, 100] |
| FILTER_SIZE | 高斯滤波核的长(或宽)。 | 25 | [0, 100] |
| SIGMA | 高斯滤波核的方差。 | 3 | [0, 10] |
表25 HigherHRnet模型后处理配置参数(higherhrnet.cfg)
| 参数名 | 描述 | 默认值 | 取值区间 |
|---|---|---|---|
| KEYPOINT_NUM | 关键点个数。 | 17 | [0, 20] |
| SCORE_THRESH | 关键点阈值。 | 0.1 | [0.0, 1.0] |
表26 Unet++模型后处理配置参数(unet_nested.cfg)
| 参数名 | 描述 | 默认值 | 取值区间 |
|---|---|---|---|
| CLASS_NUM | 类别数量。 | 3 | 无 |
| POST_TYPE | 模型后处理方式,0表示对模型logits输出(NHWC型)做argmax,1表示对模型argmax输出结果(NHW型)透传。 | 1 | [0, 16] |
| RESIZE_TYPE | 对像素图做插值还原的方式,暂只支持两种方式: 0:不做插值还原。 1:最邻近插值还原。 | 1 | [0, 16] |
表27 RetinaNet模型后处理配置参数(retinanet_tf.cfg)
| 参数名 | 描述 | 默认值 | 取值区间 |
|---|---|---|---|
| CLASS_NUM | 代表数据集类别数量(默认COCO数据集是80类)。 | 80 | [0, 100] |
| MODEL_TYPE | 代表模型类别,目前仅支持TensorFlow模型。 | 0 | [0, 100] |
| SCORE_THRESH | 代表分数阈值。 | 0.5 | [0.0, 1.0] |
父主题: 模型支持参考
在线提单