이 게시물은 다양한 MS COCO 데이터 세트와 함께 CocoCaptions
라이브러리의 torchvision.datasets
클래스를 사용하는 방법을 보여줍니다. 예제에서는 unlabeled2017
하위 집합에서 이미지를 로드하고 표시하는 방법을 보여줍니다. 그러나 stuff_train2017
, stuff_val2017
, stuff_train2017_pixelmaps
및 stuff_val2017_pixelmaps
의 데이터에 액세스하려고 하면 오류가 발생하여 CocoCaptions
과 호환되지 않음을 나타냅니다. 코드 조각과 해당 출력은 아래에 제공됩니다.
코드 및 출력:
코드는 CocoCaptions
을 사용하여 MS COCO 데이터세트의 다양한 하위 집합을 로드하고 활용하려고 시도합니다. unlabeled2017
하위 집합이 성공적으로 로드되어 이미지 표시가 가능해졌습니다. 다른 하위 집합("stuff" 및 "panoptic" 데이터 포함)은 오류를 발생시켜 이러한 특정 데이터 구조CocoCaptions
와 함께
<code class="language-python">from torchvision.datasets import CocoCaptions import matplotlib.pyplot as plt # ... (CocoCaptions instantiation code as provided in the input) ... # ... (len() calls and error handling code as provided in the input) ... unlabeled2017_data[2] # Displays image and empty caption list unlabeled2017_data[47] # Displays image and empty caption list unlabeled2017_data[64] # Displays image and empty caption list def show_images(data, ims, main_title=None): file = data.root.split('/')[-1] fig, axes = plt.subplots(nrows=1, ncols=3, figsize=(14, 8)) fig.suptitle(t=main_title, y=0.9, fontsize=14) for i, axis in zip(ims, axes.ravel()): if not data[i][1]: im, _ = data[i] axis.imshow(X=im) fig.tight_layout() plt.show() ims = (2, 47, 64) show_images(data=unlabeled2017_data, ims=ims, main_title="unlabeled2017_data")</code>
show_images
기능은 unlabeled2017_data
하위 집합의 이미지 3개를 표시합니다.
결론:
이 실험은 CocoCaptions
가 특정 MS COCO 데이터 하위 집합(예: unlabeled2017
)에서 작동하지만 모든 주석과 직접 호환되지는 않는다는 것을 보여줍니다. 발생한 오류는 "stuff" 및 "panoptic" 주석에 적절한 로드 및 사용을 위해 다른 접근 방식이나 다른 데이터 세트 클래스가 필요함을 나타냅니다. 성공적인 데이터 액세스를 위해서는 이러한 주석의 구조와 사용 가능한 torchvision
데이터 세트 클래스에 대한 추가 조사가 필요합니다.
위 내용은 PyTorch의 Coco캡션 (3)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!