인공지능을 좋아하는 곧미남

[torchvision] ImageFolder 본문

code_study/pytorch

[torchvision] ImageFolder

곧미남 2022. 5. 16. 01:15

오늘은 torchvision에서 제공하는 ImageFolder 클래스에 대해 알아보겠습니다.

from torchvision.datasets import ImageFolder

<INDEX>

1. ImageFolder의 사용법


1. ImageFolder의 사용법

    - 하나의 폴더에 하위 폴더가 Class를 나누는 기준이 되어 Image Classification의 target 데이터를 얻을 때 정말 유용하다.

 

저는 이러한 tree 구조의 폴더로 구성된 데이터를 생성하여 테스트해보았습니다. 맨 마지막 하위 폴더에는 png 파일이 저장되어 있습니다.

 

즉, 상위 폴더 1개, 하위 폴더 여러개(Class 수 만큼), 맨 하위 폴더엔 각 Class별 이미지 파일이 저장되어 있습니다.

 

그 후 이렇게 ImageFolder은 세 가지 변수를 얻어 최종 데이터셋을 출력합니다.

- 세 가지 변수: root, transforms, target_transform

- 출력: dataset

dataset.samples 명령어를 통해 각 index별로 data와 class가 잘 저장이 되었는지 확인 가능합니다.

dataset.samples[N] 결과를 확인해보면 폴더 전체에 있는 image 수만큼 저장이 되고 임의 N번째 데이터를 확인해보면, list 형태로 0, 1 디멘젼으로 저장이 된다. 이때 0차원에는 이미지 path, 1차원에는 class label num이 저장되어 최종적으로 input, target이 저장되어 사용할 수 있습니다.

Comments