REMEMBERING HISTORY WITH CONVOLUTIONAL LSTM FOR ANOMALY DETECTION——利用卷积LSTM记忆历史进行异常检测

本文主要是介绍REMEMBERING HISTORY WITH CONVOLUTIONAL LSTM FOR ANOMALY DETECTION——利用卷积LSTM记忆历史进行异常检测,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

上海科技大学的文章,上海科技大学有个组一直在做这方面的工作,好文章挺多的还有数据集。

ABSTRACT

本文解决了视频中的异常检测问题,由于异常是无界的,所以异常检测是一项极具挑战性的任务。我们通过利用卷积神经网络(CNN或ConvNet)对每一帧进行外观编码,并利用卷积长期记忆(ConvLSTM)来记忆与运动信息相对应的所有过去的帧来完成这项任务。然后将ConvNet和ConvLSTM与自动编码器相结合,即ConvLSTM-AE,学习普通时刻的外观和运动规律。与基于三维卷积自动编码器的异常检测相比,我们的主要贡献在于提出了一种ConvLSTMAE框架,该框架能够更好地对正常事件的外观变化和运动变化进行编码。为了评估我们的方法,我们首先在一个人工合成的移动MNIST数据集上进行了实验,实验结果表明,我们的方法可以很容易地识别出外观和运动的变化。在真实异常数据集上的大量实验进一步验证了该异常检测方法的有效性。

Index Terms :异常检测,卷积神经网络,长期短期记忆

 

  • 这篇文章的目的:检测视频异常事件。
  • 贡献:
  1. 我们开发了一个ConvLSTM-AE框架来编码外观和外观(运动)的变化,用于异常检测
  2. 在一个合成的运动MNIST数据集上的实验表明,我们提出的ConvLSTM-AE能够很容易地检测到由运动或外观引起的异常。在真实数据集上的实验进一步验证了该异常检测框架的有效性
  • 背景:以前方法不好,通常关注的是外形,他可以关注运动状态,保留空间信息。
  • 结果:比以前方法好
  • 方法 :将CNN和ConvLSTM集成在一个自动编码器框架内,以保证ConvLSTM能够记忆过去的信息。我们使用一个反卷积网络(DeconvNet)来重建过去的帧,并识别是否有异常发生,我们也用一个不同的DeconvNet来重建当前的帧。因此,重构误差是外观或运动变化的指示器。——重建误差
  • 感觉存在的问题:没有核心创新,拼接两个方法作为一个新的识别方法。粗略一看没有很大的启发。

Introduction

异常检测是计算机视觉中的一项重要任务,在视频监控、视频摘要、场景理解等领域有着广泛的应用。然而,由于这是一个不适定问题,这一任务仍然具有极大的挑战性,即异常事件的场景是无界的,因为收集所有异常事件对应的数据是极其困难或不可行的。相比之下,在视频中获取普通时刻要容易得多。因此,一种常见的异常检测设置是,在训练集中只有普通的时刻可用。1异常检测可以被描述为以下两个子问题:i)如何对外观和运动进行特征化;ii)如何对外观或运动的变化进行建模。在相当长的一段时间内,手工制作的功能[1][2]被用来表征视频中的外观和运动,然后稀疏表示方法[3][4][5]可以用来测量外观或运动的变化。然而,这种稀疏表示策略对于训练和测试都是非常耗时的。最近,在图像分类[6]和活动识别[7][8]中,深度神经网络显示了其相对于手工制作的特征的优势。最近,Hasan等人[9]提出使用基于3D卷积神经网络(ConvNet或CNN)的自动编码器框架,同时学习外观和运动之间的规律性,用于异常检测。然而,现有的许多活动识别工作表明,3D卷积对于运动特征[10][11]还不够好。

根据CNN的图像表示[6]的成功和长期短期记忆(LSTM)建模顺序数据的变化[7],在本文中,我们建议使用事先对每一帧进行编码和使用卷积LSTM (ConvLSTM) [12], LSTM的变种,保留了空间信息,记住外表的变化对应于运动信息。然后我们将CNN和ConvLSTM集成在一个自动编码器框架内,以保证ConvLSTM能够记忆过去的信息。我们使用一个反卷积网络(DeconvNet)来重建过去的帧,并识别是否有异常发生,我们也用一个不同的DeconvNet来重建当前的帧。因此,重构误差是外观或运动变化的指示器。我们将我们的框架称为基于ConvLSTM的自动编码器(简称ConvLSTM- ae)。在合成的Moving-MNIST数据集上的实验(图2和表1)表明,与[9]相比,我们的模型可以很容易地识别出外观和运动的变化,因此我们的框架更适合异常检测。

我们的工作总结如下:i)我们开发了一个ConvLSTM-AE框架来编码外观和外观(运动)的变化,用于异常检测;ii)在一个合成的运动MNIST数据集上的实验表明,我们提出的ConvLSTM-AE能够很容易地检测到由运动或外观引起的异常。在真实数据集上的实验进一步验证了该异常检测框架的有效性。

图1:我们的ConvLSTM-AE框架的展开架构。卷积模块表示卷积层。Deconv模块表示去卷积层。ConvLSTM模块表示卷积LSTM层。图中同一行的所有层都是相同的。对于除第一帧之外的每一帧的每个DeconvNet,左侧重建前一帧,右侧重建当前帧,而与第一帧对应的DeconvNet仅重建第一帧。

Fig. 4: The change of training reconstruction error of
ConvLSTM-AE on different datasets.

CONCLUSION

在这篇文章中,我们提出了一个基于自动编码器框架的卷积LSTM用于异常检测。通过使用CNN编码每一帧,每一帧的内容可以被很好的表示并且用于ConvLSTM可以将运动信息也很好的表示出来。同时,ConvLSTM保留了空间信息,这能够帮助当前和先前的帧进行重建,在合成的MNIST数据及上的实验表示该模型能够对外观和运动的变化有较强的鲁棒性。在全部的真实数据集上的实验进一步表示了我们的模型很好的性能以及具有很好的效率。

这篇关于REMEMBERING HISTORY WITH CONVOLUTIONAL LSTM FOR ANOMALY DETECTION——利用卷积LSTM记忆历史进行异常检测的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1141555

相关文章

Python如何实现PDF隐私信息检测

《Python如何实现PDF隐私信息检测》随着越来越多的个人信息以电子形式存储和传输,确保这些信息的安全至关重要,本文将介绍如何使用Python检测PDF文件中的隐私信息,需要的可以参考下... 目录项目背景技术栈代码解析功能说明运行结php果在当今,数据隐私保护变得尤为重要。随着越来越多的个人信息以电子形

使用 sql-research-assistant进行 SQL 数据库研究的实战指南(代码实现演示)

《使用sql-research-assistant进行SQL数据库研究的实战指南(代码实现演示)》本文介绍了sql-research-assistant工具,该工具基于LangChain框架,集... 目录技术背景介绍核心原理解析代码实现演示安装和配置项目集成LangSmith 配置(可选)启动服务应用场景

如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解

《如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解》:本文主要介绍如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别的相关资料,描述了如何使用海康威视设备网络SD... 目录前言开发流程问题和解决方案dll库加载不到的问题老旧版本sdk不兼容的问题关键实现流程总结前言作为

SpringBoot中使用 ThreadLocal 进行多线程上下文管理及注意事项小结

《SpringBoot中使用ThreadLocal进行多线程上下文管理及注意事项小结》本文详细介绍了ThreadLocal的原理、使用场景和示例代码,并在SpringBoot中使用ThreadLo... 目录前言技术积累1.什么是 ThreadLocal2. ThreadLocal 的原理2.1 线程隔离2

Python利用PIL进行图片压缩

《Python利用PIL进行图片压缩》有时在发送一些文件如PPT、Word时,由于文件中的图片太大,导致文件也太大,无法发送,所以本文为大家介绍了Python中图片压缩的方法,需要的可以参考下... 有时在发送一些文件如PPT、Word时,由于文件中的图片太大,导致文件也太大,无法发送,所有可以对文件中的图

如何使用Spring boot的@Transactional进行事务管理

《如何使用Springboot的@Transactional进行事务管理》这篇文章介绍了SpringBoot中使用@Transactional注解进行声明式事务管理的详细信息,包括基本用法、核心配置... 目录一、前置条件二、基本用法1. 在方法上添加注解2. 在类上添加注解三、核心配置参数1. 传播行为(

Java实战之自助进行多张图片合成拼接

《Java实战之自助进行多张图片合成拼接》在当今数字化时代,图像处理技术在各个领域都发挥着至关重要的作用,本文为大家详细介绍了如何使用Java实现多张图片合成拼接,需要的可以了解下... 目录前言一、图片合成需求描述二、图片合成设计与实现1、编程语言2、基础数据准备3、图片合成流程4、图片合成实现三、总结前

在Mysql环境下对数据进行增删改查的操作方法

《在Mysql环境下对数据进行增删改查的操作方法》本文介绍了在MySQL环境下对数据进行增删改查的基本操作,包括插入数据、修改数据、删除数据、数据查询(基本查询、连接查询、聚合函数查询、子查询)等,并... 目录一、插入数据:二、修改数据:三、删除数据:1、delete from 表名;2、truncate

微服务架构之使用RabbitMQ进行异步处理方式

《微服务架构之使用RabbitMQ进行异步处理方式》本文介绍了RabbitMQ的基本概念、异步调用处理逻辑、RabbitMQ的基本使用方法以及在SpringBoot项目中使用RabbitMQ解决高并发... 目录一.什么是RabbitMQ?二.异步调用处理逻辑:三.RabbitMQ的基本使用1.安装2.架构

Spring Boot统一异常拦截实践指南(最新推荐)

《SpringBoot统一异常拦截实践指南(最新推荐)》本文介绍了SpringBoot中统一异常处理的重要性及实现方案,包括使用`@ControllerAdvice`和`@ExceptionHand... 目录Spring Boot统一异常拦截实践指南一、为什么需要统一异常处理二、核心实现方案1. 基础组件