快捷方式

Kinetics

class torchvision.datasets.Kinetics(root: Union[str, Path], frames_per_clip: int, num_classes: str = '400', split: str = 'train', frame_rate: Optional[int] = None, step_between_clips: int = 1, transform: Optional[Callable] = None, extensions: tuple[str, ...] = ('avi', 'mp4'), download: bool = False, num_download_workers: int = 1, num_workers: int = 1, _precomputed_metadata: Optional[dict[str, Any]] = None, _video_width: int = 0, _video_height: int = 0, _video_min_dimension: int = 0, _audio_samples: int = 0, _audio_channels: int = 0, _legacy: bool = False, output_format: str = 'TCHW')[源代码]

通用 Kinetics 数据集。

Kinetics-400/600/700 是动作识别视频数据集。此数据集将每个视频视为一组固定大小的视频剪辑,由 frames_per_clip 指定,其中每个剪辑之间的帧步长由 step_between_clips 提供。

举个例子,对于两个分别有 10 和 15 帧的视频,如果 frames_per_clip=5step_between_clips=5,则数据集大小将为 (2 + 3) = 5,其中前两个元素来自视频 1,后三个元素来自视频 2。请注意,我们丢弃不包含确切 frames_per_clip 元素的剪辑,因此视频中的所有帧可能都不在数据集中。

参数:
  • root (str 或 pathlib.Path) –

    Kinetics 数据集的根目录。目录应按以下方式构建: .. code

    root/
    ├── split
    │   ├──  class1
    │   │   ├──  vid1.mp4
    │   │   ├──  vid2.mp4
    │   │   ├──  vid3.mp4
    │   │   ├──  ...
    │   ├──  class2
    │   │   ├──   vidx.mp4
    │   │    └── ...
    

    注意:split 会自动附加到使用 split 参数。

  • frames_per_clip (int) – 一个剪辑中的帧数

  • num_classes (int) – 选择 Kinetics-400(默认)、Kinetics-600 和 Kinetics-700 之间的

  • split (str) – 要考虑的数据集拆分;支持 "train"(默认)、"val""test"

  • frame_rate (float) – 如果省略,则为每个剪辑插值不同的帧率。

  • step_between_clips (int) – 每个剪辑之间的帧数

  • transform (callable, 可选) – 一个函数/转换,它接收 TxHxWxC 视频并返回转换后的版本。

  • download (bool) – 将官方版本的数据集下载到根文件夹。

  • num_workers (int) – 使用多个工作进程创建 VideoClips

  • num_download_workers (int) – 使用多进程以加快下载速度。

  • output_format (str, optional) – 输出视频张量的格式(在应用变换之前)。可以是“THWC”或“TCHW”(默认)。请注意,在大多数其他工具和数据集中,默认值实际上是“THWC”。

返回:

一个 3 元组,包含以下条目:

  • video (Tensor[T, C, H, W] 或 Tensor[T, H, W, C]): torch.uint8 张量中的 T 个视频帧

  • audio(Tensor[K, L]): 音频帧,其中 K 是通道数,L 是 torch.float 张量中的点数

  • label (int): 视频剪辑的类别

返回类型:

元组

抛出:

RuntimeError – 如果 download True 且视频存档已解压。

特殊成员:

__getitem__(idx: int) tuple[torch.Tensor, torch.Tensor, int][源代码]
参数:

index (int) – 索引

返回:

样本和元数据,可通过相应的变换进行可选变换。

返回类型:

(任意)

文档

访问全面的 PyTorch 开发者文档

查看文档

教程

为初学者和高级开发者提供深入的教程

查看教程

资源

查找开发资源并让您的问题得到解答

查看资源