3D CNN 使用三维滤波器来执行卷积。内核能够在三个方向上滑动,而在 2D CNN 中它可以在二维上滑动。

首先安装并导入必要的库,用于处理ZIP文件内容的Remotezip 、用于使用进度条的tqdm 、用于处理视频文件的OpenCV 、用于执行更复杂的张量操作的einops,以及用于在 Jupyter Notebook 中嵌入数据的库。
- import tqdm
- import random
- import pathlib
- import itertools
- import collections
-
- import cv2
- import einops
- import numpy as np
- import remotezip as rz
- import seaborn as sns
- import matplotlib.pyplot as plt
-
- import tensorflow as tf
- import keras
- from keras import layers
定义了辅助函数,用于从 UCF-101 数据集中下载数据片段,并将其加载到tf.data.Dataset。如果要处理自己的数据集,可以阅读并参考。
- def list_files_per_class(zip_url):
- """
- 列出给定 zip URL 的数据集每个类中的文件。
- Args:
- zi