本文是一篇软件工程论文,本文的算法在不同层面上进行了优化,取得了令人瞩目的实验结果。这一研究不仅提高了暴力行为检测的准确性和效率,也为今后深度学习在视频分析领域的发展奠定了坚实的基础。
1 绪论
1.1 研究背景与意义
暴力,是使用力量或威胁他人使用力量,伤害、损害、或控制他人的行为。2022年6月10日凌晨2点40分许,河北省唐山市公安局路北区分局机场路派出所辖区某烧烤店发生一起寻衅滋事、暴力殴打他人案件,引起网上热议,在这之后,国家和政府不断提高对公共安全的重视。
当前,在公共场所共使用了数以百万计的视频监控设备,以人工的方式可以使准确率很高。但是,面对庞大的数据流,传统的人工审核缺乏实时性,无法及时阻止或预防暴力行为的发生,因此需要自动化的暴力行为检测机制。结合暴力行为检测算法实现全面监控,可以迅速有效地发出暴力行为警报及时阻止暴力行为的发生,极大程度的保护民众的财产和生命安全。智能检测能够实时检测视频中的暴力行为,并通过训练模型提高暴力行为检测的准确率。智能化的暴力行为检测可以进一步获取视频中暴力行为的起始和结束信息,为后续研究和应用提供基础。
软件工程论文怎么写
.......................
1.2 国内外研究现状
1.2.1 暴力行为检测的发展
目前,一些研究人员在暴力检测任务方面取得了进展。他们所采用的研究方法主要可分为传统方法和深度学习方法两种类别。随着深度学习技术的不断进步,研究人员开始将其应用于暴力检测,以取代传统方法,旨在提高检测性能。
(1)传统方法
过去的视频分类研究经常利用局部空间和时间域中的运动和形状信息来提取视频描述符,例如光流、颜色和色调。接下来,使用词袋模型等方法生成视频编码。这最终用于训练分类器(例如支持向量机)以区分不同的视频类别。
最古老的检测视频暴力的尝试之一是Nam[1]的工作。作者将火焰和血液检测与声音和运动特征结合起来使用。在Clarin [2]的工作中,除了皮肤检测特征外,还使用了血液和运动进行暴力检测。Deniz等人[3]面对可能构成潜在攻击的速度变化,他们使用了加速度来识别;加速度是使用相邻图像的功率谱来计算的。这种方法识别效率高,但损失了一定的精度:区分暴力行为与否,主要受限于加速度数据的信息,无法覆盖视频中全部的时空信息。Hassner[4]提出了另一种用于识别人群场景中暴力行为的通用特征提取器--暴力流描述符(VIF)。VIF具有响应速度快、适用于实时检测的优点。Gao[5]提出了VIF的扩展版本,命名为定向VIF(OVIF)。结果表明,由于VIF只考虑流量矢量的大小变化,可能会丢失一些重要信息;相反,方向也增加了鉴别信息。尽管在人际暴力检测方面,OVIF的效果优于VIF,但在拥挤场景中表现较差。Arceda[6]等人在ViF的基础上提出了一种变体,用Horn-Schunck光流算法替换了迭代重加权最小二乘,并且使用SVM作为分类器,对暴力或异常数据集进行评估。Ben Mabrouk和Zagrouba[7]针对检测拥挤场景中的暴力行为,他们提出了一种名为DIMOLIF的方法。该方法通过计算STIP点周围光流矢量的方向和幅度的二进制分布来提取特征。
.......................
2 暴力行为检测及模型压缩相关技术
2.1 神经网络的基本理论
人工神经网络(ANN)是一种数学模型,旨在模仿生物神经网络的功能。它们被简单地称为神经网络,通常用于模拟数据之间的关系或检测数据中的模式。在神经网络中,感知单元也被称为神经元,它们接收信息输入,并产生真实世界值的激活作为输出。如图(2.1)介绍了多层感知器(MLP)模型。在该模型中,输入层为神经网络的首层,其神经元个数根据数据规模而定。输出层是网络的末尾,其神经元个数取决于具体需求。中间隐藏层是数据计算的核心部分,其层数和每层神经元数量由人工设定和配置。神经网络运行包括:(1) 输入层神经元接收外部环境信息产生激活值。(2) 激活值通过加权通道传输至网络内其他神经元(即隐藏层神经元)。(3) 输出层接收隐藏层激活值并输出最终结果[37]。
一个典型的人工神经元通常包括累加函数和激活函数两个关键组成部分。其中累加函数负责对输入的数据进行加权求和,每个输入都与相应的权重相乘后相加。而激活函数则是将累加函数的输出映射到神经元的最终输出。这两个部分的协同工作使神经元能够学习复杂的输入和输出之间的关系,为神经网络的学习提供了基础。
........................
2.2 暴力行为检测技术
2.2.1 二维CNN算法概述
在暴力行为识别中,一种简单有效的方法是使用二维卷积神经网络(CNN)来分析单帧视频图像。这种方法的示意图如图(2.4)所示。首先,通过提取帧来处理视频,然后用这些单帧图像来训练CNN模型。最后,经过训练的CNN模型能够识别具有攻击行为的新图像。这种方法的优势在于利用了CNN对图像的特征提取能力,从而能够有效地捕捉到与暴力行为相关的视觉特征[38]。
具体而言,图中的紫色方框代表了卷积(Conv)和激活函数两个过程,而黄色部分则是批量归一化(BN),绿色部分为聚合,蓝色部分代表全连接层fc层),灰色部分是Softmax分类器。 在卷积神经网络(CNN)中,卷积过程是关键步骤,本质上是二维空间过滤。它涉及根据卷积步幅(stride)在输入图像矩阵的x和y方向上滑动卷积核。
卷积过程后常接入激活函数,以优化模型的非线性表达。常见的激活函数有Sigmoid函数和ReLU ( Rectified Linear Unit ) 函数。Sigmoid函数的表达式为式(2.3),其取值范围为(0,1),可以进行单调微分。然而在反向传播阶段,Sigmoid函数的梯度接近于零,存在正饱和和负饱和区域,导致梯度变化引发问题。特别是在输入值z较大或较小时,Sigmoid函数的导数梯度会急剧减小,这会影响网络的学习速度。
.........................
3 基于3D-CRNN的暴力行为检测算法 ............................ 22
3.1 基于C3D暴力行为检测模型 ..................................... 22
3.2 基于3D-CRNN的暴力行为识别方法 ................................ 23
4 基于层优化剪枝技术的3D-CRNN模型 ............................... 35
4.1 3D-CRNN检测对比 .............................. 35
4.2 问题表述 ................................. 36
5 总结与展望 ................................. 52
5.1 总结 ............................................... 52
5.2 展望 .............................................. 52
4 基于层优化剪枝技术的3D-CRNN模型
4.1 3D-CRNN检测对比
本节的主要目标是对比训练好的3D-CRNN模型在视频检测识别任务中的性能,特别关注了模型的推理速度。
本实验在PC端使用3D-CRNN模型对视频进行识别,在进行视频检测时,它能够充分捕捉视频中的时空信息,为视频识别任务提供了有力的工具。当前的检测时间为4.215秒,检测结果也与视频标签一致,如图(4.2)所示。
因为暴力行为识别经常在边缘设备使用,因此,将3D-CRNN模型在飞腾FT-204-COME-B 核心板以及飞腾CB-ITX-COME-B载板进行部署,如图(4.1)所示。其中飞腾FT-204-COME-B 核心板使用了主频为2.6GHz四核高性能处理器FT-2000/4作为中央处理器,板载了DDR4 16GB内存颗粒和64GB工业级固态内存,3路SATA3.0接口,传输速率6Gbps,兼容SATA 2.0/ 3Gbps 和 SATA 1.0/ 2.6Gbps 传输。
软件工程论文参考
..........................
5 总结与展望
5.1 总结
现有的基于深度学习的暴力行为检测算法模型参数量大、需要资源多,难以部署在嵌入式设备上,实用价值不髙。
针对这些问题,本文在现有工作的基础上,提出了一种高准确率的暴力行为检测算法。在高准确率的基础上实现模型的轻量化,本文从模型压缩入手,推动暴力行为检测的实时性应用。主要完成的工作如下:
(1)暴力行为视频数据集的构建:着眼于数据集的构建,因为数据集的质量对于训练深度学习模型至关重要。采用了爬虫与现有数据集结合的方法,系统地构建了一个涵盖各种场景、情境和暴力行为类型的视频数据集。这个数据集不仅涵盖了现实生活中多样的暴力场景,还充分考虑了视频数据的多样性和真实性。通过这一步骤,为后续的算法设计和模型训练提供了坚实的基础。
(2)基于3D-CRNN的暴力行为检测算法:本章首先通过介绍C3D网络,说明其缺陷后,提出了一种基于3D-CRNN(三维卷积循环神经网络)的暴力行为检测算法,解决了现有方法中难以对长序列视频检测的问题。通过3D卷积和循环神经网络的结合,可以充分利用视频序列的空间、时间和上下文信息来提高暴力行为检测的准确性。该方法经过与现有方法的对比实验,在两个数据集上的效果均优于基线算法,成功区分了暴力和非暴力行为,证明了该算法的有效性和先进性,对于各种复杂场景和不同类型的暴力行为都具有良好的泛化性。
(3)层优化剪枝技术:引入了层优化剪枝技术,旨在优化已有的3D-CRNN模型,使其在性能和计算效率之间取得更好的平衡。这一技术与传统的剪枝方法不同,LoP考虑了每一层的特殊性,通过层优化,优化每一层在剪枝过程中的逼近误差。这种针对每层的优化策略有助于更细致地调整每一层的剪枝比例,从而提高整个网络在保持性能的前提下更高效地减小规模。对所提方法进行了全面分析,展示了本章方法在两种类型的神经网络和三个数据集上的有效性和效率。
参考文献(略)