基于深度神经网络的行为识别方法及智能报警装置
文献发布时间:2023-06-19 12:10:19
技术领域
本发明涉及数据识别领域,具体涉及基于深度神经网络的行为识别方法及智能报警装置。
背景技术
随着社会的发展,人们越来越向往更为安全的生活环境,而公共场所存在的大量安全隐患,例如交通事故、恶意伤人等公共安全问题,这也是城市安保工作中的重要问题。计算机视觉相关技术在当今互联网中发挥着重要的作用,因此视频分析算法具有非常多的应用场景和重要的商业价值。近年来随着互联网的快速发展,城市安保工作与互联网的关系越来越密切,更多的场景开始大量部署监控摄像头,每时每刻都会产生海量的视频图像数据。传统的视频图像数据往往采取人工观察的方式来分析视频内容,需要大量的人力资源并且效率十分低下,无法满足实际需求,因此,采用人工智能技术实现智能视频分析的重要性不言而喻,视频分析算法具有极大的应用价值。
目前,视频分析算法主要有以下几种:(1)基于光流的视频分析算法。这类算法比较传统,主要是利用相邻视频帧之间的运动轨迹,计算得到视频片段的光流序列,再结合传统机器学习分类法,得到视频片段的分类信息。由于光流具有光线不变性,不易受外界条件的干扰,因此视频分析准确率相比以往的深度学习模型更高一些,但是计算光流的过程需要消耗大量的计算资源,因此在实际应用场景中比较受限。
(2)基于3D CNN的视频分析算法。这类算法利用传统的深度学习处理图片的思维来处理视频,相比较图片特征而言,视频片段具有更要的时序特征信息,因此将在图片处理领域取得突出成绩的卷积神经网络拓展到三维,即在处理二维空间特征的同事还考虑视频帧之间的时序特征,使用三维卷积神经网络处理视频信息可以得到视频的完整表述特征,从而对该特征进行处理。但是由于视频流包含的图片信息很多,因此也需要消耗大量的计算量,性能消耗综合处理能力适用场景较为受限。
(3)基于LSTM的视频分析算法。这类算法在3D CNN视频分析算法的基础上做了一部分改进,针对视频流中包含的行为尺度不同,将不同时间段的视频帧特征排列为一个特征序列,然后从过去的特征序列中提取部分视频帧作为补偿特征,从而能够综合不同时间段的特征信息,得到较为全面的视频特征。但是LSTM基于相邻帧之间的特征进行推理,而实际行为间隔往往是在1至10秒之间,这其中所包含的特征区间远远超出LSTM所涵盖的范围,因此基于LSTM的视频分析算法在实际应用中,对于识别不同尺度的行为具有较大的改进空间。
(4)基于多源信息融合的视频分析算法。近年来,监控视频往往会包括额外的音频信息,特殊场景下还有可能通过不熟其他的传感器来获取额外的信息。多元信息融合的方式是将捕获到的多种信息特征进行融合,从而能够更加全面的分析和判断当前视频片段是否出现了目标事件。由于基于多源信息融合的视频分析算法需要多源信息采集设备,因此,在实际部署过程中,往往需要更高的部署成本、维护成本。
(5)基于传统机器学习的视频分析算法。使用传统机器学习算法对特定场景下的监控内容进行建模,通过分析光流变化情况预测当前是否出现符合建模要求的事件。这种方法通过提前设定规则的形式进行判断,局限性较大,无法满足当前大规模应用场景的需求。
发明内容
本发明是为了解决上述问题而进行的,目的在于提供基于深度神经网络的行为识别方法及智能报警装置。
本发明提供了一种基于深度神经网络的行为识别方法,用于对目标视频流中的暴力行为进行识别,具有这样的特征,包括如下步骤:步骤S1,解析目标视频流,获取非结构视频数据,对非结构视频数据进行结构化处理,得到多个视频帧;步骤S2,对多个视频帧进行稀疏采样,得到多个代表视频帧,多个代表视频帧组成代表视频帧序列;步骤S3,提取代表视频帧序列的空间特征向量,得到空间特征序列;步骤S4,提取空间特征序列中多个代表视频帧的图像的时序特征向量,得到时序特征序列;步骤S5,将时序特征序列输入时序推理模型,计算多个图像特征向量之间的时序关系,得到行为特征向量;步骤S6,将行为特征向量输入训练后的行为识别模型,行为识别模型具有多个目标暴力行为特征向量,将行为特征向量分别与多个目标暴力行为特征向量进行对比,得到多个相似度数据,并对多个相似度数据进行排序,得到排序结果;步骤S7,根据排序结果得出目标视频流中的暴力行为预测结果。
在本发明提供的基于深度神经网络的行为识别方法中,还可以具有这样的特征:其中,对于步骤S3得到的空间特征序列中包含的每一帧视频帧都进行静帧检测,当检测到当前视频帧与上一个有效帧的相似度大于等于百分之八十五时,则认为该视频帧为有效帧,继续进行步骤S4的处理;当检测到当前视频帧与上一个有效帧的相似度小于百分之八十五时,则认为该视频帧为无效帧,放弃对其进行处理。
在本发明提供的基于深度神经网络的行为识别方法中,还可以具有这样的特征:其中,行为识别模型是以one-hot向量表示不同的目标暴力行为特征向量的不同属性。
在本发明提供的基于深度神经网络的行为识别方法中,还可以具有这样的特征:其中,多个目标暴力行为特征向量由用户定义,每个目标暴力行为特征向量具有不同的特征属性。
在本发明提供的基于深度神经网络的行为识别方法中,还可以具有这样的特征:其中,特征属性包括内容可穷举的特征属性和内容不可穷举的特征属性,内容可穷举的特征属性直接进行one-hot编码,以one-hot向量表示;内容不可穷举的特征属性由用户划分为多个内容范围,对内容范围进行one-hot编码,以one-hot向量表示。
在本发明提供的基于深度神经网络的行为识别方法中,还可以具有这样的特征:其中,在步骤S3中,使用ResNet模型提取代表视频帧序列的空间特征。
在本发明提供的基于深度神经网络的行为识别方法中,还可以具有这样的特征:其中,在步骤S4中,时序推理模型为TRN模型。
在本发明提供的基于深度神经网络的行为识别方法中,还可以具有这样的特征:其中,空间特征向量和时序特征向量均设置有最大提取数量,最大提取数量由用户定义。
在本发明提供的基于深度神经网络的行为识别方法中,还可以具有这样的特征:其中,行为识别模型的训练过程包括如下步骤:步骤A1,根据预定的多种暴力行为类别建立神经网络模型,并基于信息模型建立多种暴力行为的特征的标签,得到多种暴力行为的特征向量;步骤A2,将一个训练用视频片段处理后得到训练用视频帧,将训练用视频帧输入信息模型,提取训练用视频帧的空间特征,得到训练用视频帧的空间特征向量;步骤A3,将训练用视频帧的空间特征向量输入时序推理模型,得到训练用视频帧的时序特征向量;步骤A4,将训练用视频帧的时序特征向量与多种暴力行为的特征向量分别对比,得到训练用视频帧的预测结果;步骤A5,使用不同的训练用视频重复步骤A1-A4,得到训练后的行为识别模型。
本发明提供了一种智能报警装置,用于对暴力行为进行识别并向用户示警,具有这样的特征,包括:拍摄模块,用于拍摄视频;识别模块,与拍摄模块通讯连接,用于接收拍摄模块传输的视频并识别暴力行为;警示模块,与识别模块通讯连接,用于接收并显示识别模块传输的预测结果,包括事件类别、事件概率、事件地点以及事件时间,其中,事件概率和事件类别是通过算法对视频流的计算和处理得到的,事件地点以及发生事件可以通过获取该任务的配置信息得到,识别模块使用如前任意一项的基于深度神经网络的行为识别方法进行识别。
发明的作用与效果
根据本发明所涉及的基于深度神经网络的行为识别方法,由于能够将从摄像头获取到的视频流进行处理之后,得到视频帧序列,然后提取视频帧序列的空间特征向量和时间特征向量,同时,预训练好的模型含有指定目标暴力行为特征向量,将指定目标暴力行为特征向量于视频帧中提取的特征向量进行对比,所以能够综合分析当前监控场景下是否发生目标暴力事件,局限性较小。同时,本发明的行为识别方法计算量较小,在实际应用场景中受限较少,满足当前大规模应用场景的需求,且维护成本和部署成本较低。
根据本发明所涉及的智能报警装置,因为具有拍摄模块、识别模块以及警示模块,所以能够获取并分析监控视频,在出现目标暴力事件时能够及时通知相关的安保人员,能够广泛应用于各个公共场所或有安防需求的场景,且能够进一步降低安防的工作量,提高安防的工作效率。
附图说明
图1是本发明的实施例中智能报警装置的功能框图;
图2是本发明的实施例中基于深度神经网络的行为识别方法的流程图;
图3是本发明的实施例中神经网络模型的结构;
图4是本发明的实施例中的行为识别模型的训练过程。
具体实施方式
为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,以下实施例结合附图对本发明基于深度神经网络的行为识别方法及智能报警装置作具体阐述。
<实施例>
本实施例的操作系统为ubuntu16.04,使用的语言为Python3.7,神经网络框架使用pytorch 1.3版本,CUDA版本为10.0,计算加速单元使用NVIDIA 1080Ti GPU。
本实施例中以在线智能安防平台中的一个服务项为例进行说明,出于对隐私信息的保护,本实施例的描述中不出现真实数据,仅就工作原理做必要说明。
本实施例中在线智能安防平台中的服务项的用户是负责安保工作的安防人员。本实施例中服务项通过智能报警装置来实现对部署摄像头的场景提供更加全面实时的智能监控,能够及时监测到异常事件的发生,且当检测到结果是能够及时向用户提供检测结果信息,为安保人员争取突发事件的应对和处理时间。本实施例输出的检测结果包括视频快照、发生时间、发生时间、发生概率、发生地点等信息。
图1是本实施例中智能报警装置的功能框图。
如图1所示,本实施例提供了一种智能报警装置100包括拍摄模块10、识别模块20以及警示模块30。
本实施例中拍摄模块10为预先部署在场景中的摄像头。
识别模块20与拍摄模块10通讯连接,通过基于深度神经网络的行为识别方法对拍摄模块10拍摄的视频中的暴力行为进行识别。
警示模块30收到zeroMQ发送的数据包后,根据相应数据,对安保人员进行示警。
本实施例基于深度神经网络的行为识别方法中,先要对上述服务项中已有的内容进行预先处理,处理步骤如下:
首先选取设备属性信息,并获取硬件设备的基本属性信息,其集合构成了识别模块20的资源信息;然后根据用户的需求选取供给内容的属性,并获得各个供给内容的特征属性;根据训练过程中使用的供给内容数据集(即训练用视频片段)处理出5个类别,对每个类别做嵌入处理,嵌入维度定位1024,从而保证其短期内的可扩展性。
本实施例中的设备属性信息包括服务器账户名、服务器密码、ip地址、GPU使用情况、摄像头账户名、摄像头密码、摄像头ip地址、摄像头部署位置、任务类别以及任务检测目标等。本实施例中的供给内容属性包括发生时间、发生地点、发生类别、发生概率、任务开始时间、视频快照等。
图2是本实施例基于深度神经网络的行为识别方法的流程图。
如图2所示,本实施例提供的基于深度神经网络的行为识别方法,包括如下步骤:
步骤S1,根据设备属性信息从对应的摄像头获取视频监控信息,从摄像头对应的地址拉取视频流,获取到视频流之后需要对其进行解码操作,然后通过ffmpeg工具将其转换为rtmp格式,再通过python opencv对其进行解码,提取监控视频数据,再将监控视频数据进行结构化处理,得到多个视频帧。
根据本发明的方法所应用的具体业务场景,从不同领域、不同角度为视频内容定义属性。每种属性为预先定义,采用枚举的形式列出供给内容的多个供给属性,并为各个类别的视频内容属性打上one-hot向量形式的标签。也就是说,本发明的预训练模型的形式是以one-hot向量表示各个行为类别的不同供给属性,相当于对供给内容进行了一种分类。另外,以前述供给信息模型为某一具体的供给内容进行描述时,实际形式是该供给内容的完整多标签集合。
在本实施例中,选取的属性信息为发生时间、发生地点、任务启动时间、事件概率等,再为每个供给内容的10个属性打上准确的标签,标签使用one-hot向量的形式。
在本实施例中,先对监控视频信息进行相关性筛选,通过静帧检测技术保留全部与业务场景相关的信息属性。由于监控视频数据一般都是非结构化数据,因此需要先对其进行结构化处理,使其包含系统所需要的各方面的信息,这些信息也具有不同的属性。对于内容可穷举的用户属性,直接进行one-hot编码从而以one-hot形式表示;对于内容不可穷举的用户属性,根据该用户属性可能的内容,进行人为定义,将内容划分为多个内容范围,使其能够穷举(即对应到相应的内容范围),再进行one-hot编码从而以one-hot形式表示。每一种信息或属性均可视作用户的一种分类方式。使用预训练好的信息模型对视频片段进行描述,即该系统的完整多标签集合。
步骤S2,将步骤S1中得到的视频帧进行归一化预处理,然后将处理后的多个视频帧根据稀疏采样策略重新组成新的视频帧序列。
步骤S3,根据ResNet50神经网络模型对预处理后的视频帧序列进行处理,首先提取每张视频帧的空间特征向量,获取每张视频帧包含的独立信息,得到空间特征序列。
在本实施例中,对于系统来说,由于视频分析的内容包含了所有的实时监控数据,其数据量较大,所采用的空间特征提取方法是提取SIFT特征,使用了ResNet50网络;对于系统用户来说,由于其输入的数据量有限,可将其模拟成视频流的部分片段输入到模型中。
步骤S4,提取空间特征序列中多个代表视频帧的图像的时序特征向量,得到时序特征序列。
步骤S5,采用TRN时序关系推理网络计算视频帧之间的时序关系,得到行为特征向量,从而表示不同时间段监控视频帧之间发生的变化。
在本实施例中,根据用户需求信息以及视频分析内容的数据结构特点,通过TRN网络模型得到视频帧序列之间的时序特征,该神经网络模型的具体结构见图3。
如图3所示,神经网络模型的input数据78×500矩阵整理为1×78×500形状的tensor(对应于用户需求的矩阵),此时tensor的通道数为500。做3次1×1卷积之后,tensor形状不变,转置第2、3维度,成为1×500×78形状的tensor;再做两次1×1的卷积,通道数由78变为32;再度tensor的维度,成为32×500×1形状的tensor。最终输出的数据形状为32×500(对应于供给内容的矩阵)。
步骤S6,将步骤S5得到的行为特征向量输入到TRN网络的类别预测模块,计算表示这一段视频的高维向量与训练好的行为识别模型的特征空间中目标行为向量的相似度,然后对其计算结果进行排序,结合用户对结果的需求取出其最大项或较大的几项,通过归一化转换成标准格式。
步骤S7,根据排序结果得出监控视频流中的暴力行为预测结果,判断是否有符合用户指定规则的检测结果,如果存在则将其对应的标签、检测的概率、检测时间、检测地点、视频快照等信息封装成数据包,通过zeroMQ发送给用户进行后续的处理。
图4是本实施例的行为识别模型的训练过程。
如图4所示,行为识别模型的训练过程包括如下步骤:
步骤A1,根据预定的多种暴力行为类别建立神经网络模型,并基于神经网络模型模型建立多种暴力行为的特征的标签,得到多种暴力行为的特征向量;
步骤A2,将一个训练用视频片段处理后得到训练用视频帧,将训练用视频帧输入所述信息模型,提取训练用视频帧的空间特征,得到训练用视频帧的空间特征向量;
步骤A3,将训练用视频帧的空间特征向量输入时序推理模型,得到训练用视频帧的时序特征向量;
步骤A4,将训练用视频帧的时序特征向量与多种暴力行为的特征向量分别对比,得到训练用视频帧的预测结果;
步骤A5,使用不同的所述训练用视频重复步骤A1-A4,达到训练要求后,得到训练后的所述行为识别模型。
识别过程结束后,警示模块根据zeroMQ发送的数据包中的标签、检测的概率、检测时间、检测地点、视频快照对用户进行警示。
实施例的作用与效果
根据本实施例所涉及的基于深度神经网络的行为识别方法,由于能够将从摄像头获取到的视频流进行处理之后,得到视频帧序列,然后提取视频帧序列的空间特征向量和时间特征向量,同时,预训练好的模型含有指定目标暴力行为特征向量,将指定目标暴力行为特征向量于视频帧中提取的特征向量进行对比,所以能够综合分析当前监控场景下是否发生目标暴力事件,局限性较小。同时,本发明的行为识别方法计算量较小,在实际应用场景中受限较少,满足当前大规模应用场景的需求,且维护成本和部署成本较低。
根据本发明所涉及的智能报警装置,因为具有拍摄模块、识别模块以及警示模块,能够获取并分析监控视频,在出现目标暴力事件时能够及时通知相关的安保人员,能够广泛应用于各个公共场所或有安防需求的场景,且能够进一步降低安防的工作量,提高安防的工作效率。
此外,对步骤S3中得到的空间特征序列中的每一个特征帧进行静帧检测,当判断当前视频帧与上一帧相似度高度百分之八十五时,即认为当前视频帧为一个静止无效帧,如果该视频帧与上一帧的相似度没有达到设定的阈值,则保留,通过舍弃无效的视频帧来降低不必要的计算资源浪费,同时也能够进一步提升该算法的性能,最后对于视频帧序列中保留下来的视频帧进行步骤S4。
另外,由于特征向量提取神经网络模型基于用户需求矩阵和供给内容矩阵,即供给内容向量建立,因此其结构适合二者分别作为输入输出。这种情况下,由于将监控视频片段的特征向量作为神经网络特征模型的输出,不仅大大简化了监控视频帧空间特征和时序特征的计算过程,且向量运算更适合在加速计算单元上做并行计算。本实施例的方法不仅在精度上有大幅提高,更在计算效率上做了独到的改进。
另外,对于内容可穷举的用户属性直接进行one-hot编码,对于不可穷举的则先人为定义划分范围,然后再进行one-hot编码,由此,无论是何种类型的用户属性都适用,应用范围更广。
上述实施方式为本发明的优选案例,并不用来限制本发明的保护范围。
- 基于深度神经网络的行为识别方法及智能报警装置
- 一种基于深度神经网络的人体行为识别方法