1.一种基于深度学习的视频异常行为检测方法,包括训练阶段和测试阶段,其特征在于:
所述的训练阶段具体如下:
首先进行预处理:选取待检测视频数据集,视频数据集包含训练数据集和测试数据集,训练数据集中的训练数据全是正常行为样本;提取训练数据集的灰度图序列,图像尺寸规范化为M×N,M和N分别代表图像的宽和高;并通过训练数据集的灰度图序列计算光流图序列,得到训练数据集的灰度图数据集和光流图数据集;然后进行如下操作:步骤(1).将训练数据集中的灰度图数据集的灰度图像用网格的方式分割成不重叠的空间块,每一帧图像尺寸为M×N,分割成大小为p×p的空间块gri;将空间位置上相同的连续t帧的空间块组合成一个时空样本gr=[gr1,gr2,…,grt],尺寸大小为t×p×p;
将训练数据集中的光流图数据集的光流图像用网格的方式分割成不重叠的空间块,每一帧图像尺寸为M×N,分割成大小为p×p的空间块ori;将空间位置上相同的连续t帧的空间块组合成一个时空样本or=[or1,or2,…,ort],尺寸大小为t×p×p;
由此,将训练数据集划分为灰度图像时空样本集Gr和光流图像时空样本集Or;
步骤(2).搭建残差自编码网络,所述的残差自编码网络结构分为输入层、中间网络层和输出层;中间网络层由a层卷积层,b层卷积长短时记忆层,a层反卷积层组成,并采用残差结构的方式进行组合连接;
步骤(3).将训练数据集的灰度图像时空样本集Gr输入到步骤(2)的残差自编码网络中进行迭代训练,以输出数据与输入数据的均方误差作为训练的目标函数,最大迭代次数为
200次,或者目标函数相比于上一次迭代结果的变化值小于0.1时,停止迭代;训练完成后得到基于灰度图像数据重构的模型A1;将灰度图像时空样本集Gr输入到模型A1中,得到模型A1输出数据,将输入数据与模型A1输出数据相减结果的二范数作为重构误差,重构误差的最大值,记作α;
将训练数据集的光流图像时空样本集Or输入到步骤(2)的残差自编码网络中进行迭代训练,以输出数据与输入数据的均方误差作为训练的目标函数,最大迭代次数为200次,或者目标函数相比于上一次迭代结果的变化值小于0.1时,停止迭代;训练完成后得到基于光流图像数据重构的模型A2;将光流图像时空样本集Or输入到模型A2中,得到模型A2输出数据,将输入数据与模型A2输出数据相减结果的二范数作为重构误差,重构误差的最大值,记作β;
所述的测试阶段具体如下:
首先进行预处理:选取待检测视频数据集,提取测试数据集的灰度图序列,图像尺寸规范化为M×N,M和N分别代表图像的宽和高;并通过测试数据集的灰度图序列计算光流图序列,得到测试数据集的灰度图数据集和光流图数据集;然后进行如下操作:步骤(4).将测试数据集中的灰度图数据集的灰度图像用网格的方式分割成不重叠的空间块,每一帧图像尺寸为M×N,分割成大小为p×p的空间块gei;将空间位置上相同的连续t帧的空间块组合成一个时空样本ge=[ge1,ge2,…,get],尺寸大小为t×p×p;得到测试数据集的灰度图像时空样本测试集Ge;
步骤(5).将灰度图像的时空样本测试集Ge输入到模型A1中,经过各层网络处理后得到数据重构的输出,将输入数据与输出数据相减,并计算相减结果的二范数作为输入与输出之间的重构误差E1;重构误差E1小于或等于α的样本数据检测为正常区域,大于α的样本数据检测为可疑区域;
步骤(6).提取可疑区域的光流图像,并用网格的方式分割成不重叠的空间块,每一帧图像尺寸为M×N,分割成大小为p×p的空间块oei;将空间位置上相同的连续t帧的空间块组合成一个时空样本oe=[oe1,oe2,…,oet],尺寸大小为t×p×p;得到可疑区域光流图像时空样本测试集Oe;
步骤(7):将Oe输入到模型A2中,得到数据重构的输出,将输入数据与输出数据相减,并计算相减结果的二范数作为输入与输出之间的重构误差E2;重构误差E2小于或等于β的样本数据检测为正常区域,大于β的样本数据检测为异常区域;
由此,得到测试数据集的检测结果,完成整个系统的异常检测。