首页 > 解决方案 > 在 google colab 上使用 pytorch 在detectron2 中进行对象检测。重用已经训练的模型或导入现有的训练模型并预测对象

问题描述

  1. 首先,我下载了训练模型的输出文件夹,并将其导入到 google colab 服务器上的一个新项目中。
  2. 在没有训练模型的新项目中,我model_final.pth将现有输出文件夹的路径指定为cfg.MODEL.WEIGHTS=/content/output/model_final.pth。但进入无限循环。3.我改变了模型的权重cfg.MODEL.WEIGHTS = "detectron2://COCO-Detection/faster_rcnn_R_101_FPN_3x/137851257/model_final_f6e8b1.pkl"。但它仍然不能预测物体。
  3. 我更改了模型权重路径并提供了先前训练的模型指标JSON文件,但它仍然无法正常工作 cfg.MODEL.WEIGHTS=/content/output/metrics.json 5.By using DetectionCheckpointer(model).load("/content/output/model_final.pth") DetectionCheckpointer(model).load("detectron2://COCO-Detection/faster_rcnn_R_101_FPN_3x/137851257/model_final_f6e8b1.pkl") ,它给出了错误模型未定义。这是什么model_final.pkl文件?我们从哪里得到的?我们应该怎么做才能导入现有的火车模型并预测新项目中的对象?
cfg.MODEL.WEIGHTS = os.path.join(cfg.OUTPUT_DIR, "model_final.pth")
cfg.MODEL.ROI_HEADS.SCORE_THRESH_TEST = 0.5 
cfg.DATASETS.TEST = ("microcontroller_test", )
predictor = DefaultPredictor(cfg)

上面的代码进入一个无限循环

DetectionCheckpointer(model).load("/content/output/model_final.pth")
DetectionCheckpointer(model).load("detectron2://COCO-Detection/faster_rcnn_R_101_FPN_3x/137851257/model_final_f6e8b1.pkl")

错误:

NameError                                 Traceback (most recent call last)
<ipython-input-12-69f2a7846756> in <module>()
----> 1 DetectionCheckpointer(model).load("/content/output/model_final.pth")
      2 
      3 DetectionCheckpointer(model).load("detectron2://COCO-Detection/faster_rcnn_R_101_FPN_3x/137851257/model_final_f6e8b1.pkl")

NameError: name 'model' is not defined

标签: pytorchgoogle-colaboratorydetectron

解决方案


推荐阅读