[python] 파이썬을 사용한 이미지 데이터 증강
이미지 데이터 증강은 기존의 이미지를 변형시켜 데이터셋을 다양하게 만드는 기술입니다. 이는 컴퓨터 비전 작업인 객체 감지, 이미지 분류, 세분화 등에서 모델의 성능을 향상시킬 수 있는 효과적인 방법입니다.
파이썬에서 이미지 데이터 증강을 수행하기 위해 imgaug
라이브러리를 사용할 수 있습니다. 이 라이브러리는 다양한 이미지 변형 기능을 제공하고 있어 편리하게 활용할 수 있습니다.
imgaug
설치하기
imgaug
를 설치하기 위해서는 pip
를 사용할 수 있습니다. 아래의 명령을 터미널에서 실행하여 설치합니다.
pip install imgaug
이미지 증강 수행하기
다음은 파이썬을 사용하여 이미지 데이터를 증강하는 예제 코드입니다.
import imgaug.augmenters as iaa
import cv2
# 이미지 로드
image = cv2.imread('input.jpg')
# 증강기 정의
seq = iaa.Sequential([
iaa.Fliplr(0.5), # 좌우 반전
iaa.GaussianBlur(sigma=(0, 3)), # 가우시안 블러
iaa.Affine(rotate=(-20, 20)) # 회전
])
# 증강 수행
augmented_image = seq(image=image)
# 증강된 이미지 저장
cv2.imwrite('output.jpg', augmented_image)
위의 코드에서는 imgaug
의 Sequential
클래스를 활용하여 여러 가지 이미지 변형 기능을 순차적으로 적용하였습니다. 예를 들어 Fliplr
은 이미지를 좌우로 반전시키고, GaussianBlur
는 가우시안 블러를 적용하며, Affine
은 이미지를 회전시킵니다.
이미지를 증강한 후에는 cv2.imwrite()
함수를 사용하여 증강된 이미지를 저장할 수 있습니다.
결론
이미지 데이터 증강은 파이썬을 활용하여 쉽게 수행할 수 있습니다. imgaug
라이브러리를 사용하면 다양한 이미지 변형 기능을 지원받을 수 있으며, 이를 통해 데이터셋의 다양성을 높여 모델의 성능을 향상시킬 수 있습니다.