SeqTrack开源模型复现
目录
二、配置路径命令为正斜杠,local.py内更新为反斜杠的情况【日常在文件夹里面复制的是反斜杠】
三、修改配置文件参数,补充数据集分类txt文件与数据集读取文件
一、运行配置路径命令:
python tracking/create_default_local_file.py --workspace_dir D:/SeqTrack --data_dir D:/SeqTrack/data --save_dir D:/SeqTrack/save
弹出:
WARNING: You are using tensorboardX instead sis you have a too old pytorch version.
解决:
检查环境,基本配置与pytorch版本与监测训练的tensorboardX
检查当前环境:
pip list | findstr -i "torch tensorboard"
输出
tensorboardX 2.6.2.2
torch 1.11.0+cu113
torchaudio 0.11.0+cu113
torchvision 0.12.0+cu113
问题原因
在较新的 PyTorch 中,torch.utils.tensorboard 已经内置了 TensorBoard 功能,而 tensorboardX 是一个第三方替代品。SeqTrack 检测到你安装了 tensorboardX,发出警告提示。
最简单方案:忽略警告
二、配置路径命令为正斜杠,local.py内更新为反斜杠的情况【日常在文件夹里面复制的是反斜杠】
-
正斜杠:
/(从左上向右下倾斜) -
反斜杠:
\(从右上向左下倾斜)
个人用下来,两个命令没有区别,local.py内都会更新为反斜杠
python tracking/create_default_local_file.py --workspace_dir D:/SeqTrack --data_dir D:/SeqTrack/data --save_dir D:/SeqTrack/save
运行过配置路径的命令之后如果还是反斜杠,受累,手动改,改过之后再运行配置命令会有小惊喜,建议不要尝试。
三、修改配置文件参数,补充数据集分类txt文件与数据集读取文件
四、原始训练窗口显示的是 stdout 的实时输出
运行训练命令:
python D:SeqTrack/lib/train/run_training.py --script seqtrack --config seqtrack_b256 --save_dir D:/SeqTrack/save
原始训练窗口显示的是 stdout 的实时输出,例如:
Converting polygon to bbox for D:/VideoX-master/SeqTrack/data/OOTB\car_12
Converting polygon to bbox for D:/VideoX-master/SeqTrack/data/OOTB\car_12
Converting polygon to bbox for D:/VideoX-master/SeqTrack/data/OOTB\plane_23
Converting polygon to bbox for D:/VideoX-master/SeqTrack/data/OOTB\plane_23
Converting polygon to bbox for D:/VideoX-master/SeqTrack/data/OOTB\ship_5
Converting polygon to bbox for D:/VideoX-master/SeqTrack/data/OOTB\ship_5
新建终端窗口,执行监控训练的命令:
Get-Content save/logs/seqtrack-seqtrack_b256.log -Wait -Tail 50
弹出;
[train: 1, 50 / 3750] FPS: 14.5 (17.6) , Loss/total: 8.29182 , IoU: 0.04315
[train: 1, 100 / 3750] FPS: 15.8 (17.5) , Loss/total: 8.27611 , IoU: 0.03706
[train: 1, 150 / 3750] FPS: 16.3 (17.7) , Loss/total: 8.24687 , IoU: 0.04159
[train: 1, 200 / 3750] FPS: 16.6 (17.4) , Loss/total: 8.21933 , IoU: 0.04320
[train: 1, 250 / 3750] FPS: 16.7 (16.9) , Loss/total: 8.19376 , IoU: 0.03981
[train: 1, 300 / 3750] FPS: 16.6 (16.4) , Loss/total: 8.16935 , IoU: 0.03879
五、checkpoints与日志文件保存
在lib.train.trainers.base_trainer.py中
将这段条件语句:
if epoch > (max_epochs - 10) or save_every_epoch or epoch % 10 == 0:
改为:
if epoch > (max_epochs - 10) or save_every_epoch or epoch % 5 == 0:
更改后条件是 epoch % 5 == 0,即 epoch 5, 10, 15... 才保存。
保存条件是:epoch > 490 或 epoch % 5 == 0
运行这个脚本查看checkpoint目录:
import os
checkpoint_base = r'D:\SeqTrack\save\checkpoints'
for root, dirs, files in os.walk(checkpoint_base):
print(f"Path: {root}")
print(f"Files: {files}")
print(f"Dirs: {dirs}")
print("-" * 50)
就能知道checkpoint实际保存到了哪里
六、lib.train.loader.py
90行添加
if out is not None:
return torch.stack(batch, 1, out=out.resize_(0))
else:
return torch.stack(batch, 1)
七、 启动 TensorBoard 的命令
终端输入:
tensorboard --logdir=D:\SeqTrack\tensorboard\train\seqtrack\seqtrack_b256\train
注意:--logdir 后面跟的是文件夹的路径
命令成功运行后,终端会显示一个本地地址(通常是 http://localhost:6006/)。用浏览器打开这个地址,就可以看到训练过程中的损失曲线(Loss)、准确率(Accuracy)等图表
端口被占用:如果你的 6006 端口被其他程序占用了,可以加上 --port 参数来指定一个新端口,比如:
tensorboard --logdir=D:\SeqTrack\tensorboard\train\seqtrack\seqtrack_b256\train --port=6007
常用操作技巧:
-
调整平滑度 (Smoothing)
-
你当前是 0.6,可以拖动滑块降低到 0.3-0.4 看更真实的曲线
-
-
对比不同实验
-
如果有多个训练日志,可以在左侧 "Runs" 区域勾选对比
-
支持正则表达式过滤,比如
seqtrack.*匹配所有相关实验
-
-
查看更详细的数据
-
点击 "Show data download links" 可以下载 CSV 格式的原始数据
-
鼠标悬停在曲线上可以看到具体数值
-
-
缩放查看
-
用鼠标拖拽选中曲线上的某个区域可以放大
-
双击图表恢复原始视图
-
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)