detectron2中的模型(及其子模型)由函数构成,例如build_model
,build_backbone
,build_roi_heads
等函数:
from detectron2.modeling import build_modelmodel = build_model(cfg) #返回torch.nn.Module
注意,build_model
仅构建模型结构,并用随机参数填充它。如果要将现有检查点加载到模型,请使用 DetectionCheckpointer(model).load(file_path)
。Detectron2可以识别pytorch.pth
格式的模型,以及我们model zoo中的.pkl
文件。
你可以通过outputs = model(inputs)
使用模型。接下来,我们解释一下detectron2中内置模型使用的输入/输出格式。
DefaultPredictor(https://detectron2.readthedocs.io/modules/engine.html#detectron2.engine.defaults.DefaultPredictor) 是模型的包装,提供常规推断的默认行为。它包括模型加载和预处理,并且对单个图像进行操作,而不是按批处理。
模型输入格式
所有内置模型均以"list [dict]"作为输入。每个字典对应于有关一张图像的信息。