|
_base_ = [ |
|
'../_base_/datasets/semantickitti.py', '../_base_/models/spvcnn.py', |
|
'../_base_/default_runtime.py' |
|
] |
|
|
|
train_pipeline = [ |
|
dict(type='LoadPointsFromFile', coord_type='LIDAR', load_dim=4, use_dim=4), |
|
dict( |
|
type='LoadAnnotations3D', |
|
with_bbox_3d=False, |
|
with_label_3d=False, |
|
with_seg_3d=True, |
|
seg_3d_dtype='np.int32', |
|
seg_offset=2**16, |
|
dataset_type='semantickitti'), |
|
dict(type='PointSegClassMapping'), |
|
dict( |
|
type='GlobalRotScaleTrans', |
|
rot_range=[0., 6.28318531], |
|
scale_ratio_range=[0.95, 1.05], |
|
translation_std=[0, 0, 0], |
|
), |
|
dict(type='Pack3DDetInputs', keys=['points', 'pts_semantic_mask']) |
|
] |
|
|
|
train_dataloader = dict( |
|
sampler=dict(seed=0), dataset=dict(pipeline=train_pipeline)) |
|
|
|
lr = 0.24 |
|
optim_wrapper = dict( |
|
type='AmpOptimWrapper', |
|
loss_scale='dynamic', |
|
optimizer=dict( |
|
type='SGD', lr=lr, weight_decay=0.0001, momentum=0.9, nesterov=True)) |
|
|
|
param_scheduler = [ |
|
dict( |
|
type='LinearLR', start_factor=0.008, by_epoch=False, begin=0, end=125), |
|
dict( |
|
type='CosineAnnealingLR', |
|
begin=0, |
|
T_max=15, |
|
by_epoch=True, |
|
eta_min=1e-5, |
|
convert_to_iter_based=True) |
|
] |
|
|
|
train_cfg = dict(type='EpochBasedTrainLoop', max_epochs=15, val_interval=1) |
|
val_cfg = dict(type='ValLoop') |
|
test_cfg = dict(type='TestLoop') |
|
|
|
default_hooks = dict(checkpoint=dict(type='CheckpointHook', interval=1)) |
|
randomness = dict(seed=0, deterministic=False, diff_rank_seed=True) |
|
env_cfg = dict(cudnn_benchmark=True) |
|
|