[Data Augmentation] 4. Image augmentation for segmentation

happy_quokka·2024년 1월 10일
0

자율주행 Perception

목록 보기
11/19

segmentation augmentation

  • https://albumentations.ai/docs/getting_started/mask_augmentation/ 에서 관련 내용을 확인할 수 있다
  • segmentation은 픽셀값을 가지고 class를 추정한다
  • class를 추정하는 방법에는 여러가지가 있다
    • 픽셀값이 class_id에 해당하는 경우
    • 픽셀값이 컬러와 매칭되는 경우
  • 원본 이미지, segmentation 이미지(mask image) 두 개의 이미지에 augmentation을 적용한다
  • 노이즈를 추가하는 과정을 통해 모델이 더욱 강건하게 학습할 수 있도록 할 수 있다

구현

1. 이미지 불러오기

  • 원본 이미지, mask를 불러온다

2. image augmentation

  • A.OneOf([]) : 리스트 안에 있는 여러 변환 중 하나를 선택하여 적용
  • A.RandomSizedCrop() : 무작위 크기로 이미지를 자른다
  • A.PadIfNeeded() : 이미지에 패딩을 추가한다
  • A.VerticalFlip() : 이미지를 수직으로 뒤집는다
  • A.ElasticTransform() : 이미지에 탄성을 주어 변형시킨다 (구불구불하게)
  • A.GridDistortion() : grid 왜곡을 적용한다
  • A.OpticalDistortion() : 광학 왜곡을 적용한다
  • A.CLAHE() : 히스토그램 평활화를 통해 이미지의 대비를 향상시킨다
  • A.RandomBrightnessContrast() : 이미지의 밝기와 대비를 random으로 조절한다
  • A.RandomGamma() : 이미지의 gamma를 조절하여 이미지의 밝기를 변경한다

3. 시각화

  • 원본 이미지와 mask를 파라미터로 지정하면 원본 이미지, 원본 mask, 변환된 이미지, 변환된 mask를 모두 시각화한다
  • 그렇지 않으면 변환된 이미지, 변환된 마스크만 시각화한다

결과


0개의 댓글