连续动作/手势识别应如何与孤立动作识别不同地执行

人工智能 深度学习 卷积神经网络 动作识别
2021-10-20 01:56:43

我将训练一个深度学习模型来对视频中的手势进行分类。由于该人将占据视频的几乎整个宽度/高度,并且我将对他或她正在做的手势进行分类,因此我不需要识别该人并在执行该动作的人周围创建一个边界框. 我只需要将视频序列分类到它们的类别标签。

我将在包含单个视频的数据集上进行训练,其中每个完整的视频剪辑都是特定的手势(所以它是像 UCF-101 这样的数据集,视频剪辑对应于类标签)。但是当我部署网络时,我希望神经网络在实时视频上运行。与实时视频的播放方式一样,它应该识别手势何时发生并指示它识别了该手势。

所以我想知道-如何在整个视频剪辑都是动作的孤立视频序列上训练神经网络(如上所述),但在实时视频上运行神经网络例如,我可以使用 3D CNN 吗?或者我必须使用带有 LSTM 网络的 2D CNN 来代替它来处理实时视频吗?我担心的是,由于 3D CNN 会在许多帧上执行过滤器,所以在每一帧上运行 CNN 不会让它变得非常慢吗?但是,如果我使用带有 LSTM 的 2D CNN,那会更快吗?或者两者都可以正常工作?

提前谢谢你的帮助。

1个回答

这个问题其实包括很多。我试着回答几个。

首先,您需要确保您的用例了解非功能性需求。知道你有一个软实时案例是有帮助的(如果在预测太晚的情况下造成伤害,它也可能是硬实时的)

  1. 延迟:从做出动作到预测出现之前可能要经过多长时间?
  2. 预测的稳定性:系统允许改变预测的速度有多快?每 0.5 秒一次?
  3. 一般硬件,尤其是内存使用
  4. 优化指标:也许准确性并不能告诉您足够的信息?
  5. 评估设置:可能,您需要为每个视频设置多个“评估点”,例如,系统有 1 秒后一次,系统有 1.5 秒后一次,......您还需要考虑预测的稳定性。

现在是关于如何做到这一点的问题。如果您到目前为止还没有尝试过,我建议您查看光流