text: _base_ = '../_base_/default_runtime.py'
  # dataset settings
  dataset_type = 'TableDataset'
  data_root = 'data/coco/'
  img_norm_cfg = dict(
      mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
  
  # In mstrain 3x config, img_scale=[(1333, 640), (1333, 800)],
  # multiscale_mode='range'
  train_pipeline = [
      dict(type='LoadImageFromFile'),
      dict(
          type='LoadAnnotations',
          with_bbox=True,
          with_mask=True,
          poly2mask=False),
      dict(
          type='Resize',
          img_scale=[(1333, 640), (1333, 800)],
          multiscale_mode='range',
          keep_ratio=True),
      dict(type='RandomFlip', flip_ratio=0.5),
      dict(type='Normalize', **img_norm_cfg),
      dict(type='Pad', size_divisor=32),
      dict(type='DefaultFormatBundle'),
      dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels', 'gt_masks']),
  ]
  test_pipeline = [
      dict(type='LoadImageFromFile'),
      dict(
          type='MultiScaleFlipAug',
          img_scale=(1333, 800),
          flip=False,
          transforms=[
              dict(type='Resize', keep_ratio=True),
              dict(type='RandomFlip'),
              dict(type='Normalize', **img_norm_cfg),
              dict(type='Pad', size_divisor=32),
              dict(type='ImageToTensor', keys=['img']),
              dict(type='Collect', keys=['img']),
          ])
  ]
  
  # Use RepeatDataset to speed up training
  # data = dict(
  #     samples_per_gpu=2,
  #     workers_per_gpu=2,
  #     train=dict(
  #         type='RepeatDataset',
  #         times=3,
  #         dataset=dict(
  #             type=dataset_type,
  #             ann_file=data_root + 'annotations/instances_train2017.json',
  #             img_prefix=data_root + 'train2017/',
  #             pipeline=train_pipeline)),
  #     val=dict(
  #         type=dataset_type,
  #         ann_file=data_root + 'annotations/instances_val2017.json',
  #         img_prefix=data_root + 'val2017/',
  #         pipeline=test_pipeline),
  #     test=dict(
  #         type=dataset_type,
  #         ann_file=data_root + 'annotations/instances_val2017.json',
  #         img_prefix=data_root + 'val2017/',
  #         pipeline=test_pipeline))
  # evaluation = dict(interval=1, metric=['bbox', 'segm'])
  
  data = dict(
      samples_per_gpu=2,
      workers_per_gpu=2,
      train=dict(
          type=dataset_type,
          ann_file='data/icdar2019/modern_train.json',
          img_prefix='data/icdar2019/training/TRACKA/ground_truth',
          pipeline=train_pipeline),
      val=dict(
          type=dataset_type,
          ann_file='data/icdar2019/modern_test.json',
          img_prefix='data/icdar2019/test/TRACKA/',
          pipeline=test_pipeline),
      test=dict(
          type=dataset_type,
          ann_file='data/icdar2019/modern_test.json',
          img_prefix='data/icdar2019/test/TRACKA/',
          pipeline=test_pipeline))
  
  evaluation = dict(metric='mAP', interval=2000)
  
  
  
  # optimizer
  optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001)
  optimizer_config = dict(grad_clip=None)
  
  # learning policy
  # Experiments show that using step=[9, 11] has higher performance
  lr_config = dict(
      policy='step',
      warmup='linear',
      warmup_iters=500,
      warmup_ratio=0.001,
      step=[9, 11])
  runner = dict(type='EpochBasedRunner', max_epochs=12)
  