1.一种基于对象元的视频异常检测方法,其特征在于,包括如下步骤:S1:对一段任意场景的视频图像进行光流计算和对象检测,生成对象元;
所述步骤S1的具体过程为:
S11:选择一段任意场景的视频,按相同间隔进行视频帧提取,得到一组等时间间隔视频帧图像(Fr0,Fr1,Fr2,…,Frt‑1),视频帧个数为t;
S12:使用FlowNet网络计算等时间间隔视频帧图像中相邻帧之间的光流,得到光流图(Fl0,Fl1,Fl2,…,Flt‑1),个数为t‑1;
S13:使用Mask RCNN对前t‑1个等时间间隔视频帧图像进行对象检测和实例定位,得到每一个对象的类型信息和位置掩码信息;
S14:将类型信息和位置掩码信息进行编码,并转换为统一大小的Numpy数组,得到对象t类型元fi和对象位置元
S15:根据位置掩码信息对t‑1个光流图中的每一张图进行同位置光流提取,并将提取出的光流转换为统一大小的Numpy数组,得到对象光流元S16:根据位置掩码信息对前t‑1个等时间间隔视频帧图像中的每一帧进行对象像素提取,并将提取出的对象像素转换为统一大小的Numpy数组,得到对象像素元tS17:将每一个对象对应的对象类型元fi、对象位置元 对象光流元 和对象像素元进行维度合并,得到每一个对象所对应的对象元S2:将对象元输入多级记忆搜索引导自动编码器进行训练,得到图像重建模型;
S3:将图像重建模型应用于同一场景的待检测视频上,对待检测视频的对象进行图像重建;
S4:将重建的图像映射回原视频帧,根据图像间差异实现异常检测。
2.根据权利要求1所述的一种基于对象元的视频异常检测方法,其特征在于,所述步骤S2的具体过程为:S21:构建多级记忆搜索引导自动编码器;
S22:多级记忆搜索引导自动编码器的结构依次为第一级编码器、第一级记忆模块、第二级编码器、第二级记忆模块、第三级编码器、第三级记忆模块、第三级解码器、第二级解码器和第一级解码器;其中编码器负责对输入进行下采样编码,解码器负责对输入进行上采样解码,记忆模块负责存储编码器输出的编码;记忆模块的本质为N×C的矩阵,N为最大记录条数,C为所记录编码的维数,在训练时记忆模块打开存储功能,通过矩阵运算改变内部的矩阵值,从而实现存储;在检测时,记忆模块关闭存储功能,仅提供查询和重建功能,通过编码相似性查找与输入编码最接近的记录并输出;
S23:编码部分:第一级编码器、第二级编码器的结构依次为Conv层、BN层和LeakReLU层,第三级编码器的结构依次为Conv层、BN层、LeakReLU层、Conv层、BN层和LeakReLU层;
S24:解码部分:第三级解码器的结构依次为deConv层、BN层、LeakReLU层、deConv层、BN层和LeakReLU层,第二级解码器的结构依次为deConv层、BN层和LeakReLU层,第三级解码器的结构为单个deConv层;
S25:将待训练的对象元输入多级记忆搜索引导自动编码器后进行训练,得到图像重建模型。
3.根据权利要求1所述的一种基于对象元的视频异常检测方法,其特征在于,所述步骤S3的具体过程为:S31:对同一场景的待检测视频按照等时间间隔进行实时抽帧;
S32:将每一对相邻视频帧输入FlowNet网络计算出光流图;
S33:使用Mask RCNN对每一对相邻视频帧中的前一帧进行对象检测和实例分割,构造出其中的所有对象元,使用位置列表记录每一个对象元所表征的对象在原图像中的位置坐标;
S34:使用S2中训练得到的图像重建模型初始化多级记忆搜索引导自动编码器,使记忆模块加载记忆矩阵,完成记忆模块初始化;
S35:将每一对相邻视频帧所构造出的所有对象元输入多级记忆搜索引导自动编码器,经过编码器转换为编码,并输入记忆模块,记忆模块查找记忆矩阵得到在训练过程中记忆的与之最相似的编码进行输出,在经过多级编码和多级记忆搜索后得到最深层编码,再经过三级解码器进行上采样重建,从而得到重建对象元;
S36:计算在多级记忆搜索引导自动编码器对输入的对象元进行图像重建时的总损失函数L,所述总损失函数L由重构损失Lrec和记忆模块的熵损失Lent构成;假设模型的输入为对象元M,重构输出为 则在编解码过程中该对象元的重建损失为最小化l2距离:在记忆模块中,由于加入正则化策略以提高 的稀疏性,其会最小化 的熵,从而在每一个记忆模块中产生熵损失,因此对于第i级记忆模块,其熵损失为:其中, 为该记忆模块的输入匹配对应的记忆矩阵的第n行的概率,根据Lrec和Lent可以求得模型的总损失函数L:L=αLrec+βLent (3)
其中,α和β为平衡参数。
4.根据权利要求1所述的一种基于对象元的视频异常检测方法,其特征在于,所述步骤S4的具体过程为:S41:将每一个重建对象元按照位置列表中的记录映射回原图像中,在完成所有映射后得到除最后一帧视频帧图像外的所有视频帧图像的重建图像;
S42:根据重建图像与原图像的差异计算AUC分数;
S43:将AUC分数进行可视化处理,对一段待检测视频帧中的所有抽取视频帧依次按顺序进行标号,并计算出除最后一帧视频帧之外所有视频帧的AUC分数,在绘制可视化图时将标号集合作为x轴,将AUC分数集合作为y轴绘制折线图,折线图越平滑检测效果越好;
S44:对视频帧中的异常进行可视化标注:将重建图像与原图像进行相减处理,当相减处理时的噪点个数大于该对象本身像素个数的设定阈值时判定其为异常对象,并进行标注。