合并COCO数据中的某些类别

2024-10-03 21:31:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试合并coco数据集上的某些类进行评估。我的目标是合并类别“汽车”,“卡车”,“公共汽车”到一个新的类别“车辆”。但我不想训练一个新模特。下面的代码输出对所有80个Coco类别的评估。你知道吗

from detectron2.evaluation import COCOEvaluator, inference_on_dataset
from detectron2.data import build_detection_test_loader
from detectron2.modeling import build_model
from detectron2.checkpoint import DetectionCheckpointer

model = build_model(cfg)
DetectionCheckpointer(model).load(weights_path)

evaluator = COCOEvaluator("testsetPre_val", cfg, False, output_dir="./output/")
val_loader = build_detection_test_loader(cfg, "testsetPre_val")
inference_on_dataset(model, val_loader, evaluator)

有什么建议吗?你知道吗


Tags: fromtestimportbuildmodelonvalloader
1条回答
网友
1楼 · 发布于 2024-10-03 21:31:51

简单的解决办法是,让模型预测“汽车”、“公共汽车”和“卡车”。但在绘制边界框之前,请将标签编辑为“vehicles”。你知道吗

在通过将检测到的对象传递给TensorFlow的“visutil”函数在其周围绘制边界框之前,只需使用一个简单的if else语句:

if label in ["car", "buses", "trucks"]:
    label="vehicles"

如果你不想重新训练模型,这是唯一的方法。你知道吗

但是,如果要重新培训模型,请将“公共汽车”、“卡车”和“轿车”的标记改为“车辆”。你知道吗

相关问题 更多 >