데이터 전처리: 이미지 증강 – 이동
ㅁ 이미지 증강
1. 이동
ㅇ 정의:
이미지를 상하좌우로 일정 픽셀만큼 평행 이동시켜 새로운 학습 데이터를 생성하는 기법. 원본 이미지의 객체 위치를 변화시켜 모델이 위치 변화에 강건하도록 학습시킨다.
ㅇ 특징:
– 픽셀 단위 또는 비율 단위로 이동 가능.
– 이동 후 빈 공간은 보통 0(검정), 평균값, 또는 가장 가까운 픽셀 값으로 채움.
– 객체의 형태는 유지되지만 위치 정보가 변함.
ㅇ 적합한 경우:
– 객체 위치 변화에 둔감한 모델을 만들고자 할 때.
– 이미지 내 배경이 일정하거나 빈 공간 처리가 크게 문제되지 않는 경우.
ㅇ 시험 함정:
– 이동은 회전, 확대/축소와 달리 객체의 크기나 방향을 바꾸지 않음.
– 이동 거리가 너무 크면 객체가 잘려서 정보 손실이 발생할 수 있음.
– 이동은 데이터 증강이지, 데이터 정규화나 표준화가 아님.
ㅇ 시험 대비 “패턴 보기” 예시:
– (O) 이동 증강은 모델이 위치 변화에 강건하게 학습되도록 돕는다.
– (O) 이동 시 빈 공간은 특정 값으로 채울 수 있다.
– (X) 이동 증강은 객체의 크기를 변경하여 다양한 스케일을 학습시킨다.
– (X) 이동은 이미지의 방향을 바꾸는 회전 증강의 한 종류이다.
ㅁ 추가 학습 내용
이동 증강에서 사용하는 주요 파라미터는 x축과 y축의 이동 비율 또는 픽셀 수이며, OpenCV나 TensorFlow ImageDataGenerator에서는 width_shift_range와 height_shift_range로 설정한다. 이동 후 발생하는 빈 공간은 채움 모드에 따라 처리되며, 대표적으로 nearest, reflect, wrap 방식이 있다. 채움 방식은 모델 학습 결과에 영향을 줄 수 있으므로 이해가 필요하다. 이동 증강은 합성곱 신경망(CNN)의 위치 불변성을 높이는 데 도움이 되지만, 이동 범위가 지나치면 객체 일부가 잘려 성능이 떨어질 수 있으므로 적절한 범위 설정이 중요하다.