论文部分内容阅读
【摘 要】在真实的世界里,存在着复杂的场景以及不同视角等情况,计算机识别人体行为不是简单的事情。计算机几乎很难知道对于人体行为会具有什么样的特征,因为特征的选择与具体的问题高度依赖。特别是行为识别上,不同的行为类型在外观和行为模型上都呈现出非常大的不同。
【关键词】视频 行为识别 检测
近年来,各种视频监控越来越深入我们的生活中。因其实时性、直观性以及设备成本日益降低在各行各业中而倍受青睐。但视频监控系统还是依靠人工来控制,没有进入数字化的全天实时监测、智能分析图像数据。要实现完全数字化的监控的关键在于人体行为的智能识别。
早些时候有人提出并且应用了智能图像识别的卷积神经网络,它是在原始的输入中应用可训练的滤波器和局部邻域池化操作,来得到一个分级的且逐渐复杂的特征表示。实践表示,采用合适的规则化项来训练,它可以达到非常好的效果。比较好的地方是对姿势、光照和复杂背景存在不变性,单只受限在2D输入的舞台。本文文章提出了一个新的3D卷积神经网络模型,用于运动识别。该模型可以从空间和时间的维度提取特征,然后进行3D卷积,以捕捉从多个连续帧得到的运动信息。为了有效的综合运动信息,文中通过在卷积神经网络的卷积层进行3D卷积,以捕捉空间上、时间上的维度,让其都具有区分性的特征。
3D卷积是通过堆叠多个连续的帧组成一个立方体,然后在立方体中运用3D卷积核。在其中,卷积层中每一个特征map都会与上一层中多个邻近的连续帧相连,以捕捉运动信息。一个卷积map的某一位置的值是通过卷积上一层的三个连续的帧的同一个位置的局部感受得到的。要强调的是:3D卷积核只能从cube中提取一种类型的特征,因为在整个cube中卷积核的权值都是一样的,也就是共享权值,都是同一个卷积核。可以采用多种卷积核,以提取多种特征。有一个通用的设计规则就是:在后面的层(离输出层近的)特征map的个数应该增加,这样就可以从低级的特征maps组合产生更多类型的特征。本文中的3D 卷积神经网络架构包含一个硬连线hardwired层、3个卷积层、2个下采样层和一个全连接层。每个3D卷积核卷积的立方体是连续7帧,每帧patch大小是60x40。
在第一层,应用了一个固定的hardwired的核去对原始的帧进行处理,产生多个通道的信息,然后对多个通道分别处理。最后再将所有通道的信息组合起来得到最终的特征描述。这个实线层实际上是编码对特征的先验知识,这比随机初始化性能要好。
每帧提取五个通道的信息,分别是:灰度、x和y方向的梯度,x和y方向的光流。其中,前面三个都可以每帧都计算。然后水平和垂直方向的光流场需要两个连续帧才确定。所以是7x3 + (7-1)x2=33个特征maps。然后用一个7x7x3的3D卷积核(7x7在空间,3是时间维)在五个通道的每一个通道分别进行卷积。为了增加特征map的个数(实际上就是提取不同的特征),在每一个位置都采用两个不同的卷积核,这样在C2层的两个特征maps组中,每组都包含23个特征maps。23是(7-3+1)x3+(6-3+1)x2前面那个是:七个连续帧,其灰度、x和y方向的梯度这三个通道都分别有7帧,然后水平和垂直方向的光流场都只有6帧。54x34是(60-7+1)x(40-7+1)。
在紧接着的下采样层S3层max pooling,在C2层的特征maps中用2x2窗口进行下采样,这样就会得到相同数目但是空间分辨率降低的特征maps。下采样后,就是27x17=(52/2)*(34/2)。 C4是在5个通道中分别采用7x6x3的3D卷积核。为了增加特征maps个数,在每个位置都采用3个不同的卷积核,这样就可以得到6组不同的特征maps,每组有13个特征maps。13是((7-3+1)-3+1)x3+((6-3+1)-3+1)x2前面那個是:七个连续帧,其灰度、x和y方向的梯度这三个通道都分别有7帧,然后水平和垂直方向的光流场都只有6帧。21x12是(27-7+1)x(17-6+1)。
S5层用的是3x3的下采样窗口,所以得到7x4. 到这个阶段,时间维上帧的个数已经很小了。在这一层,只在空间维度上面卷积,这时候使用的核是7x4,然后输出的特征maps就被减小到1x1的大小。而C6层就包含有128个特征map,每个特征map与S5层中所有78(13x6)个特征maps全连接,这样每个特征map就是1x1,也就是一个值了,而这个就是最终的特征向量了。
经过多层的卷积和下采样后,每连续7帧的输入图像都被转化为一个128维的特征向量,这个特征向量捕捉了输入帧的运动信息。输出层的节点数与行为的类型数目一致,而且每个节点与C6中这128个节点是全连接的。采用一个线性分类器来对这128维的特征向量进行分类,实现行为识别。模型中所有可训练的参数都是随机初始化的,然后通过在线BP算法进行训练。
3D 卷积神经网络模型的输入被限制为一个少的连续视频帧,因为随着输入窗口大小的增加,模型需要训练的参数也会增加。当然有些人的行为是跨越很多帧的,所以在3D 卷积神经网络模型中,有必要捕捉这种高层的运动信息。需要用大量的帧来计算运动特征,然后把这些运动特征作为辅助输出去规则化3D 卷积神经网络模型。
对于每一个需要训练的行为,提取其长时间的行为信息,作为其高级行为特征。这个运动信息因为时间够长,所以要比卷积神经网络的输入帧的立方体包含的信息要丰富很多。然后我们就迫使卷积神经网络学习一个非常接近这个特征的特征向量。这可以通过在卷积神经网络的最后一个隐层再连接一系列的辅助输出节点,然后训练过程中,使提取的特征更好的逼近这个计算好的高层的行为运动特征向量。
试验中,在原始的灰度图像中计算稠密sift描述子,然后通过这些sift描述子和运动边缘历史图像(MEHI)组合构造bag-of-words特征作为辅助特征。 因为灰度图保留了外观信息,运动边缘历史图像只关心形状和运动模式,所以可以提取这两个互补的信息作为两个连续帧的局部特征bag。先简单的计算两帧间的差分,这样就可以保留运动信息,然后对其执行一次Canny边缘检测,这样可以使得观测图像更加清楚简洁。最总的运动边缘图像就是将历史的这些图像乘以一个遗忘因子再累加起来得到。
本文中,构造不同的3D 卷积神经网络模型,它可以从输入捕捉潜在的互补信息,然后在预测阶段,每个模型都针对一个输入得到对应的输出,然后再组合这些输出得到最终的结果。
作者简介:
王 杰,男,汉族,山东烟台人,烟台南山学院软件工程学院,硕士,教师,助教,教育技术。
王君明,女,汉族,山东烟台人,烟台南山学院软件工程学院,硕士,教师,助教,影视艺术。
【关键词】视频 行为识别 检测
近年来,各种视频监控越来越深入我们的生活中。因其实时性、直观性以及设备成本日益降低在各行各业中而倍受青睐。但视频监控系统还是依靠人工来控制,没有进入数字化的全天实时监测、智能分析图像数据。要实现完全数字化的监控的关键在于人体行为的智能识别。
早些时候有人提出并且应用了智能图像识别的卷积神经网络,它是在原始的输入中应用可训练的滤波器和局部邻域池化操作,来得到一个分级的且逐渐复杂的特征表示。实践表示,采用合适的规则化项来训练,它可以达到非常好的效果。比较好的地方是对姿势、光照和复杂背景存在不变性,单只受限在2D输入的舞台。本文文章提出了一个新的3D卷积神经网络模型,用于运动识别。该模型可以从空间和时间的维度提取特征,然后进行3D卷积,以捕捉从多个连续帧得到的运动信息。为了有效的综合运动信息,文中通过在卷积神经网络的卷积层进行3D卷积,以捕捉空间上、时间上的维度,让其都具有区分性的特征。
3D卷积是通过堆叠多个连续的帧组成一个立方体,然后在立方体中运用3D卷积核。在其中,卷积层中每一个特征map都会与上一层中多个邻近的连续帧相连,以捕捉运动信息。一个卷积map的某一位置的值是通过卷积上一层的三个连续的帧的同一个位置的局部感受得到的。要强调的是:3D卷积核只能从cube中提取一种类型的特征,因为在整个cube中卷积核的权值都是一样的,也就是共享权值,都是同一个卷积核。可以采用多种卷积核,以提取多种特征。有一个通用的设计规则就是:在后面的层(离输出层近的)特征map的个数应该增加,这样就可以从低级的特征maps组合产生更多类型的特征。本文中的3D 卷积神经网络架构包含一个硬连线hardwired层、3个卷积层、2个下采样层和一个全连接层。每个3D卷积核卷积的立方体是连续7帧,每帧patch大小是60x40。
在第一层,应用了一个固定的hardwired的核去对原始的帧进行处理,产生多个通道的信息,然后对多个通道分别处理。最后再将所有通道的信息组合起来得到最终的特征描述。这个实线层实际上是编码对特征的先验知识,这比随机初始化性能要好。
每帧提取五个通道的信息,分别是:灰度、x和y方向的梯度,x和y方向的光流。其中,前面三个都可以每帧都计算。然后水平和垂直方向的光流场需要两个连续帧才确定。所以是7x3 + (7-1)x2=33个特征maps。然后用一个7x7x3的3D卷积核(7x7在空间,3是时间维)在五个通道的每一个通道分别进行卷积。为了增加特征map的个数(实际上就是提取不同的特征),在每一个位置都采用两个不同的卷积核,这样在C2层的两个特征maps组中,每组都包含23个特征maps。23是(7-3+1)x3+(6-3+1)x2前面那个是:七个连续帧,其灰度、x和y方向的梯度这三个通道都分别有7帧,然后水平和垂直方向的光流场都只有6帧。54x34是(60-7+1)x(40-7+1)。
在紧接着的下采样层S3层max pooling,在C2层的特征maps中用2x2窗口进行下采样,这样就会得到相同数目但是空间分辨率降低的特征maps。下采样后,就是27x17=(52/2)*(34/2)。 C4是在5个通道中分别采用7x6x3的3D卷积核。为了增加特征maps个数,在每个位置都采用3个不同的卷积核,这样就可以得到6组不同的特征maps,每组有13个特征maps。13是((7-3+1)-3+1)x3+((6-3+1)-3+1)x2前面那個是:七个连续帧,其灰度、x和y方向的梯度这三个通道都分别有7帧,然后水平和垂直方向的光流场都只有6帧。21x12是(27-7+1)x(17-6+1)。
S5层用的是3x3的下采样窗口,所以得到7x4. 到这个阶段,时间维上帧的个数已经很小了。在这一层,只在空间维度上面卷积,这时候使用的核是7x4,然后输出的特征maps就被减小到1x1的大小。而C6层就包含有128个特征map,每个特征map与S5层中所有78(13x6)个特征maps全连接,这样每个特征map就是1x1,也就是一个值了,而这个就是最终的特征向量了。
经过多层的卷积和下采样后,每连续7帧的输入图像都被转化为一个128维的特征向量,这个特征向量捕捉了输入帧的运动信息。输出层的节点数与行为的类型数目一致,而且每个节点与C6中这128个节点是全连接的。采用一个线性分类器来对这128维的特征向量进行分类,实现行为识别。模型中所有可训练的参数都是随机初始化的,然后通过在线BP算法进行训练。
3D 卷积神经网络模型的输入被限制为一个少的连续视频帧,因为随着输入窗口大小的增加,模型需要训练的参数也会增加。当然有些人的行为是跨越很多帧的,所以在3D 卷积神经网络模型中,有必要捕捉这种高层的运动信息。需要用大量的帧来计算运动特征,然后把这些运动特征作为辅助输出去规则化3D 卷积神经网络模型。
对于每一个需要训练的行为,提取其长时间的行为信息,作为其高级行为特征。这个运动信息因为时间够长,所以要比卷积神经网络的输入帧的立方体包含的信息要丰富很多。然后我们就迫使卷积神经网络学习一个非常接近这个特征的特征向量。这可以通过在卷积神经网络的最后一个隐层再连接一系列的辅助输出节点,然后训练过程中,使提取的特征更好的逼近这个计算好的高层的行为运动特征向量。
试验中,在原始的灰度图像中计算稠密sift描述子,然后通过这些sift描述子和运动边缘历史图像(MEHI)组合构造bag-of-words特征作为辅助特征。 因为灰度图保留了外观信息,运动边缘历史图像只关心形状和运动模式,所以可以提取这两个互补的信息作为两个连续帧的局部特征bag。先简单的计算两帧间的差分,这样就可以保留运动信息,然后对其执行一次Canny边缘检测,这样可以使得观测图像更加清楚简洁。最总的运动边缘图像就是将历史的这些图像乘以一个遗忘因子再累加起来得到。
本文中,构造不同的3D 卷积神经网络模型,它可以从输入捕捉潜在的互补信息,然后在预测阶段,每个模型都针对一个输入得到对应的输出,然后再组合这些输出得到最终的结果。
作者简介:
王 杰,男,汉族,山东烟台人,烟台南山学院软件工程学院,硕士,教师,助教,教育技术。
王君明,女,汉族,山东烟台人,烟台南山学院软件工程学院,硕士,教师,助教,影视艺术。