使用YOLOv8和ByteTracker进行实时人员跟踪和计数(转载)
1.原文参见:
https://mp.weixin.qq.com/s/pmhlttCbfwvKoozlh29FOA
2.重要代码:
(1)self.model = YOLO(model_path)
model_path:yolov8m.pt,是自动下载,原文件设置错误。
(2)results = self.model.track(
source, show=show, stream=True, tracker=self.tracker_config, conf=self.conf,
device=self.device, iou=self.iou, stream_buffer=True, classes=[0], imgsz=self.img_size
)
3.源码:https://github.com/ishworrsubedii/person_tracker
(1)params.yaml 为总运行的参数。- device: "cpu" 在本人机器上的设置。
- video_source: palace.mp4。palace.mp4是源码中所带的一个文件。为0时是摄像头。
-
tracker_config: "resources/config/bytetrack.yaml"训练参数的设置。
-
model_path: "resources/models/yolov8m.pt"模型的设置。(
(2) log_params.yaml 日志文件的设置
- 在uils中 logger.py的def setup_logger中设置。
- 在ipeline.py中的def run_pipeline中调用。
logger = setup_logger('PersonTrackerLogger', 'tracker.log')