滑板者可以轻松识别其他滑板者表演的技巧。我们这个项目的目标是教计算机识别滑板技巧。给定一个滑板技巧的视频,计算机能否以高概率对该技巧进行分类?我们开发了一个数据集和一个机器学习模型,可以区分两种最常见的滑板技巧:ollies 和 kickflips。
我们首先收集了 200 多个踢腿翻转和奥利动作的短视频(1 到 2 秒)。我们将《使用 Tensorflow 进行计算机视觉实践》中描述的方法改编为我们的新数据集。数据从视频开始,然后通过卷积神经网络 (CNN)、长短期记忆 (LSTM) 模型,最后输出视频描述每一类技巧的概率。
例如,这里斯蒂芬执行了踢脚翻:
该模型以 0.9 的概率预测这是一个踢腿翻转,因此效果良好。我们发现,能看到滑板者全身的清晰视频比只看到滑板者腿部的视频效果更好。我们还发现,即使所有训练数据都是平地上的技巧,该模型也能够正确预测楼梯上的踢腿翻转。这表明该模型能够泛化到新的不同情况。
为了进一步开展这项工作,我们可以添加除 kickflip 和 ollies 之外的更多技巧,以及技巧的组合,例如 backside 180 kickflip。通过更多的训练数据和更多的模型调整,该模型可以变得足以与人类滑板运动员相媲美。
感谢 Justin Wang 和 Vessela Ensberg 对这个项目的帮助。
带标签的视频数据位于该存储库的Tricks
目录中。有两个子目录: Ollie
,其中包含 108 个滑板运动员表演 ollie 的视频;以及Kickflip
,其中包含 114 个滑板运动员表演 kickflip 的视频。这些目录中的每个文件都是一个短片,大约 2 秒,采用.mov
格式 (QuickTime)。要使用此数据进行监督机器学习,请使用Tricks
目录中的数据训练模型,并使用子目录作为标签。
只要您引用这项工作,您就可以自由地将这些数据用于学术目的。
滑板技巧分类
这个项目用最简单的语言对滑板技巧进行了分类。我们正在尝试使用机器学习来对每个滑板技巧进行分类。滑板技巧有很多,我们选择其中两个进行分类。我们在 Ollie 和 Kickflip 之间做出了选择。
因此,该算法将采用如上所示的输入,并输出其是 ollie 或 kickflip 的确定概率。
6 月 16 日待办事项:
6 月 23 日待办事项:
6 月 30 日待办事项:
7 月 7 日:
7 月 15 日:
7 月 21 日:
7 月 28 日:
8 月 4 日:
我们的目标是为 1-2 秒的视频剪辑提出合理的技巧分类器。我们计划使用任何最方便、最有效的方法来实现这一目标。
我们预处理数据的计划是将视频采样到一致的帧数和分辨率。例如,每个视频可以由 30 个帧组成,每个帧都是 480 x 360 (360p) 图像,因此每个视频都成为尺寸为 480 x 360 x 30 的 3d 数组(或张量)。这些是模型。颜色对于技巧分类并不重要,因此我们也可以转换为黑白。
总体思路是建立一个卷积神经网络(CNN),大致遵循图像分类的方法。
图像 CNN 使用卷积滤波器组合来自附近像素的空间局部信息。我们是否应该对时间上接近的像素做同样的事情?谷歌的教程使用了二维卷积。我们有什么理由不能使用 3d 卷积吗?当然,张量流有一个。有许多流行的学术论文正是这样做的。希望我们能够以这些想法为基础。