【发布时间】:2019-05-07 09:17:03
【问题描述】:
我目前正在从事一个项目,我正在尝试创建一个能够对视频中的动作进行分类的机器学习模型。我已经创建了一个脚本,它能够检测视频中的人并根据身体部位的运动生成数据。这会生成一个具有以下输入形状的 4D 数组:
(nframes, nperson, nbodyparts, 每个身体部位 3 个坐标)
仅 1 个持续时间为 3 秒且以 60fps/s 拍摄的视频(2 个人)的输入形状如下所示: (180, 2, 25, 3)
每个视频的 4D 数组都保存为一个 numpy 文件,所以如果我处理 400 个视频。我会得到 400 个 numpy 文件。
下一步是创建一个 keras 或 tensorflow RNN-LSTM 模型,该模型能够在 400 个 numpy 文件上进行训练,并能够处理每个视频的 4D 数组,但我真的不知道如何获得这个去工作。我已经搜索了一些解决方案,但我唯一可以做的就是 Keras 只能使用 3D 数组。
非常感谢您的帮助和对我如何解决这个问题的看法,希望有一个示例代码。
国王的问候,
【问题讨论】:
-
一种可能的方法是将
nbodyparts和coordinates合并到一个维度中,这样输入形状将是(180, 2, 75)。然而,对我来说,将最后三个轴合并为一个轴更有意义,因为它们的顺序并不重要。 -
你有没有机会知道关于如何重塑数组的教程,所以我可以通过合并 nbodyparts 和坐标来将数组重塑为 (180,2,75)。
标签: python tensorflow keras lstm recurrent-neural-network