我使用YOLOv5来检测视频中的每一个帧中的多个对象。我想跟踪对象,而不是检测它们的每一个帧,为了做到这一点,我尝试了YOLOv5-DeepSort。不过,有一个大问题: Yolov5可以用TensorRT编译,这样对于嵌入式板(50 fast )来说,编译速度相当快,但是DeepSort似乎不能以同样的方式编译。
因此,我现在正在寻找一种不太昂贵的替代方案,它可以通过跟踪对象来提高我的检测能力。有什么想法吗?我已经尝试过来自OpenCV和motpy的KCF跟踪器,但两者都很糟糕。
发布于 2022-06-06 16:01:02
免责声明:我是OSNet的主要贡献者。
遗憾的是,目前还没有TensorRT出口选项。您可以尝试使用https://github.com/abewley/sort。这就是,DeepSORT,但没有深层的外观描述符,所以跟踪将只基于运动,这取决于您的用例可能足够好。
另一种选择是将模型导出到相对容易的ONNX,然后使用TensorRT加载它们,如:https://learnopencv.com/how-to-convert-a-model-from-pytorch-to-tensorrt-and-speed-up-inference/
8月6日2022年编辑
我在回购中添加了一个特定于ReID的导出脚本。它产生:ONNX,OpenVINO和TFLite模型的移动网和resnet50 pt模型。我还添加了一个多后端模型加载器和推理器,它支持上述3种类型的模型。计划在不久的将来添加TensorRT。
一个小教程可以找到这里
9月9日2022年编辑
现在支持TensorRT导出和推断。示例用法:
python3 reid_export.py --weights /datadrive/mikel/Yolov5_StrongSORT_OSNet/weights/osnet_x0_25_msmt17.pt --include onnx engine --dynamic --device 0 --batch-size 30
python3 track.py --source 0 --strong-sort-weights weights/osnet_x0_25_msmt17.engine --imgsz 640 --yolo-weights weights/yolov5m.engine --device 0 --class 0https://stackoverflow.com/questions/72500695
复制相似问题