MapTR复现
MapTR复现系列文章
MapTR复现----环境配置
MapTR复现----数据处理
MapTR复现----代码运行
MapTR复现----BUG解决
复现结果视频可视化
1、代码下载
# 1 拉取MapTR源码
git clone https://github.com/hustvl/MapTR.git
2、 训练train
# 1 在MapTR目录下新建ckpts目录
mkdir ckpts
# 2 进入目录
cd ckpts
# 3 下载resnet50预训练权重
wget https://download.pytorch.org/models/resnet50-19c8e357.pth
# 4 下载resnet18预训练权重
wget https://download.pytorch.org/models/resnet18-f37072fd.pth
3、修改projects/configs/maptr/maptr_nano_r18_110e.py
配置文件中相关参数
# 1. 预训练权重
pretrained=dict(img='ckpts/resnet50-19c8e357.pth'),
# 2. BN层修改 单卡BN,多卡用SyncBN
# norm_cfg=dict(type='SyncBN', requires_grad=True), # 多卡BN层
norm_cfg=dict(type='BN', requires_grad=True), # 单卡BN层
# 3. 数据集位置
data_root = 'data/nuscenes/'
# 4. samples_per_gpu和workers_per_gpu
samples_per_gpu=6,
workers_per_gpu=2,
# 训练周期
total_epochs = 100
2、 训练
2.1 单卡训练的方式 1
# 5训练 单卡训练代码最后跟个`1`,八卡最后跟个`8`
./tools/dist_train.sh ./projects/configs/maptr/maptr_nano_r18_110e.py 1
2.1 单卡训练的方式 2
python MapTR-main/tools/train.py MapTR-main/MapTR-main/projects/configs/maptr/maptr_nano_r18_110e.py --gpus 1 --no-validate
3、训练结果
到此表明可以正常训练了。
4、预测及可视化
tools/maptr/vis_pred.py
4.1、下载官方训练好的权重和配置文件
本人下载的 maptr_tiny_r50_24e.pth
下载地址 和对应config
作为测试
https://drive.google.com/file/d/1n1FUFnRqdskvmpLdnsuX_VK6pET19h95/view
4.2、修改配置文件
由于将权重文件放入config/maptr_tiny_r50_24e.py
目录,
需要修改maptr_tiny_r50_24e.py
中的_base_
参数custom_nus-3d.py
与default_runtime.py
文件的路径
为例避免报错可以直接上绝对路径
_base_ = [
'/home/action-dl/MapTR/projects/configs/datasets/custom_nus-3d.py',
'/home/action-dl/MapTR/projects/configs/_base_/default_runtime.py'
]
4.3、运行
python tools/maptr/vis_pred.py config/maptr_tiny_r50_24e.py ckpts/maptr_tiny_r50_24e.pth --show-dir ./vis_dirs
加上句对路径
python tools/maptr/vis_pred.py /home/action-dl/MapTR/projects/configs/maptr/maptr_tiny_r50_24e.py ckpts/maptr_tiny_r50_24e.pth --show-dir ./vis_dirs
结果保存在./vis_dirs
目录下
4.4、
python tools/maptr/generate_video.py ./vis_dirs
生成demo.mp4
python tools/maptr/generate_video.py ./vis_dirs
生成demo.mp4