首頁 > 後端開發 > Python教學 > PyTorch 中的 CocoCaptions (3)

PyTorch 中的 CocoCaptions (3)

Mary-Kate Olsen
發布: 2025-01-09 10:14:42
原創
339 人瀏覽過

這篇文章示範如何使用 CocoCaptions 庫中的 torchvision.datasets 類別和各種 MS COCO 資料集。 這些範例說明了載入和顯示 unlabeled2017 子集中的圖片。 但是,嘗試存取 stuff_train2017stuff_val2017stuff_train2017_pixelmapsstuff_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 子集中的三張影像。

CocoCaptions in PyTorch (3)

結論:

此實驗表明,雖然 CocoCaptions 適用於某些 MS COCO 資料子集(如 unlabeled2017),但它並不直接與所有註釋相容。 遇到的錯誤表示「stuff」和「panoptic」註解需要不同的方法或不同的資料集類別才能正確載入和使用。 要成功存取數據,需要進一步研究這些註釋的結構和可用的 torchvision 資料集類別。

以上是PyTorch 中的 CocoCaptions (3)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板