|
weight = 'exp/scannet/semseg-pt-v3m1-1-ppt-extreme-alc-20240823-massive-no-val/model/model_mod_insseg.pth' |
|
resume = False |
|
evaluate = True |
|
test_only = False |
|
seed = 32882255 |
|
save_path = 'exp/scannet200/instance_segmentation_ppt_pretrain_ft_full' |
|
num_worker = 24 |
|
batch_size = 12 |
|
batch_size_val = None |
|
batch_size_test = None |
|
epoch = 800 |
|
eval_epoch = 100 |
|
sync_bn = False |
|
enable_amp = True |
|
empty_cache = False |
|
empty_cache_per_epoch = False |
|
find_unused_parameters = True |
|
mix_prob = 0 |
|
param_dicts = [dict(keyword='block', lr=0.0006)] |
|
hooks = [ |
|
dict(type='CheckpointLoader', keywords='module.', replacement='module.'), |
|
dict(type='IterationTimer', warmup_iter=2), |
|
dict(type='InformationWriter'), |
|
dict( |
|
type='InsSegEvaluator', |
|
segment_ignore_index=(-1, 0, 2), |
|
instance_ignore_index=-1), |
|
dict(type='CheckpointSaver', save_freq=None) |
|
] |
|
train = dict(type='DefaultTrainer') |
|
test = dict(type='SemSegTester', verbose=True) |
|
CLASS_LABELS_200 = ( |
|
'wall', 'chair', 'floor', 'table', 'door', 'couch', 'cabinet', 'shelf', |
|
'desk', 'office chair', 'bed', 'pillow', 'sink', 'picture', 'window', |
|
'toilet', 'bookshelf', 'monitor', 'curtain', 'book', 'armchair', |
|
'coffee table', 'box', 'refrigerator', 'lamp', 'kitchen cabinet', 'towel', |
|
'clothes', 'tv', 'nightstand', 'counter', 'dresser', 'stool', 'cushion', |
|
'plant', 'ceiling', 'bathtub', 'end table', 'dining table', 'keyboard', |
|
'bag', 'backpack', 'toilet paper', 'printer', 'tv stand', 'whiteboard', |
|
'blanket', 'shower curtain', 'trash can', 'closet', 'stairs', 'microwave', |
|
'stove', 'shoe', 'computer tower', 'bottle', 'bin', 'ottoman', 'bench', |
|
'board', 'washing machine', 'mirror', 'copier', 'basket', 'sofa chair', |
|
'file cabinet', 'fan', 'laptop', 'shower', 'paper', 'person', |
|
'paper towel dispenser', 'oven', 'blinds', 'rack', 'plate', 'blackboard', |
|
'piano', 'suitcase', 'rail', 'radiator', 'recycling bin', 'container', |
|
'wardrobe', 'soap dispenser', 'telephone', 'bucket', 'clock', 'stand', |
|
'light', 'laundry basket', 'pipe', 'clothes dryer', 'guitar', |
|
'toilet paper holder', 'seat', 'speaker', 'column', 'bicycle', 'ladder', |
|
'bathroom stall', 'shower wall', 'cup', 'jacket', 'storage bin', |
|
'coffee maker', 'dishwasher', 'paper towel roll', 'machine', 'mat', |
|
'windowsill', 'bar', 'toaster', 'bulletin board', 'ironing board', |
|
'fireplace', 'soap dish', 'kitchen counter', 'doorframe', |
|
'toilet paper dispenser', 'mini fridge', 'fire extinguisher', 'ball', |
|
'hat', 'shower curtain rod', 'water cooler', 'paper cutter', 'tray', |
|
'shower door', 'pillar', 'ledge', 'toaster oven', 'mouse', |
|
'toilet seat cover dispenser', 'furniture', 'cart', 'storage container', |
|
'scale', 'tissue box', 'light switch', 'crate', 'power outlet', |
|
'decoration', 'sign', 'projector', 'closet door', 'vacuum cleaner', |
|
'candle', 'plunger', 'stuffed animal', 'headphones', 'dish rack', 'broom', |
|
'guitar case', 'range hood', 'dustpan', 'hair dryer', 'water bottle', |
|
'handicap bar', 'purse', 'vent', 'shower floor', 'water pitcher', |
|
'mailbox', 'bowl', 'paper bag', 'alarm clock', 'music stand', |
|
'projector screen', 'divider', 'laundry detergent', 'bathroom counter', |
|
'object', 'bathroom vanity', 'closet wall', 'laundry hamper', |
|
'bathroom stall door', 'ceiling light', 'trash bin', 'dumbbell', |
|
'stair rail', 'tube', 'bathroom cabinet', 'cd case', 'closet rod', |
|
'coffee kettle', 'structure', 'shower head', 'keyboard piano', |
|
'case of water bottles', 'coat rack', 'storage organizer', 'folded chair', |
|
'fire alarm', 'power strip', 'calendar', 'poster', 'potted plant', |
|
'luggage', 'mattress') |
|
class_names = ( |
|
'wall', 'chair', 'floor', 'table', 'door', 'couch', 'cabinet', 'shelf', |
|
'desk', 'office chair', 'bed', 'pillow', 'sink', 'picture', 'window', |
|
'toilet', 'bookshelf', 'monitor', 'curtain', 'book', 'armchair', |
|
'coffee table', 'box', 'refrigerator', 'lamp', 'kitchen cabinet', 'towel', |
|
'clothes', 'tv', 'nightstand', 'counter', 'dresser', 'stool', 'cushion', |
|
'plant', 'ceiling', 'bathtub', 'end table', 'dining table', 'keyboard', |
|
'bag', 'backpack', 'toilet paper', 'printer', 'tv stand', 'whiteboard', |
|
'blanket', 'shower curtain', 'trash can', 'closet', 'stairs', 'microwave', |
|
'stove', 'shoe', 'computer tower', 'bottle', 'bin', 'ottoman', 'bench', |
|
'board', 'washing machine', 'mirror', 'copier', 'basket', 'sofa chair', |
|
'file cabinet', 'fan', 'laptop', 'shower', 'paper', 'person', |
|
'paper towel dispenser', 'oven', 'blinds', 'rack', 'plate', 'blackboard', |
|
'piano', 'suitcase', 'rail', 'radiator', 'recycling bin', 'container', |
|
'wardrobe', 'soap dispenser', 'telephone', 'bucket', 'clock', 'stand', |
|
'light', 'laundry basket', 'pipe', 'clothes dryer', 'guitar', |
|
'toilet paper holder', 'seat', 'speaker', 'column', 'bicycle', 'ladder', |
|
'bathroom stall', 'shower wall', 'cup', 'jacket', 'storage bin', |
|
'coffee maker', 'dishwasher', 'paper towel roll', 'machine', 'mat', |
|
'windowsill', 'bar', 'toaster', 'bulletin board', 'ironing board', |
|
'fireplace', 'soap dish', 'kitchen counter', 'doorframe', |
|
'toilet paper dispenser', 'mini fridge', 'fire extinguisher', 'ball', |
|
'hat', 'shower curtain rod', 'water cooler', 'paper cutter', 'tray', |
|
'shower door', 'pillar', 'ledge', 'toaster oven', 'mouse', |
|
'toilet seat cover dispenser', 'furniture', 'cart', 'storage container', |
|
'scale', 'tissue box', 'light switch', 'crate', 'power outlet', |
|
'decoration', 'sign', 'projector', 'closet door', 'vacuum cleaner', |
|
'candle', 'plunger', 'stuffed animal', 'headphones', 'dish rack', 'broom', |
|
'guitar case', 'range hood', 'dustpan', 'hair dryer', 'water bottle', |
|
'handicap bar', 'purse', 'vent', 'shower floor', 'water pitcher', |
|
'mailbox', 'bowl', 'paper bag', 'alarm clock', 'music stand', |
|
'projector screen', 'divider', 'laundry detergent', 'bathroom counter', |
|
'object', 'bathroom vanity', 'closet wall', 'laundry hamper', |
|
'bathroom stall door', 'ceiling light', 'trash bin', 'dumbbell', |
|
'stair rail', 'tube', 'bathroom cabinet', 'cd case', 'closet rod', |
|
'coffee kettle', 'structure', 'shower head', 'keyboard piano', |
|
'case of water bottles', 'coat rack', 'storage organizer', 'folded chair', |
|
'fire alarm', 'power strip', 'calendar', 'poster', 'potted plant', |
|
'luggage', 'mattress') |
|
num_classes = 200 |
|
segment_ignore_index = (-1, 0, 2) |
|
model = dict( |
|
type='PG-v1m1', |
|
backbone=dict( |
|
type='PPT-v1m2', |
|
backbone=dict( |
|
type='PT-v3m1', |
|
in_channels=6, |
|
order=('z', 'z-trans', 'hilbert', 'hilbert-trans'), |
|
stride=(2, 2, 2, 2), |
|
enc_depths=(3, 3, 3, 6, 3), |
|
enc_channels=(48, 96, 192, 384, 512), |
|
enc_num_head=(3, 6, 12, 24, 32), |
|
enc_patch_size=(1024, 1024, 1024, 1024, 1024), |
|
dec_depths=(3, 3, 3, 3), |
|
dec_channels=(64, 96, 192, 384), |
|
dec_num_head=(4, 6, 12, 24), |
|
dec_patch_size=(1024, 1024, 1024, 1024), |
|
mlp_ratio=4, |
|
qkv_bias=True, |
|
qk_scale=None, |
|
attn_drop=0.0, |
|
proj_drop=0.0, |
|
drop_path=0.3, |
|
shuffle_orders=True, |
|
pre_norm=True, |
|
enable_rpe=False, |
|
enable_flash=True, |
|
upcast_attention=False, |
|
upcast_softmax=False, |
|
cls_mode=False, |
|
pdnorm_bn=True, |
|
pdnorm_ln=True, |
|
pdnorm_decouple=True, |
|
pdnorm_adaptive=False, |
|
pdnorm_affine=True, |
|
pdnorm_conditions=('ScanNet', 'ScanNet200', 'ScanNet++', |
|
'Structured3D', 'ALC')), |
|
criteria=[ |
|
dict(type='CrossEntropyLoss', loss_weight=1.0, ignore_index=-1), |
|
dict( |
|
type='LovaszLoss', |
|
mode='multiclass', |
|
loss_weight=1.0, |
|
ignore_index=-1) |
|
], |
|
backbone_out_channels=64, |
|
backbone_mode=True, |
|
context_channels=256, |
|
conditions=('ScanNet', 'ScanNet200', 'ScanNet++', 'Structured3D', |
|
'ALC'), |
|
num_classes=(20, 200, 100, 25, 185)), |
|
backbone_out_channels=64, |
|
semantic_num_classes=200, |
|
semantic_ignore_index=-1, |
|
segment_ignore_index=(-1, 0, 2), |
|
instance_ignore_index=-1, |
|
cluster_thresh=1.5, |
|
cluster_closed_points=300, |
|
cluster_propose_points=100, |
|
cluster_min_points=50, |
|
freeze_backbone=False) |
|
optimizer = dict(type='AdamW', lr=0.006, weight_decay=0.05) |
|
scheduler = dict( |
|
type='OneCycleLR', |
|
max_lr=[0.006, 0.0006], |
|
pct_start=0.05, |
|
anneal_strategy='cos', |
|
div_factor=10.0, |
|
final_div_factor=1000.0) |
|
dataset_type = 'ScanNet200Dataset' |
|
data_root = 'data/scannet' |
|
data = dict( |
|
num_classes=200, |
|
ignore_index=-1, |
|
names=( |
|
'wall', 'chair', 'floor', 'table', 'door', 'couch', 'cabinet', 'shelf', |
|
'desk', 'office chair', 'bed', 'pillow', 'sink', 'picture', 'window', |
|
'toilet', 'bookshelf', 'monitor', 'curtain', 'book', 'armchair', |
|
'coffee table', 'box', 'refrigerator', 'lamp', 'kitchen cabinet', |
|
'towel', 'clothes', 'tv', 'nightstand', 'counter', 'dresser', 'stool', |
|
'cushion', 'plant', 'ceiling', 'bathtub', 'end table', 'dining table', |
|
'keyboard', 'bag', 'backpack', 'toilet paper', 'printer', 'tv stand', |
|
'whiteboard', 'blanket', 'shower curtain', 'trash can', 'closet', |
|
'stairs', 'microwave', 'stove', 'shoe', 'computer tower', 'bottle', |
|
'bin', 'ottoman', 'bench', 'board', 'washing machine', 'mirror', |
|
'copier', 'basket', 'sofa chair', 'file cabinet', 'fan', 'laptop', |
|
'shower', 'paper', 'person', 'paper towel dispenser', 'oven', 'blinds', |
|
'rack', 'plate', 'blackboard', 'piano', 'suitcase', 'rail', 'radiator', |
|
'recycling bin', 'container', 'wardrobe', 'soap dispenser', |
|
'telephone', 'bucket', 'clock', 'stand', 'light', 'laundry basket', |
|
'pipe', 'clothes dryer', 'guitar', 'toilet paper holder', 'seat', |
|
'speaker', 'column', 'bicycle', 'ladder', 'bathroom stall', |
|
'shower wall', 'cup', 'jacket', 'storage bin', 'coffee maker', |
|
'dishwasher', 'paper towel roll', 'machine', 'mat', 'windowsill', |
|
'bar', 'toaster', 'bulletin board', 'ironing board', 'fireplace', |
|
'soap dish', 'kitchen counter', 'doorframe', 'toilet paper dispenser', |
|
'mini fridge', 'fire extinguisher', 'ball', 'hat', |
|
'shower curtain rod', 'water cooler', 'paper cutter', 'tray', |
|
'shower door', 'pillar', 'ledge', 'toaster oven', 'mouse', |
|
'toilet seat cover dispenser', 'furniture', 'cart', |
|
'storage container', 'scale', 'tissue box', 'light switch', 'crate', |
|
'power outlet', 'decoration', 'sign', 'projector', 'closet door', |
|
'vacuum cleaner', 'candle', 'plunger', 'stuffed animal', 'headphones', |
|
'dish rack', 'broom', 'guitar case', 'range hood', 'dustpan', |
|
'hair dryer', 'water bottle', 'handicap bar', 'purse', 'vent', |
|
'shower floor', 'water pitcher', 'mailbox', 'bowl', 'paper bag', |
|
'alarm clock', 'music stand', 'projector screen', 'divider', |
|
'laundry detergent', 'bathroom counter', 'object', 'bathroom vanity', |
|
'closet wall', 'laundry hamper', 'bathroom stall door', |
|
'ceiling light', 'trash bin', 'dumbbell', 'stair rail', 'tube', |
|
'bathroom cabinet', 'cd case', 'closet rod', 'coffee kettle', |
|
'structure', 'shower head', 'keyboard piano', 'case of water bottles', |
|
'coat rack', 'storage organizer', 'folded chair', 'fire alarm', |
|
'power strip', 'calendar', 'poster', 'potted plant', 'luggage', |
|
'mattress'), |
|
train=dict( |
|
type='ScanNet200Dataset', |
|
split='train', |
|
data_root='data/scannet', |
|
transform=[ |
|
dict(type='CenterShift', apply_z=True), |
|
dict( |
|
type='RandomDropout', |
|
dropout_ratio=0.2, |
|
dropout_application_ratio=0.5), |
|
dict( |
|
type='RandomRotate', |
|
angle=[-1, 1], |
|
axis='z', |
|
center=[0, 0, 0], |
|
p=0.5), |
|
dict( |
|
type='RandomRotate', |
|
angle=[-0.015625, 0.015625], |
|
axis='x', |
|
p=0.5), |
|
dict( |
|
type='RandomRotate', |
|
angle=[-0.015625, 0.015625], |
|
axis='y', |
|
p=0.5), |
|
dict(type='RandomScale', scale=[0.9, 1.1]), |
|
dict(type='RandomFlip', p=0.5), |
|
dict(type='RandomJitter', sigma=0.005, clip=0.02), |
|
dict( |
|
type='ElasticDistortion', |
|
distortion_params=[[0.2, 0.4], [0.8, 1.6]]), |
|
dict(type='ChromaticAutoContrast', p=0.2, blend_factor=None), |
|
dict(type='ChromaticTranslation', p=0.95, ratio=0.1), |
|
dict(type='ChromaticJitter', p=0.95, std=0.05), |
|
dict( |
|
type='GridSample', |
|
grid_size=0.02, |
|
hash_type='fnv', |
|
mode='train', |
|
return_grid_coord=True, |
|
keys=('coord', 'color', 'normal', 'segment', 'instance')), |
|
dict(type='SphereCrop', sample_rate=0.8, mode='random'), |
|
dict(type='NormalizeColor'), |
|
dict( |
|
type='InstanceParser', |
|
segment_ignore_index=(-1, 0, 2), |
|
instance_ignore_index=-1), |
|
dict(type='Add', keys_dict=dict(condition='ScanNet200')), |
|
dict(type='ToTensor'), |
|
dict( |
|
type='Collect', |
|
keys=('coord', 'grid_coord', 'segment', 'instance', |
|
'instance_centroid', 'bbox', 'condition'), |
|
feat_keys=('color', 'normal')) |
|
], |
|
test_mode=False, |
|
loop=8), |
|
val=dict( |
|
type='ScanNet200Dataset', |
|
split='val', |
|
data_root='data/scannet', |
|
transform=[ |
|
dict(type='CenterShift', apply_z=True), |
|
dict( |
|
type='Copy', |
|
keys_dict=dict( |
|
coord='origin_coord', |
|
segment='origin_segment', |
|
instance='origin_instance')), |
|
dict( |
|
type='GridSample', |
|
grid_size=0.02, |
|
hash_type='fnv', |
|
mode='train', |
|
return_grid_coord=True, |
|
keys=('coord', 'color', 'normal', 'segment', 'instance')), |
|
dict(type='CenterShift', apply_z=False), |
|
dict(type='NormalizeColor'), |
|
dict( |
|
type='InstanceParser', |
|
segment_ignore_index=(-1, 0, 2), |
|
instance_ignore_index=-1), |
|
dict(type='Add', keys_dict=dict(condition='ScanNet200')), |
|
dict(type='ToTensor'), |
|
dict( |
|
type='Collect', |
|
keys=('coord', 'grid_coord', 'segment', 'instance', |
|
'origin_coord', 'origin_segment', 'origin_instance', |
|
'instance_centroid', 'bbox', 'condition'), |
|
feat_keys=('color', 'normal'), |
|
offset_keys_dict=dict( |
|
offset='coord', origin_offset='origin_coord')) |
|
], |
|
test_mode=False), |
|
test=dict()) |
|
|