From 908ebf1bcff2b00a1741dc17e295bece44ba6df4 Mon Sep 17 00:00:00 2001 From: Tong Gao Date: Mon, 22 Aug 2022 15:02:21 +0800 Subject: [PATCH] [Config] Rename textsnake (#1297) * [Config] Rename textsnake * Update configs/textdet/textsnake/textsnake_resnet50_fpn-unet_1200e_ctw1500.py Co-authored-by: Xinyu Wang <45810070+xinke-wang@users.noreply.github.com> * update metafile * fix linting Co-authored-by: Xinyu Wang <45810070+xinke-wang@users.noreply.github.com> --- ...y => _base_textsnake_resnet50_fpn-unet.py} | 61 ++++++++----------- configs/textdet/textsnake/metafile.yml | 4 +- .../textsnake/textsnake_r50_fpn_unet.py | 26 -------- ...xtsnake_resnet50_fpn-unet_1200e_ctw1500.py | 28 +++++++++ 4 files changed, 57 insertions(+), 62 deletions(-) rename configs/textdet/textsnake/{textsnake_r50_fpn_unet_1200e_ctw1500.py => _base_textsnake_resnet50_fpn-unet.py} (64%) delete mode 100644 configs/textdet/textsnake/textsnake_r50_fpn_unet.py create mode 100644 configs/textdet/textsnake/textsnake_resnet50_fpn-unet_1200e_ctw1500.py diff --git a/configs/textdet/textsnake/textsnake_r50_fpn_unet_1200e_ctw1500.py b/configs/textdet/textsnake/_base_textsnake_resnet50_fpn-unet.py similarity index 64% rename from configs/textdet/textsnake/textsnake_r50_fpn_unet_1200e_ctw1500.py rename to configs/textdet/textsnake/_base_textsnake_resnet50_fpn-unet.py index d8b19ed5..cd90ab9b 100644 --- a/configs/textdet/textsnake/textsnake_r50_fpn_unet_1200e_ctw1500.py +++ b/configs/textdet/textsnake/_base_textsnake_resnet50_fpn-unet.py @@ -1,17 +1,31 @@ -_base_ = [ - 'textsnake_r50_fpn_unet.py', - '../../_base_/det_datasets/ctw1500.py', - '../../_base_/default_runtime.py', - '../../_base_/schedules/schedule_sgd_1200e.py', -] - -# dataset settings -train_list = {{_base_.train_list}} -test_list = {{_base_.test_list}} file_client_args = dict(backend='disk') -default_hooks = dict( - checkpoint=dict(type='CheckpointHook', interval=20), - logger=dict(type='LoggerHook', interval=20)) + +model = dict( + type='TextSnake', + backbone=dict( + type='mmdet.ResNet', + depth=50, + num_stages=4, + out_indices=(0, 1, 2, 3), + frozen_stages=-1, + norm_cfg=dict(type='BN', requires_grad=True), + init_cfg=dict(type='Pretrained', checkpoint='torchvision://resnet50'), + norm_eval=True, + style='caffe'), + neck=dict( + type='FPN_UNet', in_channels=[256, 512, 1024, 2048], out_channels=32), + det_head=dict( + type='TextSnakeHead', + in_channels=32, + module_loss=dict(type='TextSnakeModuleLoss'), + postprocessor=dict( + type='TextSnakePostprocessor', text_repr_type='poly')), + data_preprocessor=dict( + type='TextDetDataPreprocessor', + mean=[123.675, 116.28, 103.53], + std=[58.395, 57.12, 57.375], + bgr_to_rgb=True, + pad_size_divisor=32)) train_pipeline = [ dict( @@ -74,24 +88,3 @@ test_pipeline = [ type='PackTextDetInputs', meta_keys=('img_path', 'ori_shape', 'img_shape', 'scale_factor')) ] - -train_dataloader = dict( - batch_size=4, - num_workers=4, - persistent_workers=True, - sampler=dict(type='DefaultSampler', shuffle=True), - dataset=dict( - type='ConcatDataset', datasets=train_list, pipeline=train_pipeline)) -val_dataloader = dict( - batch_size=1, - num_workers=1, - persistent_workers=True, - sampler=dict(type='DefaultSampler', shuffle=False), - dataset=dict( - type='ConcatDataset', datasets=test_list, pipeline=test_pipeline)) -test_dataloader = val_dataloader - -val_evaluator = dict(type='HmeanIOUMetric') -test_evaluator = val_evaluator - -visualizer = dict(type='TextDetLocalVisualizer', name='visualizer') diff --git a/configs/textdet/textsnake/metafile.yml b/configs/textdet/textsnake/metafile.yml index 9be247b8..b0d242d6 100644 --- a/configs/textdet/textsnake/metafile.yml +++ b/configs/textdet/textsnake/metafile.yml @@ -14,9 +14,9 @@ Collections: README: configs/textdet/textsnake/README.md Models: - - Name: textsnake_r50_fpn_unet_1200e_ctw1500 + - Name: textsnake_resnet50_fpn-unet_1200e_ctw1500 In Collection: TextSnake - Config: configs/textdet/textsnake/textsnake_r50_fpn_unet_1200e_ctw1500.py + Config: configs/textdet/textsnake/textsnake_resnet50_fpn-unet_1200e_ctw1500.py Metadata: Training Data: CTW1500 Results: diff --git a/configs/textdet/textsnake/textsnake_r50_fpn_unet.py b/configs/textdet/textsnake/textsnake_r50_fpn_unet.py deleted file mode 100644 index 1ef88f79..00000000 --- a/configs/textdet/textsnake/textsnake_r50_fpn_unet.py +++ /dev/null @@ -1,26 +0,0 @@ -model = dict( - type='TextSnake', - backbone=dict( - type='mmdet.ResNet', - depth=50, - num_stages=4, - out_indices=(0, 1, 2, 3), - frozen_stages=-1, - norm_cfg=dict(type='BN', requires_grad=True), - init_cfg=dict(type='Pretrained', checkpoint='torchvision://resnet50'), - norm_eval=True, - style='caffe'), - neck=dict( - type='FPN_UNet', in_channels=[256, 512, 1024, 2048], out_channels=32), - det_head=dict( - type='TextSnakeHead', - in_channels=32, - module_loss=dict(type='TextSnakeModuleLoss'), - postprocessor=dict( - type='TextSnakePostprocessor', text_repr_type='poly')), - data_preprocessor=dict( - type='TextDetDataPreprocessor', - mean=[123.675, 116.28, 103.53], - std=[58.395, 57.12, 57.375], - bgr_to_rgb=True, - pad_size_divisor=32)) diff --git a/configs/textdet/textsnake/textsnake_resnet50_fpn-unet_1200e_ctw1500.py b/configs/textdet/textsnake/textsnake_resnet50_fpn-unet_1200e_ctw1500.py new file mode 100644 index 00000000..0696e178 --- /dev/null +++ b/configs/textdet/textsnake/textsnake_resnet50_fpn-unet_1200e_ctw1500.py @@ -0,0 +1,28 @@ +_base_ = [ + '_base_textsnake_resnet50_fpn-unet.py', + '../../_base_/det_datasets/ctw1500.py', + '../../_base_/textdet_default_runtime.py', + '../../_base_/schedules/schedule_sgd_1200e.py', +] + +# dataset settings +ctw_det_train = _base_.ctw_det_train +ctw_det_train.pipeline = _base_.train_pipeline +ctw_det_test = _base_.ctw_det_test +ctw_det_test.pipeline = _base_.test_pipeline + +train_dataloader = dict( + batch_size=4, + num_workers=4, + persistent_workers=True, + sampler=dict(type='DefaultSampler', shuffle=True), + dataset=ctw_det_train) + +val_dataloader = dict( + batch_size=1, + num_workers=1, + persistent_workers=True, + sampler=dict(type='DefaultSampler', shuffle=False), + dataset=ctw_det_test) + +test_dataloader = val_dataloader