定点视频监控系统中行人检测平台设计与实现

2021-10-25 01:23姝,闯,
关键词:行人卷积神经网络

杨 姝, 于 闯, 蒋 宁

(1. 沈阳师范大学 教育技术学院, 沈阳 110034; 2. 沈阳师范大学 计算机与数学基础教学部, 沈阳 110034; 3. 沈阳航空航天大学 计算机学院, 沈阳 110136)

0 引 言

定点视频监控是视频监控系统的一种主要应用模式,在人们的日常生活中发挥着越来越大的作用[1]。在定点视频监控系统中,对运动行人进行自动检测与识别,有着非常重要的意义。由于监控视频中的远景区域运动行人目标相对过小,所以对监控视频远景区域中的运动行人的检测在实际应用场景中存在漏检和误检的问题。解决这个问题的一种方法是设置辅助变焦摄像头,使得远景区域中监控视频的图像分辨率得到提高[2]。本文基于运动特征的目标检测算法和卷积神经网络模型,设计并开发了配置辅助变焦摄像头的定点视频监控系统行人检测平台,实现了对运动行人的有效自动检测[3-6]。首先,对行人检测平台进行模块化设计,设计出主要功能模块;其次,设计并完成行人检测平台各组成功能模块,在运动目标检测模块中配置并使用辅助变焦摄像头,完成远景区域数据处理。将主监控画面平均分割为4等份,其中左上与右上2部分定义为远景区域,实验测试对象选取为右上区域;最后,根据搭建出的行人检测平台进行行人检测,统计分析实验数据。实验结果表明,本文设计的平台有效地提高了对行人检测的准确率,可以满足实际应用需求。

1 定点视频监控系统中运动行人检测平台的模块设计

本文的主要目标是实现对定点视频监控中的运动行人检测,因此,可将行人检测平台分为3个功能模块,即运动目标检测模块、行人分类模块和数据分析模块。其中,运动目标检测模块主要完成运动目标的提取;行人分类模块主要对提取出的运动目标进行分类,即提取出运动行人和非运动行人2类;数据分析模块主要完成数据的记录、对比与分析,从而得出实验结果。运动行人检测平台的功能模块的设计如图1所示,运行过程如图2所示。

图1 平台功能模块设计Fig.1 Functional module design of the platform

图2 平台运行过程Fig.2 Operation process of the platform

运动目标检测模块分为运动目标检测、目标分割和目标保存3个子模块。首先,将定点视频监控中录制的视频文件输入到运动目标检测子模块中,为有效避免重复数据对统计结果的影响,按照每间隔15 s的速度提取1帧监控画面,并作标记帧序号处理;通过高斯背景建模算法对帧中的运动目标进行检测和提取,并作图像二值化处理;其次,在目标分割子模块中,对目标帧中所检测到的运动目标进行分割,得到二值化处理后的运动目标检测结果,确定出这些运动目标的坐标、宽度、高度以及解决噪声、影子等因素对目标分割的影响,如头脚断裂、阴影干扰等问题;最后,在目标保存子模块中,保存已分割好的各运动目标图片,这些图片数据作为该子模块的数据输出。

行人分类模块的主要功能是完成对运动目标检测模块中得到的运动目标进行分类,即从提取出的运动目标中检测出运动行人,然后为数据分析模块提供接口调用。该子模块由卷积神经网络模型训练与生成和卷积神经网络模型接口调用2个子模块构成。首先对卷积神经网络进行训练,然后使用接口调用卷积神经网络对分割好的图片进行分类。该模块的输入为已分割好的运动目标图片,输出为各已分割目标图片的分类结果。

数据分析模块主要完成平台中相关数据的记录、对比与分析。记录的数据包括主摄像头与辅助摄像头2种情况下分别录制的视频文件对应的批次序号、分割出的文件名称、分类结果、分类概率值、结果核对值等原始数据。根据这些原始数据进行统计分析,得出实验结果。数据分析模块的输入为行人分类模块输出的相关分类数据,输出为数据分析汇总表。

2 定点视频监控系统中行人检测平台各模块的设计与实现

2.1 运动目标检测模块

2.1.1 运动目标检测模块的算法设计

在运动目标检测模块中,主要需要完成的任务是对视频文件中的运动目标进行检测并提取,最后生成各运动目标图片。模块的运动目标检测、提取与保存关键算法设计如图3和图4所示。

图3 运动目标检测模块的算法Fig.3 Algorithm of moving target detection module

图4 目标提取与保存函数算法Fig.4 Object extraction and preservation function algorithm

通过高斯背景建模算法对运动目标进行检测,然后进行前景二值化、去阴影、膨胀处理,再调用头脚断裂问题处理、阴影处理、图片标记、保存处理、结果显示等函数[7-10],检测效果如图5所示。

(a) 主摄像头远景区域检测结果; (b) 辅助摄像头检测结果图5 检测效果Fig.5 Detection result

2.1.2 运动目标检测模块运行环境的搭建

为了实现运动目标检测模块的功能,主要应用到的操作系统和软件开发工具等如表1所示。

表1 运动目标检测模块的开发运行环境

2.1.3 运动目标检测算法的实现

根据算法设计流程图,逐步完成各功能函数的测试应用,确定相关参数设置,最后输出各运动目标所对应的图像文件,实现运动目标检测模块的功能。在输入的监控视频中通过调用各功能函数,进行运动目标的提取。在运动目标检测过程中,主要涉及到的实际问题有画面噪声的影响、行人影子的影响等。

2.2 行人分类模块

2.2.1 行人分类模块的算法设计

图6 行人分类过程Fig.6 Pedestrian classification process

2.2.2 行人分类模块运行环境的搭建

在此模块中,主要完成卷积神经网络的构造、训练和调用,同时采用可视化的形式管理数据和显示结果,选择的操作系统、软件及工具包等如表2所示。

表2 行人分类模块的运行环境Table 2 Operating environment of pedestrian classification module

2.2.3 行人分类模块的实现

1) caffe框架的运行环境测试

运行环境搭建好后,先对环境进行功能测试。选择经典的卷积神经网络模型LeNet,测试数据集采用MNIST,测试模型的识别准确率为98.99%,符合实验要求,caffe框架运行环境配置正确[11-12]。

2) 行人数据集的建立

利用运动目标检测模块中所提取的运动行人样本图片,建立行人数据集,作为网络训练的数据源。经过人工筛选建立的数据集行人正样本1 451个,负样本1 085个。建立数据集正负样本的工作区和数据集的标签文件,标签与分类序号的对应关系如表3所示,数据集的名称设置为person_2。

表3 分类序号与标签Table 3 Classification number and label

3) 卷积神经网络的构建和训练

采用13层的AlexNet卷积神经网络,用所建立出的数据集进行网络训练[13]。训练初期设定一个较大的学习率0.01,训练一段时间后,网络跳出局部最小值,然后逐步调小学习率,直到达到0.001,使得网络参数得到优化调整。训练精确度达到95.16%时,网络分类效果较好。

4) 卷积神经网络接口调用

卷积神经网络经过行人数据集对其训练,得到分类效果良好的网络模型参数。使用Python对网络模型接口调用,并将分类结果数据送入数据分析模块[14]。

2.3 数据分析模块

2.3.1 数据分析模块的算法设计

表4 基础信息表Table 4 Basic information table

表5 结果统计表Table 5 Results table

上述行人分类模块对目标进行分类时,由于目标分类数据数量较多,且需要统计每一目标的文件名、分类结果、属于行人的概率值、不属于行人的概率值及目标检测所属监控视频文件的批次序号等多项数据值,数据分析模块采用数据库进行相关数据的存储与统计分析,使用MYSQL数据库建立基本信息表和结果统计分析表[15]。设计records表用于存储基础数据信息,结构如表4所示,结果分析表结构如表5所示。

2.3.2 数据统计分析的实现

使用可视化数据库工具执行数据统计计算命令,对records表中的基础实验数据进行统计分析,并将实验结果数据保存到results表中。

3 结 论

在行人检测平台中,采用辅助变焦摄像头对远景区域内行人检测的方法,有效地降低了远景区域中行人的检测误差,使得整个行人检测平台的行人检测准确率得到提高,行人目标在运动目标检测模块中的相对检出率提高到了95.29%。在辅助摄像头中检测到的运动目标解析度也得到提高,有利于后续目标的分类和分析处理。在行人分类模块中,远景区域行人分类准确率由80.43%提升至92.61%,行人分类准确率与分类平均概率所提高的相对比率分别为15.14%和3.75%,取得了较好的检测效果。

猜你喜欢
行人卷积神经网络
基于递归模糊神经网络的风电平滑控制策略
基于3D-Winograd的快速卷积算法设计及FPGA实现
毒舌出没,行人避让
卷积神经网络的分析与设计
神经网络抑制无线通信干扰探究
从滤波器理解卷积
路不为寻找者而设
基于神经网络的中小学生情感分析
基于傅里叶域卷积表示的目标跟踪算法
我是行人