當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python PyTorch Kinetics400用法及代碼示例

本文簡要介紹python語言中 torchvision.datasets.Kinetics400 的用法。

用法:

class torchvision.datasets.Kinetics400(root: str, frames_per_clip: int, num_classes: Optional[Any] = None, split: Optional[Any] = None, download: Optional[Any] = None, num_download_workers: Optional[Any] = None, **kwargs: Any)

參數

  • root(string) -

    Kinetics-400 數據集的根目錄。結構應如下:

    root/
    ├── class1
    │   ├── clip1.avi
    │   ├── clip2.avi
    │   ├── clip3.mp4
    │   └── ...
    └── class2
        ├── clipx.avi
        └── ...
  • frames_per_clip(int) -剪輯中的幀數

  • step_between_clips(int) -每個剪輯之間的幀數

  • transform(可調用的,可選的) -接收 TxHxWxC 視頻並返回轉換後版本的函數/轉換。

返回

具有以下條目的 3 元組:

  • 視頻 (Tensor[T, H, W, C]):T 視頻幀

  • audio(Tensor[K, L]):音頻幀,其中K是通道數,L是點數

  • label (int): 視頻剪輯的類別

返回類型

元組

Kinetics-400 數據集。

Kinetics-400 是一個動作識別視頻數據集。該數據集將每個視頻視為固定大小的視頻剪輯的集合,由 frames_per_clip 指定,其中每個剪輯之間的幀步長由 step_between_clips 給出。

舉個例子,對於分別有 10 幀和 15 幀的 2 個視頻,如果 frames_per_clip=5step_between_clips=5 ,數據集大小將為 (2 + 3) = 5,其中前兩個元素來自視頻 1,而視頻 2 中的下三個元素。請注意,我們會丟棄不完全包含 frames_per_clip 元素的剪輯,因此視頻中可能並非所有幀都存在。

在內部,它使用VideoClips對象來處理剪輯創建。

相關用法


注:本文由純淨天空篩選整理自pytorch.org大神的英文原創作品 torchvision.datasets.Kinetics400。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。