预测模型推理
API文档
预测模型推理API
Predictor与数据处理操作
在预测模型推理方面,UAPI提供Predictor和数据处理操作。Predictor调用Paddle Inference推理引擎得到模型推理结果;数据处理操作包括缩放输入图像、存储预测结果等推理阶段的预处理和后处理操作。Predictor可以接受一组数据预处理、后处理操作,并自动在模型推理前后执行这些操作。
用户可通过uapi.infer.Predictor创建Predictor类对象,通过uapi.infer.Transform命名空间中的API创建数据处理操作类对象,组合Predictor和数据处理操作实现模型串联推理等较复杂的功能。Predictor类的run方法和数据处理操作类的__call__方法的输入和输出均为一个dict。不同任务的Predictor类以及不同的数据处理操作类对于输入、输出字典的键值存在要求。对于Predictor类,本文档介绍类的构造参数,以及run方法的输入、输出键(包括要求的值的类型)。对于数据处理操作类,本文档介绍类的构造参数,以及__call__方法的输入、输出键(包括要求的值的类型)。
通用数据处理操作
UAPI提供一系列任务无关的数据处理操作,可用于不同任务的预测模型推理。需注意的是,如果UAPI针对某一任务提供了与通用数据处理操作功能相近的数据处理操作,应优先使用任务相关的数据处理操作。例如,对于文本识别任务,应尽可能使用uapi.infer.Transform.text_det.NormalizeImage代替uapi.infer.Transform.image.Normalize。
uapi.infer.Transform.image.ReadImage
将图像读入内存。
构造参数
format(str):图像的通道格式,备选项有:'BGR','RGB','GRAY'。默认值:'BGR'。
输入键
image_path。
image_path(str):图像路径。
输出键
image、original_image和original_image_size。
image(numpy.ndarray):使用HWC布局的图像。original_image(numpy.ndarray):图像的拷贝,与image的内容相同。original_image_size(list[int]):图像的原始宽高。
uapi.infer.Transform.image.Flip
对图像实施垂直或水平翻转。
构造参数
mode(str):翻转类型,'H'表示水平翻转,'V'表示垂直翻转。默认值:'H'。
输入键
image。
image(numpy.ndarray):使用HWC布局的图像。
输出键
image。
image(numpy.ndarray):翻转后的图像,使用HWC布局。
uapi.infer.Transform.image.Crop
对图像实施裁剪。
构造参数
crop_size(int|list[int]|tuple[int]):裁剪区域宽高。mode(str):裁剪方式,'C'表示裁剪图像的中心区域,'TL'表示裁剪图像的左上区域。默认值:'C'。
输入键
image。
image(numpy.ndarray):使用HWC布局的图像。
输出键
image和image_size。
image(numpy.ndarray):裁剪后的图像,使用HWC布局。image_size(list[int]):裁剪后的图像宽高。
uapi.infer.Transform.image.Resize
调整图像大小到目标尺寸。
构造参数
target_size(int|list[int]|tuple[int]):图像目标尺寸(宽高)。keep_ratio(bool):是否保持图像纵横比。默认值:False。size_divisor(int|None):若非None,则确保调整后的图像大小被size_divisor整除。默认值:None。interp(str):图像插值方法,备选项有:'NEAREST','LINEAR','CUBIC','AREA','LANCZOS4'。默认值:'LINEAR'。
输入键
image。
image(numpy.ndarray):使用HWC布局的图像。
输出键
image、image_size和scale_factors。
image(numpy.ndarray):调整大小后的图像,使用HWC布局。image_size(list[int]):调整大小后的图像宽高。scale_factors(list[float]):图像宽高的缩放因子。
uapi.infer.Transform.image.ResizeByLong
以较长边为基准缩放图像。
构造参数
target_long_edge(int):图像较长边目标长度。size_divisor(int|None):若非None,则确保调整后的图像大小被size_divisor整除。默认值:None。interp(str):图像插值方法,备选项有:'NEAREST','LINEAR','CUBIC','AREA','LANCZOS4'。默认值:'LINEAR'。
输入键
image。
image(numpy.ndarray):使用HWC布局的图像。
输出键
image和image_size。
image(numpy.ndarray):调整大小后的图像,使用HWC布局。image_size(list[int]):调整大小后的图像宽高。
uapi.infer.Transform.image.ResizeByShort
以较短边为基准缩放图像。
构造参数
target_short_edge(int):图像较短边目标长度。size_divisor(int|None):若非None,则确保调整后的图像大小被size_divisor整除。默认值:None。interp(str):图像插值方法,备选项有:'NEAREST','LINEAR','CUBIC','AREA','LANCZOS4'。默认值:'LINEAR'。
输入键
image。
image(numpy.ndarray):使用HWC布局的图像。
输出键
image和image_size。
image(numpy.ndarray):调整大小后的图像,使用HWC布局。image_size(list[int]):调整大小后的图像宽高。
uapi.infer.Transform.image.Pad
通过在图像下方和右方新增行列并填充数值的手段,将图像大小调整到目标尺寸。
构造参数
target_size(int|list[int]|tuple[int]):图像目标尺寸(宽高)。val(float):填充的数值。默认值:127.5。
输入键
image。
image(numpy.ndarray):使用HWC布局的图像。
输出键
image和image_size。
image(numpy.ndarray):调整大小后的图像,使用HWC布局。image_size(list[int]):调整大小后的图像宽高。
uapi.infer.Transform.image.Normalize
基于给定的均值和标准差对图像实施归一化。
构造参数
scale(float):在进行归一化前,将图像中的数值乘以scale。默认值:1./255。mean(float|list[float]|tuple[float]):归一化使用的均值(可指定每个通道使用的均值)。默认值:0.5。std(float|list[float]|tuple[float]):归一化使用的标准差(可指定每个通道使用的标准差)。默认值:0.5。preserve_dtype(bool):是否在归一化后保持图像原本的数据类型。默认值:False。
输入键
image。
image(numpy.ndarray):使用HWC布局的图像。
输出键
image。
image(numpy.ndarray):归一化后的图像,使用HWC布局。
uapi.infer.Transform.image.ToCHWImage
将图像数组维度顺序调整为通道在前。
输入键
image。
image(numpy.ndarray):使用HWC布局的图像(通道在最后维度)。
输出键
image。
image(numpy.ndarray):使用CHW布局的图像(通道在最前维度)。
图像分类任务推理API
Predictor
构造参数
model_name(str):模型名称。model_dir(str):预测模型的存储目录。prd_config(dict|None):请参考Paddle Inference预测器选项。若为None,则使用默认配置。默认值:None。pre_transforms(list|None):预处理Transform列表。若为None,则使用默认配置。默认值:None。post_transforms(list|None):后处理Transform列表。若为None,则使用默认配置。默认值:None。
输入键
image或image_path。
image(numpy.ndarray):输入图像,使用HWC布局。image_path(str):输入图像的路径。
输出键
cls_pred。
cls_pred(numpy.ndarray):输出特征向量。
uapi.infer.Transform.cls.Topk
根据特征向量输出预测结果。得到每个类别编号、类别名称以及得分。
构造参数
topk(int|None):选择前k个预测类别。若为None,则使用默认配置。默认值:1。class_id_map_file(str):数据集的类别映射文件存储路径,如果使用自定义的类别,需要更换该类别映射文件。
输入键
cls_pred。
cls_pred(numpy.ndarray):输入特征向量
输出键
cls_result。
cls_result(list[dict]):一个列表,输出topk个预测结果,包含类别编号、类别名称以及得分。
识图任务推理API
Predictor
构造参数
model_name(str):模型名称。model_dir(str):预测模型的存储目录。prd_config(dict|None):请参考Paddle Inference预测器选项。若为None,则使用默认配置。默认值:None。pre_transforms(list|None):预处理Transform列表。若为None,则使用默认配置。默认值:None。post_transforms(list|None):后处理Transform列表。若为None,则使用默认配置。默认值:None。
输入键
image或image_path。
image(numpy.ndarray):输入图像,使用HWC布局。image_path(str):输入图像的路径。
输出键
cls_pred。
cls_pred(numpy.ndarray):输出特征向量。
文本检测任务推理API
Predictor
构造参数
model_name(str):模型名称。model_dir(str):预测模型的存储目录。prd_config(dict|None):请参考Paddle Inference预测器选项。若为None,则使用默认配置。默认值:None。pre_transforms(list|None):预处理Transform列表。若为None,则使用默认配置。默认值:None。post_transforms(list|None):后处理Transform列表。若为None,则使用默认配置。默认值:None。
输入
image或image_path。
image(numpy.ndarray):输入图像,使用HWC布局。image_path(str):输入图像的路径。
输出
dt_polys。
dt_polys(numpy.ndarray):预测得到的每个文本轮廓的顶点坐标,默认为矩形的四个顶点。
dt_scores。
dt_scores(numpy.ndarray):文本轮廓对应的预测置信度。
uapi.infer.Transform.text_det.DetResizeForTest
调整输入图片的尺寸。
构造参数
limit_type(str):限定边长的类型,分为max:限定最大边的长度,和min:限定最小边的长度。默认值:max。limit_side_len(int):限定边长的长度。当limit_type为min时,则图像的最小边长将被调整为不小于limit_side_len,当limit_type为max时,则图像的最大边长将被调整为不大于limit_side_len。默认值:960。
输入
image。
image(numpy.ndarray):原始输入图像。
输出
image。
image(numpy.ndarray):调整后的输入图像。
uapi.infer.Transform.text_det.DBPostProcess
根据模型输出的分类概率图得到最终预测结果,包含预测的文本实例位置和置信度。
构造参数
thresh(float):分类阈值,大于阈值区域视为正样本区域。默认值:0.3。box_thresh(float):文本实例置信度,小于阈值则过滤。默认值:0.7。max_candidates(float):最大文本实例个数。默认值:1000。unclip_ratio(float):膨胀系数。默认值:1.5。use_dilation(bool):预膨胀选项。默认值:False。score_mode(str):计算文本实例置信度的方式,分为fast:文本实例最大外接矩形内部的分类分数均值,和slow:文本实例最大外接多边形内部的分类分数均值。默认值:fast。box_type(str):预测的文本轮廓的表示形式,分为quad:矩形表示,和poly:多边形表示。默认值:quad。
输入
prob_map。
prob_map(numpy.ndarray):分类概率图,其中每个像素表示分类分数。
输出
dt_polys。
dt_polys(numpy.ndarray):每个文本轮廓的顶点坐标,默认为矩形的四个顶点。
dt_scores。
dt_scores(numpy.ndarray):每个文本轮廓对应的预测置信度。
uapi.infer.Transform.text_det.SaveTextDetResults
将预测得到的文本位置结果保存到文件。
构造参数
save_dir(str):存储目录。存储路径为:save_dir/{输入图像文件名(不带后缀)}.png。
输入
image_path和dt_polys。
image_path(str):输入图像的路径。dt_polys(numpy.ndarray):每个文本轮廓的顶点坐标,默认为矩形的四个顶点。
文本识别任务推理API
Predictor
构造参数
model_name(str):模型名称。model_dir(str):预测模型的存储目录。prd_config(dict|None):请参考Paddle Inference预测器选项。若为None,则使用默认配置。默认值:None。pre_transforms(list|None):预处理Transform列表。若为None,则使用默认配置。默认值:None。post_transforms(list|None):后处理Transform列表。若为None,则使用默认配置。默认值:None。
输入
image或image_path。
image(numpy.ndarray):输入图像,使用HWC布局。image_path(str):输入图像的路径。
输出
rec_text。
rec_text(list):文本识别结果。
rec_score。
rec_score(list):每个识别结果对应的预测置信度。
uapi.infer.Transform.text_rec.OCRReisizeNormImg
调整输入图片的尺寸并进行归一化处理。
构造参数
rec_image_shape(list[int]):输入图片的尺寸。默认值:[3, 48, 320]。
输入
image。
image(numpy.ndarray):原始输入图像。
输出
image。
image(numpy.ndarray):调整后的输入图像。
uapi.infer.Transform.text_rec.CTCLabelDecode
将预测概率值解码为最终的识别结果。
构造参数
character_dict_type(str):解码类型。分为ch:中文解码,和en:英文解码。默认值:ch。use_space_char(bool):是否识别空格。分为True:识别空格,和False:不识别空格。默认值:True。
输入
probs。
probs(tuple|paddle.Tensor):模型输出的语义实体的softmax概率。
输出
rec_text。
rec_text(list):解码后的文本识别结果。
rec_score。
rec_score(list):每个识别结果对应的预测置信度。
uapi.infer.Transform.text_rec.SaveTextRecResults
将识别结果保存到文件。
构造参数
save_dir(str):存储目录。存储路径为:save_dir/{输入图像文件名(不带后缀)}.png。
输入
image_path和rec_text。
image_path(str):输入图像的路径。rec_text(list):解码后的文本识别结果。
表格识别任务推理API
Predictor
构造参数
model_name(str):模型名称。model_dir(str):预测模型的存储目录。prd_config(dict|None):请参考Paddle Inference预测器选项。若为None,则使用默认配置。默认值:None。pre_transforms(list|None):预处理Transform列表。若为None,则使用默认配置。默认值:None。post_transforms(list|None):后处理Transform列表。若为None,则使用默认配置。默认值:None。table_max_len(int):表格结构模型预测时,图像的长边resize尺度。默认值:488。
输入
image或image_path。
image(numpy.ndarray):输入图像,使用HWC布局。image_path(str):输入图像的路径。
输出
structure_probs。
structure_probs(paddle.Tensor):表格结构softmax概率。
loc_probs。
loc_probs(paddle.Tensor):归一化的表格cell坐标。
uapi.infer.Transform.table_rec.TableLabelDecode
对输出的表格结构序列和归一化的表格cell坐标进行解码
构造参数 str
character_dict_type(str):表格结构字典类型。若不指定,则使用默认字典类型。默认值:TableAttn_ch, 可选项有[TableAttn_ch,TableAttn_en,TableMaster]。
输入
structure_probs。
structure_probs(paddle.Tensor):表格结构softmax概率。
loc_probs。
loc_probs(paddle.Tensor):归一化的表格cell坐标。
shape_list。
shape_list(list of list):原始图像的输入shape。
输出
cell_bbox。
cell_bbox(list):对应原始图像中的绝对坐标,顺序为[x1,y1,x2,y2]。
html。
html(list):解码后的表格结构html的list形式序列。
uapi.infer.Transform.table_rec.SaveTableResults
将表格识别结果保存到文件。
构造参数
save_dir(str):存储目录。存储的分割图路径为:save_dir/{输入图像文件名(不带后缀)}_bbox.png。
输入
image_path, original_image和cell_bbox。
image_path(str):输入图像的路径。original_image(numpy.ndarray):原始输入图像。cell_bbox(numpy.ndarray):对应原始图像中的绝对坐标,顺序为[x1,y1,x2,y2]。
关键信息抽取任务推理API
Predictor
构造参数
model_name(str):模型名称。model_dir(str):预测模型的存储目录。prd_config(dict|None):请参考Paddle Inference预测器选项。若为None,则使用默认配置。默认值:None。pre_transforms(list|None):预处理Transform列表。若为None,则使用默认配置。默认值:None。post_transforms(list|None):后处理Transform列表。若为None,则使用默认配置。默认值:None。
输入
image或image_path。
image(numpy.ndarray):输入图像,使用HWC布局。image_path(str):输入图像的路径。
输出
preds。
preds(tuple|paddle.Tensor):ser模型输出的语义实体的softmax概率。
segment_offset_id。
segment_offset_id(list of list):用于分割语义实体的偏移量序号。
ocr_info。
ocr_info(paddle.Tensor):ocr引擎输出的检测识别结果。
uapi.infer.Transform.kie.VQASerTokenLayoutLMPostProcess
根据输出的语义实体概率和偏移量序号进行解码为最终语义实体识别结果。
构造参数 str
class_type(str):语义识别识别字典类型。若不指定,则使用默认字典类型。默认值:xfun。
输入
preds。
preds(tuple|paddle.Tensor):ser模型输出的语义实体的softmax概率。
segment_offset_id。
segment_offset_id(list of list):用于分割语义实体的偏移量序号。
ocr_info。
ocr_info(paddle.Tensor):ocr引擎输出的检测识别结果。
输出
kie_ser_res。
kie_ser_res(list of dict):解码后的语义实体识别结果,每个dict包含ocr检测框,ocr文本,语义实体类别。
uapi.infer.Transform.kie.SaveKieResults
将语义实体识别结果保存到文件。
构造参数
save_dir(str):存储目录。存储的分割图路径为:save_dir/{输入图像文件名(不带后缀)}_ser.png。
输入
image_path, original_image和cell_bbox。
image_path(str):输入图像的路径。original_image(numpy.ndarray):原始输入图像。kie_ser_res(list of dict):解码后的语义实体识别结果,每个dict包含ocr检测框,ocr文本,语义实体类别。
目标检测任务推理API
Predictor
构造参数
model_name(str):模型名称。model_dir(str):预测模型的存储目录。prd_config(dict|None):请参考Paddle Inference预测器选项。若为None,则使用默认配置。默认值:None。pre_transforms(list|None):预处理Transform列表。若为None,则使用默认配置。默认值:None。post_transforms(list|None):后处理Transform列表。若为None,则使用默认配置。默认值:None。
输入键
image或image_path。
image(numpy.ndarray):输入图像,使用HWC布局。image_path(str):输入图像的路径。
输出键
boxes。
boxes(numpy.ndarray):预测出的检测框对应的类别编号、置信度以及四个点的坐标位置。
uapi.infer.Transform.det.SaveDetResults
生成目标检测结果存储到指定路径。
构造参数
save_dir(str):存储目录。threshold(float|None):根据阈值保留用于可视化的结果。若为None,则使用默认配置,保留全部结果。默认值:None。labels(list):数据集的类别映射列表。
输入键
boxes。
image_paths(list[str]):一个列表,顺序包含每张输入图像的路径。boxes(list[numpy.ndarray]):一个列表,包含预测出的检测框对应的类别编号、置信度以及检测框坐标(class_id,score,xmin,ymin,xmax, ymax)。
语义分割任务推理API
Predictor
构造参数
model_name(str):模型名称。model_dir(str):预测模型的存储目录。prd_config(dict|None):请参考Paddle Inference预测器选项。若为None,则使用默认配置。默认值:None。pre_transforms(list|None):预处理Transform列表。若为None,则使用默认配置。默认值:None。post_transforms(list|None):后处理Transform列表。若为None,则使用默认配置。默认值:None。has_prob_map(bool):当预测模型的输出为概率图时,请设置此参数为True,否则设置为False。默认值:False。
输入键
image或image_path。
image(numpy.ndarray):输入图像,使用HWC布局。image_path(str):输入图像的路径。
输出键
seg_map。
seg_map(numpy.ndarray):分割图,其中每个像素被赋予一个类别编号。
uapi.infer.Transform.seg.GeneratePCMap
生成伪彩色图。伪彩色图是分割结果的一种可视化形式。在伪彩色图中,不同类别被赋予不同颜色。
构造参数
color_map(list|None):调色板序列,可用于指定生成的伪彩色图中每个类别编号对应的颜色。若为None,则使用默认的调色板序列。默认值:None。
输入键
seg_map。
seg_map(numpy.ndarray):分割图,其中每个像素被赋予一个类别编号。
输出键
pc_map。
pc_map(PIL.Image.Image):伪彩色图,其中不同类别被赋予不同的颜色。
uapi.infer.Transform.seg.SaveSegResults
将分割结果保存到文件。
构造参数
save_dir(str):存储目录。存储的分割图路径为:save_dir/{输入图像文件名(不带后缀)}.png。save_pc_map(bool):是否同时存储伪彩色图。存储的伪彩色图路径为:save_dir/{输入图像文件名(不带后缀)}_pc.png。默认值:True。
输入键
image_path和seg_map。可选:pc_map。
image_path(str):输入图像的路径。seg_map(numpy.ndarray):分割图,其中每个像素被赋予一个类别编号。pc_map(PIL.Image.Image):伪彩色图,其中不同类别被赋予不同的颜色。
多视角3D目标检测任务推理API
Predictor
构造参数
model_name(str):模型名称。model_dir(str):预测模型的存储目录。prd_config(dict|None):请参考Paddle Inference预测器选项。若为None,则使用默认配置。默认值:None。pre_transforms(list|None):预处理Transform列表。若为None,则使用默认配置。默认值:None。post_transforms(list|None):后处理Transform列表。若为None,则使用默认配置。默认值:None。with_timestamp(bool):推理使用的输入是否为时序数据。PETRv2_v99模型需要指定此参数为True。默认值:False。
输入键
images或image_paths。
images(list[numpy.ndarray]):一个列表,顺序包含输入图像,每个数组使用HWC布局。image_paths(list[str]):一个列表,顺序包含每张输入图像的路径。
输出键
bboxes、scores和labels。
bboxes(list):一个列表,包含每个目标框的位置信息。scores(list):一个列表,包含每个目标框的置信度。labels(list):一个列表,包含每个目标的类别编号。
uapi.infer.Transform.bev_det.LoadBEVDetInputs
加载多视角3D目标检测输入图像。
构造参数
to_rgb(bool):是否在读入图像后将其通道顺序从BGR调整为RGB。默认值:False。
输入键
image_paths。
image_paths(list[str]):一个列表,顺序包含每张输入图像的路径。
输出键
images。
images(list[numpy.ndarray]):一个列表,顺序包含输入图像,每个数组使用HWC布局。
uapi.infer.Transform.bev_det.ResizeCropImages
对图像进行缩放和裁剪以调整其大小至目标尺寸。
构造参数
target_size(int|list[int]|tuple[int]):图像目标尺寸(宽高)。
输入键
images。
images(list[numpy.ndarray]):图像列表,每个数组使用HWC布局。
输出键
images。
images(list[numpy.ndarray]):一个列表,包含调整至目标尺寸的图像,每个数组使用HWC布局。
uapi.infer.Transform.bev_det.NormalizeImages
基于给定的均值和标准差对图像实施归一化。
构造参数
mean(float|list[float]|tuple[float]):归一化使用的均值(可指定每个通道使用的均值)。std(float|list[float]|tuple[float]):归一化使用的标准差(可指定每个通道使用的标准差)。
输入键
images。
images(list[numpy.ndarray]):图像列表,每个数组使用HWC布局。
输出键
images。
images(list[numpy.ndarray]):一个列表,包含归一化后的图像,每个数组使用HWC布局。
uapi.infer.Transform.bev_det.ToCHWImages
将图像数组维度顺序调整为通道在前。
输入键
images。
images(list[numpy.ndarray]):图像列表,每个数组使用HWC布局。
输出键
images。
images(list[numpy.ndarray]):图像列表,每个数组使用CHW布局。
uapi.infer.Transform.bev_det.SaveBEVDetResults
将多视角3D目标检测结果存储到JSON文件。JSON文件中包含3个键值对:bboxes表示目标框位置;scores表示目标框置信度;labels表示目标类别编号。
构造参数
save_dir(str):存储目录。生成的JSON文件路径为:save_dir/{第一张输入图像的文件名(不带后缀)}.json。
输入键
image_paths、bboxes、scores和labels。
image_paths(list[str]):一个列表,顺序包含每张输入图像的路径。bboxes(list):一个列表,包含每个目标框的位置信息。scores(list):一个列表,包含每个目标框的置信度。labels(list):一个列表,包含每个目标的类别编号。
单目图像3D目标检测任务推理API
Predictor
构造参数
model_name(str):模型名称。model_dir(str):预测模型的存储目录。prd_config(dict|None):请参考Paddle Inference预测器选项。若为None,则使用默认配置。默认值:None。pre_transforms(list|None):预处理Transform列表。若为None,则使用默认配置。默认值:None。post_transforms(list|None):后处理Transform列表。若为None,则使用默认配置。默认值:None。
输入键
image或image_path。
image(numpy.ndarray):数组使用HWC布局。image_path(str):输入图像的路径。lidar2cam(numpy.ndarray|None): 激光坐标系到相机坐标系的转换矩阵。cam2img(numpy.ndarray|None): 相机坐标系到图像坐标系的转换矩阵。
输出键
bboxes、scores和labels。
bboxes(list):一个列表,包含每个目标框的位置信息。scores(list):一个列表,包含每个目标框的置信度。labels(list):一个列表,包含每个目标的类别编号。
uapi.infer.Transform.mono_det.SaveMonoDetResults
将单目3D目标检测结果存储到JSON文件。JSON文件中包含3个键值对:bboxes表示目标框位置;scores表示目标框置信度;labels表示目标类别编号。
构造参数
save_dir(str):存储目录。生成的JSON文件路径为:save_dir/{输入图像的文件名(不带后缀)}.json。
输入键
image_path、bboxes、scores和labels。
image_path(str):输入图像的路径。bboxes(list):一个列表,包含每个目标框的位置信息。scores(list):一个列表,包含每个目标框的置信度。labels(list):一个列表,包含每个目标的类别编号。
点云3D目标检测任务推理API
Predictor
构造参数
model_name(str):模型名称。model_dir(str):预测模型的存储目录。prd_config(dict|None):请参考Paddle Inference预测器选项。若为None,则使用默认配置。默认值:None。pre_transforms(list|None):预处理Transform列表。若为None,则使用默认配置。默认值:None。post_transforms(list|None):后处理Transform列表。若为None,则使用默认配置。默认值:None。num_point_dim(int):点云数据一个点的维度,如Nuscenes点云为4。默认值:4。with_timestamp(bool):推理使用的输入是否为时序数据。默认值:False。
输入键
lidar或lidar_path。
lidar(list[numpy.ndarray]):输入点云数组,每一行为一个点云数据。lidar_path(str):点云数据的路径。
输出键
bboxes、scores和labels。
bboxes(list):一个列表,包含每个目标框的位置信息。scores(list):一个列表,包含每个目标框的置信度。labels(list):一个列表,包含每个目标的类别编号。
uapi.infer.Transform.pc_det.LoadPCDetInputs
加载点云3D目标检测输入数据。
构造参数
num_point_dim(int):点云数据一个点的维度,如Nuscenes点云为4。默认值:4。
输入键
lidar_path。
lidar_path(str):点云数据的路径。
输出键
lidar。
lidar(numpy.ndarray):输入点云数组,每一行为一个点云数据。
uapi.infer.Transform.pc_det.SavePCDetResults
将点云3D目标检测结果存储到JSON文件。每行包含:Score目标框置信度;Label目标类别编号;Box目标框位置;
构造参数
save_dir(str):存储目录。生成的JSON文件路径为:save_dir/{输入图像的文件名(不带后缀)}.json。
输入键
lidar_path、bboxes、scores和labels。
lidar_path(str):输入点云数据的路径。bboxes(list):一个列表,包含每个目标框的位置信息。scores(list):一个列表,包含每个目标框的置信度。labels(list):一个列表,包含每个目标的类别编号。
