简体中文 | English
Junjie Jiang, Aodong Shen
HighwayTrack-Online Multi-Vehicle Tracker for Highway Scenarios(敬请期待)
Junjie Jiang, Aodong Shen
HighwayTrack是一个高速公路场景下的在线多车辆跟踪器,基于相机标定的车辆位置比较跟踪。
在我们自定义高速视频数据集下的各项评价指标(HighwayTrack与ByteTrack比较):
| Tracker | HOTA | MOTA | IDF1 | MOTP | FPS |
|---|---|---|---|---|---|
| ByteTrack | 66.88 | 73.99 | 84.94 | 86.42 | ≈25.0 |
| HighwayTrack | 71.96 | 83.01 | 90.68 | 83.82 | ≈20.0 |
按照以下步骤来设置环境并安装必要的包:
git clone https://github.com/TripleJoy/highwayTrack
cd highwayTrack
conda create --name your_env python=3.9
conda activate your_envpip install torch==2.0.0+cu117 torchvision==0.15.1+cu117 torchaudio==2.0.1 --index-url https://download.pytorch.org/whl/cu117pip install -r requirements.txt为了解决 YOLOv5 模型与 PyTorch 高版本之间的兼容性问题
打开文件 C:\ProgramData\Anaconda3\envs\your_env\Lib\site-packages\torch\nn\modules\upsampling.py,并将第155至157行的代码改为:
def forward(self, input: Tensor) -> Tensor:
# return F.interpolate(input, self.size, self.scale_factor, self.mode, self.align_corners,
# recompute_scale_factor=self.recompute_scale_factor)
return F.interpolate(input, self.size, self.scale_factor, self.mode, self.align_corners)完成修改后保存文件。
注意:以上步骤假设用户具备足够的权限去修改 Anaconda 环境文件夹中的文件。如果遇到权限问题,可能需要管理员权限来修改文件。
- 请从 百度网盘 或 Google Drive 下载所需的预训练模型与示例数据。
- 将
models文件夹放置在highwayTrack目录下。 - 如果您希望运行示例,请将
demo文件夹放置在highwayTrack/source目录下。
最终目录结构应如下所示:
highwayTrack
|————camera_calibration
|
└————config
|
└————det
|
|————models
| └————det
| └————yolov5l.pt
| └————seg
| └————sam_vit_h_4b8939.pth
└————source
| └————demo
| └——————config.yaml
| └——————demo.mp4
| └——————demo_gt.txt
└————tools
|
└————track
|
└————TrackEval
python run.py -n demo.mp4 -e假设您的自定义视频文件命名为 xx.mp4,请按照以下步骤准备数据:
-
创建视频目录:
- 在
highwayTrack/source目录下创建一个名为xx的新文件夹。 - 将视频文件
xx.mp4移动到这个新创建的文件夹中。
- 在
-
配置文件设置:
- 在
highwayTrack/source/xx目录中,新建一个名为config.yaml的文件。 - 从
config/base_config.yaml拷贝内容到config.yaml并根据需要进行修改,详见文档。
- 在
-
保存地面真实数据用于自定义视频数据的性能评估:
- 如果您想在自定义视频数据上评估性能,请将地面真实数据文件 (GT 文件) 移动到
highwayTrack/source/xx目录,并重命名为xx_gt.txt。 - GT 文件应该按以下格式组织:
{frame_id, vehicle_id, box_top, box_left, box_right, box_bottom}。
- 如果您想在自定义视频数据上评估性能,请将地面真实数据文件 (GT 文件) 移动到
快速开始
python run.py -n xx.mp4如果您只想获得相机标定的结果。
python run.py --name xx.mp4 --camera_cal_only如果您只想获得highwayTrack跟踪的结果。(确保所需的前置文件已经生成或用本地数据替换)
python run.py --name xx.mp4 --track_only如果您在得到结果同时想在自定义视频数据上评估性能。(确保您执行了step1中的步骤3)
python run.py --name xx.mp4 -e您也可以直接运行中间步骤(确保所需的前置文件已经生成或用本地数据替换)
例如:
python s7_highwayTrack.py --name xx.mp4或者
python s8_eval.py --name xx.mp4- 所有结果(包括中间步骤生成的)文件均保存在
highwayTrack/middle_file目录下,文件头部注释内容对应其数据结构。 - 相机标定的可视化过程保存在
highwayTrack/data_visualization目录下。 - 各项评估指标将在命令行中显示。
很大一部分代码与模型借鉴自YOLOv5、TPH-YOLOv5、segment-anything、ByteTrack和TrackEval。非常感谢他们的精彩作品。



