Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mmdetection MixUp, Mosaic #25

Open
ysw2946 opened this issue Apr 4, 2022 · 0 comments
Open

Mmdetection MixUp, Mosaic #25

ysw2946 opened this issue Apr 4, 2022 · 0 comments
Labels
documentation Improvements or additions to documentation

Comments

@ysw2946
Copy link
Contributor

ysw2946 commented Apr 4, 2022

개요

  • Mmdetection MixUp, Mosaic입니다.
  • 아래 dataset 경로 수정해주셔야 합니다.
  • 각 파라미터 설명 끝 () 부분은 default값 입니다.

MixUp

  • img_scale : mixup pipeline 적용 후 이미지의 output size (height : 640,width : 640)
  • ratio_range : mixup 이미지의 비율 조정 (0.5,1.5)
  • flip_ratio : mixup 이미지의 Horizontal flip 비율 (0.5)
  • pad_val : 패딩 value(114)
  • max iters : 최대 반복횟수(15)
  • min_bbox_size : 최소 bbox 크기 임계값(상자의 크기가 임계값보다 작으면 제거)(5)
  • min_area_ratio : original box와 wrapped box 사이의 면적 비율 임계값(overlab된 상자 면적이 임계값보다 작으면 상자 제거(0.2)
  • max_aspect_ratio : bbox의 너비,높이의 비율 임계값(박스의 max(h/w,w/h)가 이 값보다 크면 상자 제거)(20)
  • bbox_clip_border : 이미지 테두리를 벗어난 객체를 자를지 여부(True)
  • skip_filter : 위의 전체적인 필터링 규칙을 적용할지의 여부(True)

Mosaic

  • img_scale : mosaic pipeline 적용 후 이미지의 output size (height : 640,width : 640)
  • center_ratio_range : mosaic 이미지의 중심 비율 조정 (0.5,1.5)
  • pad_val : 패딩 value(114)
  • min_bbox_size : mosaic pipeline이후 잘못된 bbox 필터링(상자의 크기가 임계값보다 작으면 제거)(0)
  • bbox_clip_border : 이미지 테두리를 벗어난 객체를 자를지 여부(True)
  • skip_filter : 위의 전체적인 필터링 규칙을 적용할지의 여부(True)
train_pipeline = [
    dict(
        type='MixUp',
        img_scale = (1024,1024),
        ratio_range = (0.8),(1.6),
        pad_val=114),
    dict(
        type='Mosaic',
        img_scale = (1024,1024),
        pad_val=114),
    dict(type='RandomFlip',flip_ratio=0.0),
    dict(type='Albu',transforms=albu_train_transforms,
         bbox_params=dict(type='BboxParams',
                          format='pascal_voc',
                          label_fields=['gt_labels'],
                          min_visibility=0.0,
                          filter_lost_elements=True),
         keymap={'img': 'image',
                 'gt_bboxes': 'bboxes'},
         update_pad_shape=False,
         skip_img_without_anno=True),
    dict(type='Normalize', **img_norm_cfg),
    dict(type='Pad', size_divisor=32),
    dict(type='DefaultFormatBundle'),
    dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels']),
]
data = dict(
    samples_per_gpu=2,
    workers_per_gpu=2,
    train=dict(
        # type=dataset_type,
        type = 'MultiImageMixDataset',
        dataset = dict(
            type=dataset_type,
            classes = ("General trash", "Paper", "Paper pack", "Metal", "Glass", "Plastic", "Styrofoam", "Plastic bag", "Battery", "Clothing")
            ann_file=data_root + 'annotations/instances_train2017.json',
            img_prefix=data_root + 'train2017/',
            pipeline=[dict(type='LoadImageFromFile'),
                      dict(type='LoadAnnotations', with_bbox=True)
            ],
            filter_empty_gt=False
        ),
        pipeline=train_pipeline)
@ysw2946 ysw2946 added the documentation Improvements or additions to documentation label Apr 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

1 participant