我正在尝试构建一个手势识别系统来对ASL(美国手语)手势进行分类,所以我的输入应该是来自相机或视频文件的帧序列,然后它会检测序列并将其映射到对应的上课(睡觉、帮助、吃饭、跑步等)
问题是我已经建立了一个类似的系统,但对于静态图像(不包括运动),它仅对翻译字母很有用,其中构建CNN是一项直接的任务,因为手不会移动太多,而且数据集结构也是可管理的,因为我正在使用keras并且可能仍打算这样做(每个文件夹都包含一组特定标志的图像,文件夹的名称是该标志的类名,例如:A、B、C ,..)
我的问题在这里,我如何组织我的数据集以便能够将其输入到 keras 中的RNN以及我应该使用哪些特定函数来有效地训练我的模型和任何必要的参数,有些人建议使用TimeDistributed类但我不对如何使用它有一个清晰的想法,并考虑到网络中每一层的输入形状。
还考虑到我的数据集将由图像组成,我可能需要一个卷积层,如何将conv层组合到LSTM层中(我的意思是在代码方面)。
例如,我想我的数据集是这样的
名为“运行”的文件夹包含 3 个文件夹 1、2 和 3,每个文件夹对应于其序列中的帧
所以Run_1将包含第一帧的一组图像,第二帧的Run_2和第三帧的Run_3,我的模型的目标是用这个序列训练输出单词Run。