논문리뷰 : Data Augmentation for Scene Text Recognition

nask·2022년 12월 10일

논문 출처: https://arxiv.org/pdf/2108.06949.pdf

Abstract

  • Scene text recognition(STR)는 찾아야 할 text가 매우 많아 어려운 task임

  • 현실에서는 충분히 큰 양의 공개된 라벨 데이터셋을 찾기 어렵기 때문에 대부분의 연구에서 합성 데이터 사용

  • but noise/artifacts/geometry/structure 등의 문제로 data distribution shift가 발생해 성능 하락

  • 본 논문에서는 현실에서 나타나는 다양한 text property에 대응하는 36가지 augmentation fuctions의 모음인 STRAug를 소개함

1.Introduction

  • STR에서 대부분의 연구 방향은 모델 아키텍쳐 수정이나 알고리즘 개선 등이었음

  • 본 논문에서는 data-driven하게 Augmentation을 활용해 STR의 성능 개선을 이루려함

  • but, 일반적인 Object Detection task의 Augmentation은 text 정보를 왜곡하거나 삭제시킬 수 있음

  • 이러한 배경에서 등장한 STRAug는 8가지 범주로 나뉘어진 36가지의 STR 특화 Augmentations 모음임

  • img = op(img, mag=mag, prob=prob)처럼 단순한 API 덕분에 다른 augmentation 알고리즘들도 복제하거나 validate할 수 있음

2. Related Work

  • STR 분야는 hand-crafted 방식에서 deep learning의 도입으로 성능 향상을 이룸

  • but, 많은 양의 data가 요구됨

  • Luo et al.의 _Learn to Augment_는 distorted text에 대한 STR model 성능을 높이려고 한 기존 연구 중 하나임

  • but, 추가적인 네트워크와 파라미터가 요구되어 setup과 재사용이 어려운 데다가 많은 data distribution shift의 원인 중 distorted text에 대해서만 다룬다는 한계

  • 그 외에도 다양한 기존 연구들이 있지만, 이 방향에서의 종합적인 연구는 없었음

3. Data Augmentation for STR

  • natural scenes의 text는 벽, 셔츠, 자동차번호판 등 다양한 환경에서 찾을 수 있음

  • 또한 text들은 font나 orientation, shape, size, color, rendering, texture, illumination 등 다양한 variation도 가지고 있음

  • 게다가 이미지 자체에도 카메라 센서의 방향이나 위치, 그리고 날씨 등의 이유로 blur, pixelation, noise, geometric/radial distortion이 생길 수 있음

  • 위의 문제들을 모방하는 36가지 function들을 8가지의 카테고리로 나누어 설명함

3.1 Warp

  • curved : 로고 / 도장 / 동전 / 제품 라벨 / 엠블럼 등의 이미지에 나타남

  • distorted : 의류 / 직물 / 포장재 / 비닐봉지 / 깃발 등의 이미지에 나타남

  • stretched : elastic packaging materials / 풍선 등에 나타남

  • Thin-Plate-Spline (TPS) 사용

3.2 Geometry

  • 현실의 회전이나 시점 변환, 또는 텍스트 정렬이나 x or/and y 축의 변환 등을 반영

  • Perspective, Shrink, Rotate 등

3.3 Pattern

  • Gird / VGrid / HGrid / RectGrid / EllipseGrid 등이 존재

  • 전광판이나 dot-matrix 타입의 폰트, 그리고 meshed fence 너머의 표지판 등에서 관찰됨

  • magnitude 클 수록 grid가 촘촘해짐

3.4 Noise

  • Gaussian noise : 저조도 환경에서 관측

  • Shot noise(Poisson noise) : 빛의 이산적이라는 특성 때문에 발생하는 electronic noise

  • Impulse noise : 점잡음(salt-and-pepper noise)의 color 버전으로 bit errors에 의해 발생

  • Hendrycks and Dietterich의 구현을 채택했지만, text가 human readable하다는 것을 보장하기 위해 절반만 사용

3.5 Blur

  • 카메라 센서의 불안정성, 렌즈의 상태, 카메라와 객체의 상대적인 움직임, 불충분한 조명, out of focus 환경, zooming 등에 의해 발생

  • GaussianBlur를 제외하면 모두 Hendrycks and Dietterich의 구현을 채택함

3.6 Weather

  • Fog, Snow, Frost, Rain, Shadow 등

  • 흔한 weather condition만을 담음

3.7 Camera

  • Contrast : 이미지의 서로 다른 객체들을 구별하게 함(text-background 등)

  • Brightness : scene의 조명에 직접적으로 영향받음

  • JpegCompression : 이미지 압축의 부작용

  • Pixelate : 이미지의 해상도를 올릴 때 발생

3.8 Process

  • 7가지 범주 외에 Object detection에 일반적으로 사용되는 augmentation 중 STR에 적용할 만한 것들을 모아둠

  • AutoAugment에 사용됨

  • bit-wise / color manipulation을 통해 image의 모습은 바꾸지만 text의 readability는 유지됨

  • AutoContrast와 Equalize는 1단계의 강도만 제공됨

4~5 Experimental Results and Discussion & Conclusion

  • 여러 STRAug의 augmentation들을 조합한 Combined Group Performance에서 특히 높은 성능 달성

  • peak는 2~4개의 augmentation 사용 시 달성

  • N개의 random augmentation group과 M개의 random magnitude를 정하는 RandAugment를 policy로 사용

  • AutoAugment과 비슷한 성능을 내지만 간단한 grid search를 통해 쉽게 최적화 가능

0개의 댓글