Upload 10 files
Browse files- TinyCD/distill/best_mIoU_iter_69000.pth +3 -0
- TinyCD/distill/config.py +66 -0
- TinyCD/initial/best_mIoU_iter_85000.pth +3 -0
- TinyCD/initial/config.py +24 -0
- TinyCD/large/best_mIoU_iter_102500.pth +3 -0
- TinyCD/large/config.py +50 -0
- TinyCD/medium/best_mIoU_iter_49000.pth +3 -0
- TinyCD/medium/config.py +49 -0
- TinyCD/small/best_mIoU_iter_192000.pth +3 -0
- TinyCD/small/config.py +49 -0
TinyCD/distill/best_mIoU_iter_69000.pth
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:c2f86011537aa77f3e053c993b35bf8220e3a8c09819545122babd21f2b79df9
|
| 3 |
+
size 14166085
|
TinyCD/distill/config.py
ADDED
|
@@ -0,0 +1,66 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
_base_ = [
|
| 2 |
+
'/home/liuziyuan/proj/rmcd-kd/configs/_base_/models/KD-tinycd.py',
|
| 3 |
+
'/home/liuziyuan/proj/rmcd-kd/configs/common/standard_512x512_200k_cgwx.py']
|
| 4 |
+
|
| 5 |
+
dataset_type = 'LEVIR_CD_Dataset'
|
| 6 |
+
data_root = '/nas/datasets/lzy/RS-ChangeDetection/CGWX'
|
| 7 |
+
|
| 8 |
+
crop_size = (512, 512)
|
| 9 |
+
|
| 10 |
+
checkpoint_student = '/nas/datasets/lzy/RS-ChangeDetection/Best_ckpt_3/TinyCD/initial/best_mIoU_iter_85000.pth'
|
| 11 |
+
checkpoint_teacher_l = '/nas/datasets/lzy/RS-ChangeDetection/Best_ckpt_3/TinyCD/large/best_mIoU_iter_102500.pth'
|
| 12 |
+
checkpoint_teacher_m = '/nas/datasets/lzy/RS-ChangeDetection/Best_ckpt_3/TinyCD/medium/best_mIoU_iter_49000.pth'
|
| 13 |
+
checkpoint_teacher_s = '/nas/datasets/lzy/RS-ChangeDetection/Best_ckpt_3/TinyCD/small/best_mIoU_iter_192000.pth'
|
| 14 |
+
|
| 15 |
+
model = dict(
|
| 16 |
+
# student
|
| 17 |
+
init_cfg=dict(type='Pretrained', checkpoint=checkpoint_student),
|
| 18 |
+
# teacher large
|
| 19 |
+
init_cfg_t_l = dict(type='Pretrained', checkpoint=checkpoint_teacher_l),
|
| 20 |
+
# teacher medium
|
| 21 |
+
init_cfg_t_m = dict(type='Pretrained', checkpoint=checkpoint_teacher_m),
|
| 22 |
+
# teacher small
|
| 23 |
+
init_cfg_t_s = dict(type='Pretrained', checkpoint=checkpoint_teacher_s),
|
| 24 |
+
|
| 25 |
+
decode_head=dict(num_classes=2, out_channels=1),
|
| 26 |
+
# test_cfg=dict(mode='slide', crop_size=crop_size, stride=(crop_size[0]//2, crop_size[1]//2))
|
| 27 |
+
)
|
| 28 |
+
|
| 29 |
+
# optimizer
|
| 30 |
+
optimizer = dict(
|
| 31 |
+
type='AdamW',
|
| 32 |
+
lr=0.00356799066427741,
|
| 33 |
+
betas=(0.9, 0.999),
|
| 34 |
+
weight_decay=0.009449677083344786)
|
| 35 |
+
|
| 36 |
+
optim_wrapper = dict(
|
| 37 |
+
_delete_=True,
|
| 38 |
+
type='OptimWrapper',
|
| 39 |
+
optimizer=optimizer)
|
| 40 |
+
|
| 41 |
+
param_scheduler = [
|
| 42 |
+
dict(
|
| 43 |
+
type='LinearLR', start_factor=1e-6, by_epoch=False, begin=0, end=1000),
|
| 44 |
+
dict(
|
| 45 |
+
type='PolyLR',
|
| 46 |
+
power=1.0,
|
| 47 |
+
begin=1000,
|
| 48 |
+
end=100000,
|
| 49 |
+
eta_min=0.0,
|
| 50 |
+
by_epoch=False,
|
| 51 |
+
)
|
| 52 |
+
]
|
| 53 |
+
|
| 54 |
+
# training schedule for 100k
|
| 55 |
+
train_cfg = dict(type='IterBasedTrainLoop', max_iters=100000, val_interval=1000)
|
| 56 |
+
val_cfg = dict(type='ValLoop')
|
| 57 |
+
test_cfg = dict(type='TestLoop')
|
| 58 |
+
default_hooks = dict(
|
| 59 |
+
timer=dict(type='IterTimerHook'),
|
| 60 |
+
logger=dict(type='LoggerHook', interval=100, log_metric_by_epoch=False),
|
| 61 |
+
param_scheduler=dict(type='ParamSchedulerHook'),
|
| 62 |
+
checkpoint=dict(type='CheckpointHook', by_epoch=False, interval=1000,
|
| 63 |
+
save_best='mIoU'),
|
| 64 |
+
sampler_seed=dict(type='DistSamplerSeedHook'),
|
| 65 |
+
visualization=dict(type='CDVisualizationHook', interval=1,
|
| 66 |
+
img_shape=(512, 512, 3)))
|
TinyCD/initial/best_mIoU_iter_85000.pth
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:56ac5bcf828407ec1d99ef3c97ecd5b44e1867ff7ebe5656744b5a1e3cb9a163
|
| 3 |
+
size 10677335
|
TinyCD/initial/config.py
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
_base_ = [
|
| 2 |
+
'/home/liuziyuan/proj/RS-CD/rs-cd-cgwx/configs/_base_/models/tinycd.py',
|
| 3 |
+
'/home/liuziyuan/proj/RS-CD/rs-cd-cgwx/configs/common/standard_512x512_200k_cgwx.py']
|
| 4 |
+
|
| 5 |
+
dataset_type = 'LEVIR_CD_Dataset'
|
| 6 |
+
data_root = '/nas/datasets/lzy/RS-ChangeDetection/CGWX'
|
| 7 |
+
|
| 8 |
+
crop_size = (512, 512)
|
| 9 |
+
model = dict(
|
| 10 |
+
decode_head=dict(num_classes=2, out_channels=1),
|
| 11 |
+
# test_cfg=dict(mode='slide', crop_size=crop_size, stride=(crop_size[0]//2, crop_size[1]//2))
|
| 12 |
+
)
|
| 13 |
+
|
| 14 |
+
# optimizer
|
| 15 |
+
optimizer = dict(
|
| 16 |
+
type='AdamW',
|
| 17 |
+
lr=0.00356799066427741,
|
| 18 |
+
betas=(0.9, 0.999),
|
| 19 |
+
weight_decay=0.009449677083344786)
|
| 20 |
+
|
| 21 |
+
optim_wrapper = dict(
|
| 22 |
+
_delete_=True,
|
| 23 |
+
type='OptimWrapper',
|
| 24 |
+
optimizer=optimizer)
|
TinyCD/large/best_mIoU_iter_102500.pth
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:4817627805a03792e7d7fc3bc386fb0df2a3c8d3a0e48c80a5ad2690d54366df
|
| 3 |
+
size 12582231
|
TinyCD/large/config.py
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
_base_ = [
|
| 2 |
+
'/home/liuziyuan/proj/RS-CD/rs-cd-cgwx/configs/_base_/models/tinycd.py',
|
| 3 |
+
'/home/liuziyuan/proj/RS-CD/rs-cd-cgwx/configs/common/train_large_512x512_100k_cgwx.py']
|
| 4 |
+
|
| 5 |
+
dataset_type = 'LEVIR_CD_Dataset'
|
| 6 |
+
data_root = '/nas/datasets/lzy/RS-ChangeDetection/CGWX'
|
| 7 |
+
|
| 8 |
+
crop_size = (512, 512)
|
| 9 |
+
model = dict(
|
| 10 |
+
decode_head=dict(num_classes=2, out_channels=1),
|
| 11 |
+
# test_cfg=dict(mode='slide', crop_size=crop_size, stride=(crop_size[0]//2, crop_size[1]//2))
|
| 12 |
+
)
|
| 13 |
+
|
| 14 |
+
|
| 15 |
+
# optimizer
|
| 16 |
+
optimizer = dict(
|
| 17 |
+
type='AdamW',
|
| 18 |
+
lr=0.00356799066427741,
|
| 19 |
+
betas=(0.9, 0.999),
|
| 20 |
+
weight_decay=0.009449677083344786)
|
| 21 |
+
|
| 22 |
+
optim_wrapper = dict(
|
| 23 |
+
_delete_=True,
|
| 24 |
+
type='OptimWrapper',
|
| 25 |
+
optimizer=optimizer)
|
| 26 |
+
|
| 27 |
+
param_scheduler = [
|
| 28 |
+
dict(
|
| 29 |
+
type='LinearLR', start_factor=1e-6, by_epoch=False, begin=0, end=1000),
|
| 30 |
+
dict(
|
| 31 |
+
type='PolyLR',
|
| 32 |
+
power=1.0,
|
| 33 |
+
begin=1000,
|
| 34 |
+
end=200000,
|
| 35 |
+
eta_min=0.0,
|
| 36 |
+
by_epoch=False,
|
| 37 |
+
)
|
| 38 |
+
]
|
| 39 |
+
# training schedule for 100k
|
| 40 |
+
train_cfg = dict(type='IterBasedTrainLoop', max_iters=200000, val_interval=1000)
|
| 41 |
+
|
| 42 |
+
default_hooks = dict(
|
| 43 |
+
timer=dict(type='IterTimerHook'),
|
| 44 |
+
logger=dict(type='LoggerHook', interval=100, log_metric_by_epoch=False),
|
| 45 |
+
param_scheduler=dict(type='ParamSchedulerHook'),
|
| 46 |
+
checkpoint=dict(type='CheckpointHook', by_epoch=False, interval=1000,
|
| 47 |
+
save_best='mIoU'),
|
| 48 |
+
sampler_seed=dict(type='DistSamplerSeedHook'),
|
| 49 |
+
visualization=dict(type='CDVisualizationHook', interval=1,
|
| 50 |
+
img_shape=(512, 512, 3)))
|
TinyCD/medium/best_mIoU_iter_49000.pth
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:090097ef95cc5d49ec682d1b9a3164262c165d721895a6d08cf2307da8cea769
|
| 3 |
+
size 6703959
|
TinyCD/medium/config.py
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
_base_ = [
|
| 2 |
+
'/home/liuziyuan/proj/RS-CD/rs-cd-cgwx/configs/_base_/models/tinycd.py',
|
| 3 |
+
'/home/liuziyuan/proj/RS-CD/rs-cd-cgwx/configs/common/train_medium_512x512_100k_cgwx.py']
|
| 4 |
+
|
| 5 |
+
dataset_type = 'LEVIR_CD_Dataset'
|
| 6 |
+
data_root = '/nas/datasets/lzy/RS-ChangeDetection/CGWX'
|
| 7 |
+
|
| 8 |
+
crop_size = (512, 512)
|
| 9 |
+
model = dict(
|
| 10 |
+
decode_head=dict(num_classes=2, out_channels=1),
|
| 11 |
+
# test_cfg=dict(mode='slide', crop_size=crop_size, stride=(crop_size[0]//2, crop_size[1]//2))
|
| 12 |
+
)
|
| 13 |
+
|
| 14 |
+
# optimizer
|
| 15 |
+
optimizer = dict(
|
| 16 |
+
type='AdamW',
|
| 17 |
+
lr=0.00356799066427741,
|
| 18 |
+
betas=(0.9, 0.999),
|
| 19 |
+
weight_decay=0.009449677083344786)
|
| 20 |
+
|
| 21 |
+
optim_wrapper = dict(
|
| 22 |
+
_delete_=True,
|
| 23 |
+
type='OptimWrapper',
|
| 24 |
+
optimizer=optimizer)
|
| 25 |
+
|
| 26 |
+
param_scheduler = [
|
| 27 |
+
dict(
|
| 28 |
+
type='LinearLR', start_factor=1e-6, by_epoch=False, begin=0, end=1000),
|
| 29 |
+
dict(
|
| 30 |
+
type='PolyLR',
|
| 31 |
+
power=1.0,
|
| 32 |
+
begin=1000,
|
| 33 |
+
end=200000,
|
| 34 |
+
eta_min=0.0,
|
| 35 |
+
by_epoch=False,
|
| 36 |
+
)
|
| 37 |
+
]
|
| 38 |
+
# training schedule for 100k
|
| 39 |
+
train_cfg = dict(type='IterBasedTrainLoop', max_iters=200000, val_interval=1000)
|
| 40 |
+
|
| 41 |
+
default_hooks = dict(
|
| 42 |
+
timer=dict(type='IterTimerHook'),
|
| 43 |
+
logger=dict(type='LoggerHook', interval=100, log_metric_by_epoch=False),
|
| 44 |
+
param_scheduler=dict(type='ParamSchedulerHook'),
|
| 45 |
+
checkpoint=dict(type='CheckpointHook', by_epoch=False, interval=1000,
|
| 46 |
+
save_best='mIoU'),
|
| 47 |
+
sampler_seed=dict(type='DistSamplerSeedHook'),
|
| 48 |
+
visualization=dict(type='CDVisualizationHook', interval=1,
|
| 49 |
+
img_shape=(512, 512, 3)))
|
TinyCD/small/best_mIoU_iter_192000.pth
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:285adf3558854f79ba32e2e1ce18309a86240189d713ee535f554038f22628d1
|
| 3 |
+
size 22718999
|
TinyCD/small/config.py
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
_base_ = [
|
| 2 |
+
'/home/liuziyuan/proj/RS-CD/rs-cd-cgwx/configs/_base_/models/tinycd.py',
|
| 3 |
+
'/home/liuziyuan/proj/RS-CD/rs-cd-cgwx/configs/common/train_small_512x512_100k_cgwx.py']
|
| 4 |
+
|
| 5 |
+
dataset_type = 'LEVIR_CD_Dataset'
|
| 6 |
+
data_root = '/nas/datasets/lzy/RS-ChangeDetection/CGWX'
|
| 7 |
+
|
| 8 |
+
crop_size = (512, 512)
|
| 9 |
+
model = dict(
|
| 10 |
+
decode_head=dict(num_classes=2, out_channels=1),
|
| 11 |
+
# test_cfg=dict(mode='slide', crop_size=crop_size, stride=(crop_size[0]//2, crop_size[1]//2))
|
| 12 |
+
)
|
| 13 |
+
|
| 14 |
+
# optimizer
|
| 15 |
+
optimizer = dict(
|
| 16 |
+
type='AdamW',
|
| 17 |
+
lr=0.00356799066427741,
|
| 18 |
+
betas=(0.9, 0.999),
|
| 19 |
+
weight_decay=0.009449677083344786)
|
| 20 |
+
|
| 21 |
+
optim_wrapper = dict(
|
| 22 |
+
_delete_=True,
|
| 23 |
+
type='OptimWrapper',
|
| 24 |
+
optimizer=optimizer)
|
| 25 |
+
|
| 26 |
+
param_scheduler = [
|
| 27 |
+
dict(
|
| 28 |
+
type='LinearLR', start_factor=1e-6, by_epoch=False, begin=0, end=1000),
|
| 29 |
+
dict(
|
| 30 |
+
type='PolyLR',
|
| 31 |
+
power=1.0,
|
| 32 |
+
begin=1000,
|
| 33 |
+
end=200000,
|
| 34 |
+
eta_min=0.0,
|
| 35 |
+
by_epoch=False,
|
| 36 |
+
)
|
| 37 |
+
]
|
| 38 |
+
# training schedule for 100k
|
| 39 |
+
train_cfg = dict(type='IterBasedTrainLoop', max_iters=200000, val_interval=1000)
|
| 40 |
+
|
| 41 |
+
default_hooks = dict(
|
| 42 |
+
timer=dict(type='IterTimerHook'),
|
| 43 |
+
logger=dict(type='LoggerHook', interval=100, log_metric_by_epoch=False),
|
| 44 |
+
param_scheduler=dict(type='ParamSchedulerHook'),
|
| 45 |
+
checkpoint=dict(type='CheckpointHook', by_epoch=False, interval=1000,
|
| 46 |
+
save_best='mIoU'),
|
| 47 |
+
sampler_seed=dict(type='DistSamplerSeedHook'),
|
| 48 |
+
visualization=dict(type='CDVisualizationHook', interval=1,
|
| 49 |
+
img_shape=(512, 512, 3)))
|