DeepLearning/딥러닝 기초

[Python] Oxford-Pet 이미지 다운하기

헬로희 2026. 6. 28. 22:24
728x90

torch를 활용하여 학습에 필요한 오픈소스 이미지 데이터 셋을 사이트에 방문하지 않고 다운하기

1. 옥스퍼드-IIIT 펫(Oxford-IIIT Pet) 데이터셋

 

Visual Geometry Group - University of Oxford

 

www.robots.ox.ac.uk

  • 총 이미지 개수는 7,349장
  • 카테고리: 총 37종의 개와 고양이 품종 (개 25종, 고양이 12종)
  • 클래스당 이미지 수: 각 품종별로 약 200장 내외로 구성
  • Train Set과 Test Set로 나뉘어 제공

 

2. 가상환경에서 설치

들어가기에 앞서, 가상환경에서 작업하면 좋으니 가상환경 만들어서 실행!

 

가상환경(Virtual Environment) 생성하기/삭제하기/복제하기

1. 가상환경 컴퓨터 환경을 여러 개로 분리하는 것1) 가상환경이 필요한 이유라이브러리를 설치하다보면 '버전 충돌'문제가 발생하기 때문.가상환경이 없다면 라이브러리 버전을 매번 설치/삭제

hello-heehee.tistory.com

GPU가 있다면 GPU사용이 가능한 torch로 설치해야 한다.

# CPU 사용시 기존 라이브러리 설치처럼 동일하게 설치
pip install torch torchvision torchaudito

# GPU 사용시
# 기존 설치된 라이브러리가 있다면 삭제
pip uninstall torch torchvision torchaudio -y

# CUDA 지원 PyTorch 설치
# 1660 Super 기준으로 설치 (이외 GPU는 CUDA 버전 찾아보고 설치하는 것을 권장)
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
import torch
print(torch.cuda.is_available()) #True 시 GPU 사용 가능
print(torch.cuda.get_device_name(0)) #그래픽카드 이름 출력

3. Oxford-IIIT Pet 데이터셋 다운하기

Oxford-Pet 데이터 셋 다운로드 전에, 이미지 사이즈도 사용자가 정할 수 있음.
Resize 에 원하는 이미지 사이즈를 넣으면, 해당 사이즈로 다운로드 됨.

#1660 Super VRAM 6GB 환경을 위해 이미지 크기를 128x128로 줄여서 가볍게 만듦
transform = transforms.Compose(
    [
        transforms.Resize((128, 128)),
        transforms.ToTensor(),
        transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225]),
    ]
)

Oxford-Pet 데이터 셋 다운.

 

OxfordIIITPet — Torchvision main documentation

Shortcuts

docs.pytorch.org

# 현재 디렉토리에서 'data'라는 폴더에 저장
# download=False 로 하면 다운로드를 하지 않고, 'data' 폴더에서 자동으로 Oxford-pet 데이터셋을 사용함.
# 데이터셋이 이미 저장되어 있다면 download=True여도 다시 다운로드 안하고 폴더에 있는 것 사용

dataset = datasets.OxfordIIITPet(
    root="./data", download=True, split="trainval", transform=transform
)

다운로드 후 자동으로 압축을 풀고 이미지를 저장하는데 시간이 꽤 소요된다...........  딴짓하는 것 추천...
그리고 공식사이트에서는 이미지가 7349 장이랬는데 torch로 다운하고 나니까 7393장이다............... 

728x90