我是面部表情识别 Realm 的新手,目前我正在通过深度学习(特别是CNN)对此进行研究。关于准备和/或预处理我的数据,我有一些问题。

我已分割了正面表情的视频(例如,一个人根据自己的注解表达快乐情感的2-3秒视频)。

注意:我的参与者显示的表情强度很低(不是夸张的表情/微表情)

一般问题:现在,我应该如何准备数据以进行CNN训练(我有点倾向于使用深度学习库TensorFlow)?

问题1 :我已经阅读了一些基于深度学习的面部表情识别(FER)论文,这些论文建议最大限度地利用该表情(很可能是单个图像),并将该图像用作训练数据的一部分。我怎么知道表达式的峰值?我的依据是什么?如果我要拍摄一张照片,会不会丢失参与者显示的一些微妙表达的重要框架?

问题2 :或者在OpenCV中执行分段视频以检测(例如,Viola-Jones),裁剪并保存每帧人脸并将这些图像作为我的训练数据的一部分并适当标签?我猜想有些面孔是多余的。但是,由于我们知道数据中的参与者显示出较低的表情(微表情)强度,因此面部的一些移动也可能很重要。

非常感谢任何可以回答的人,非常感谢!

最佳答案

正如@unique猴子已经指出的那样,这通常是有监督的学习任务。如果要提取一个独立的“峰值”点,建议您扫描输入图像,并在每个序列中找到一个参考点与被摄体的静止状态最大偏离的图像。

如果您没有处于静止状态,那么如何裁剪视频片段?例如,是否要求受试者做表情并保持表情?剪辑覆盖整个表达式的哪一部分(在表达之前,在表达之后)?获取视频剪辑的一个或两个端点;绘制每个端点的参考点的运动,并寻找一个差异最大的帧,然后转向另一个端点。

10-07 19:53
查看更多