시작하기무료로 시작하기

사전 학습된 Mask R-CNN으로 분할하기

이 연습 문제에서는 사전 학습된 Mask R-CNN 모델을 사용해 아래 두 마리 고양이 이미지에 대해 instance segmentation을 수행해 보겠습니다.

two cats image

사용할 모델은 COCO dataset으로 사전 학습되어 있으며, 동물을 포함한 일상적인 사물 이미지가 들어 있습니다. 덕분에 별도 미세 조정 없이도 모델이 기본으로 고양이를 인식할 수 있어요.

여러분의 할 일은 모델과 두 마리 고양이 이미지를 불러오고, 이미지를 전처리한 뒤 모델에 전달해 예측 결과를 얻는 것입니다. PILImage, torch, torchvisiontransforms, 그리고 maskrcnn_resnet50_fpn 은 이미 임포트되어 있습니다.

이 연습은 강의의 일부입니다

PyTorch로 배우는 이미지 딥러닝

강의 보기

연습 안내

  • maskrcnn_resnet50_fpn() 을 사용해 pretrained Mask R-CNN을 model 에 로드하세요.
  • 두 마리 고양이 이미지를 텐서로 변환한 뒤 unsqueeze 하세요.
  • 이미지를 모델에 전달해 추론을 수행하고, 출력을 prediction 에 할당하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Load a pre-trained Mask R-CNN model
model = ____(____)
model.eval()

# Load an image and convert to a tensor
image = Image.open("two_cats.jpg")
transform = transforms.Compose([transforms.ToTensor()])
image_tensor = transform(image).____

# Perform inference
with torch.no_grad():
    prediction = ____
    print(prediction)
코드 편집 및 실행