Melody-Zhou / tensorRT_Pro-YOLOv8

This repository is based on shouxieai/tensorRT_Pro, with adjustments to support YOLOv8.
MIT License
233 stars 37 forks source link

How to implement tracking and write pre- and post-processing to get the id #32

Open CH-Echo opened 3 weeks ago

CH-Echo commented 3 weeks ago

I am currently using the track method for pose prediction. Will the engine model converted by trtexec also output the ID?I use the track method used by the ultralytics framework to make predictions because this can track people and objects. But how do I get this ID when I convert it to the engine and write the pre- and post-processing by myself?

Melody-Zhou commented 3 weeks ago

@CH-Echo Sorry for late response. I'm sorry, I don't quite understand what you mean. According to my understanding, tracking algorithms such as DeepSort and ByteTracker assign a unique ID to each target object through a matching strategy, and this ID is not directly obtained from the output of the model. Specifically, detection-based tracking algorithms rely on the detection results output by the object detector and the prediction results of the Kalman filter to achieve tracking. Unless you involve appearance feature matching, then additional deep learning reasoning will be used, otherwise, the tracking algorithm itself does not use additional model inference.

CH-Echo commented 3 weeks ago

@CH-Echo抱歉回复晚了, 不好意思,我不太明白你的意思,按照我的理解,DeepSort、ByteTracker 等跟踪算法都是通过匹配策略给每个目标物体分配一个唯一的 ID,而这个 ID 并不是直接从模型的输出中得到的。具体来说,基于检测的跟踪算法是依靠物体检测器输出的检测结果和卡尔曼滤波器的预测结果来实现跟踪的,除非你涉及到外观特征匹配,那么就会用到额外的深度学习推理,否则跟踪算法本身是不会用到额外的模型推理的。

Got it. I also discovered that there is a module in ultralytics that is specifically designed for tracking. It is not obtained from the model.