leon 3 weeks ago
parent
commit
e9ddd034c8
3 changed files with 2 additions and 3 deletions
  1. 1 0
      src/infer/trt/yolo/yolo.cu
  2. 1 1
      src/nodes/draw/drawNode.cpp
  3. 0 2
      src/nodes/infer/inferNode.cpp

+ 1 - 0
src/infer/trt/yolo/yolo.cu

@@ -759,6 +759,7 @@ Result YoloModelImpl::forwards(void *stream)
         {
             data::Box result_object_box(pbox[0], pbox[1], pbox[2], pbox[3], pbox[4], label);
             result_object_box.label = class_names_[label];
+            // 后续class_id会被用来做追踪的id,这里给变成负数
             result_object_box.class_id = label - class_names_.size();
             if (model_type_ == ModelType::YOLO11POSE)
             {

+ 1 - 1
src/nodes/draw/drawNode.cpp

@@ -146,7 +146,7 @@ void DrawNode::handle_data(std::shared_ptr<meta::MetaData>& meta_data)
         std::tuple<int, int, int, int> pbox = std::make_tuple(box.left, box.top, box.right, box.bottom);
         int x, y;
         std::string text;
-        if (box.class_id > 0) 
+        if (box.class_id >= 0) 
         {
             text = str_format("%s %.2f id=%d", box.label.c_str(), box.score, box.class_id);
         }

+ 0 - 2
src/nodes/infer/inferNode.cpp

@@ -37,8 +37,6 @@ void InferNode::handle_data(std::shared_ptr<meta::MetaData>& meta_data)
         auto result = std::get<data::BoxArray>(det_result);
         for (auto& r : result)
         {
-            // 默认将id设置为-1,复用目标检测的id作为追踪的id, 只有经过追踪的目标才会设置id
-            r.class_id = -1;
             meta_data->boxes.push_back(r);
         }
     }