본문 바로가기
  • AI 개발자가 될래요
컴퓨터비전

[Python/OpenCV] 디렉터리에서 이미지 데이터셋 가져와 .npy 로 저장하기

by 꿀개 2022. 5. 10.

이번 시간에는 파일 시스템 디렉터리에서 이미지 데이터셋을 가져오는 방법에 대해 알아본다.

 

아래는 dir_path에 있는 모든 이미지 파일들을 읽어와서 input_data.npy파일에 저장하는 코드이다.

 

라인 별 설명은 주석을 참고하길 바란다.

 

import os
import numpy as np
from PIL import Image

# 데이터셋 경로
dir_path = "./dataset/with_mask/"

# 디렉토리 내 모든 파일 가져오기
img_list = os.listdir(dir_path)
# .png 파일만 가져와서 리스트로 저장
img_list_jpg = [img for img in img_list if img.endswith(".png")]

img_list_np = []

for i in img_list_jpg:
    img = Image.open(dir_path+i) # 한 장의 이미지
    img_array = np.array(img) # 넘파이로 변환
    img_list_np.append(img_array) 
    
img_np = np.array(img_list_np, dtype='object') # 리스트를 넘파이로 변환
np.save('./dataset/input_data', img_np) # .npy 파일로 이미지 저장
print(len(img_list_np)) # 이미지의 총 개수