CN107566781B - 视频监控方法和视频监控设备 - Google Patents

视频监控方法和视频监控设备 Download PDF

Info

Publication number
CN107566781B
CN107566781B CN201610513552.1A CN201610513552A CN107566781B CN 107566781 B CN107566781 B CN 107566781B CN 201610513552 A CN201610513552 A CN 201610513552A CN 107566781 B CN107566781 B CN 107566781B
Authority
CN
China
Prior art keywords
frame
training
information
pixel
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610513552.1A
Other languages
English (en)
Other versions
CN107566781A (zh
Inventor
俞刚
李超
何奇正
陈牧歌
彭雨翔
印奇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Megvii Technology Co Ltd
Beijing Maigewei Technology Co Ltd
Original Assignee
Beijing Megvii Technology Co Ltd
Beijing Maigewei Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Megvii Technology Co Ltd, Beijing Maigewei Technology Co Ltd filed Critical Beijing Megvii Technology Co Ltd
Priority to CN201610513552.1A priority Critical patent/CN107566781B/zh
Priority to US15/624,264 priority patent/US10452925B2/en
Publication of CN107566781A publication Critical patent/CN107566781A/zh
Application granted granted Critical
Publication of CN107566781B publication Critical patent/CN107566781B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/60Image enhancement or restoration using machine learning, e.g. neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • G06V20/53Recognition of crowd images, e.g. recognition of crowd congestion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/19173Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20024Filtering details
    • G06T2207/20032Median filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20172Image enhancement details
    • G06T2207/20192Edge enhancement; Edge preservation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)

Abstract

本公开涉及视频监控方法和视频监控设备。视频监控方法包括:获取经由视频数据采集模块采集的视频数据;将视频数据的至少一帧输入至预先训练的第一神经网络,以确定至少一帧中每个像素点的对象数量信息;以及利用预先训练的第二神经网络执行如下操作中的至少一个:基于至少一帧中的对象数量信息执行平滑操作以修正对象数量信息;基于视频数据的采集场景的场景信息和至少一帧中的对象数量信息,确定至少一帧中每个像素点的对象密度信息;以及基于视频数据的采集场景的场景信息、至少一帧中的对象数量信息以及至少一帧与至少一帧后的待预测帧之间的关联信息,预测待预测帧中的每个像素点的对象密度信息。

Description

视频监控方法和视频监控设备
技术领域
本公开涉及视频监控领域,更具体地,本公开涉及视频监控方法和使用该视频监控方法的视频监控设备。
背景技术
随着监控摄像头越来越普及,通过摄像头对重点场景的安防监控的需求也越来越普及。安防监控需求中最急切的是对于人员的异常聚集的监控和警示。如果一个场景中人流密度过高,存在发生踩踏等危险事故的风险。因此,对监控场景中的人员密度、人群流量的监控和预测对城市安全有着非常重要的应用价值。
传统的安防监控主要通过人力来监控每一个摄像头,但是随着摄像头数量的指数级增长,这样会耗费很多人力资源。另外,人工的判定标准可能依赖主观经验,不能准确的量化当前的拥挤程度,从而做出正确的决策。因此通过机器智能系统自动判定每一个场景的拥挤程度就有非常重要的价值。然而,传统的人群拥挤判定算法往往针对于特定场景,依赖特定场景中的透视变换,以及场景中的背景建模和几何信息。当需要更换场景时,就需要重新的适配,因此为特定场景训练好的监控模型没有可推广性。
发明内容
鉴于上述问题而提出了本公开。本公开提供了一种视频监控方法和使用该视频监控方法的视频监控设备。通过基于行人检测的思想,对场景中的每个位置来做量化的密度估计,并且利用反馈神经网络结合时序信息进行当前时刻的人群密度估计以及未来的人群密度判断,实现了独立于场景的人群密度估计。
根据本公开的一个实施例,提供了一种视频监控方法,包括:获取经由视频数据采集模块采集的视频数据;将所述视频数据的至少一帧输入至预先训练的第一神经网络,以确定所述至少一帧中每个像素点的对象数量信息;以及利用预先训练的第二神经网络执行如下操作中的至少一个:基于所述至少一帧中的所述对象数量信息执行平滑操作以修正所述对象数量信息;基于所述视频数据的采集场景的场景信息和所述至少一帧中的所述对象数量信息,确定所述至少一帧中每个像素点的对象密度信息;以及基于所述视频数据的采集场景的场景信息、所述至少一帧中的所述对象数量信息以及所述至少一帧与所述至少一帧后的待预测帧之间的关联信息,预测所述待预测帧中的每个像素点的对象密度信息。
此外,根据本公开的一个实施例的视频监控方法,还包括:训练所述第一神经网络,其中,所述训练所述第一神经网络包括:对于多个采集场景中的每个场景的视频数据的至少一帧,利用预定形状的标注框标注所述至少一帧中存在的训练对象,将标注后的视频数据作为第一训练数据,所述第一训练数据的每个像素点的浓度指示所述每个像素点处存在的训练对象的数量;以及将所述第一训练数据的每一帧输入至卷积神经网络,输出所述第一训练数据的每一帧中每个像素点的所述训练对象的数量;根据输出的所述训练对象的数量和标注的所述训练对象的数量,计算第一损失函数,根据所述第一损失函数调整所述卷积神经网络的参数,以得到训练好的所述第一神经网络。
此外,根据本公开的一个实施例的视频监控方法,还包括:训练所述第二神经网络,其中,所述训练所述第二神经网络包括:对于多个采集场景中的每个场景的视频数据的至少一帧,以标注有所述至少一帧中存在的训练对象的数量的视频数据作为第二训练数据,并根据每个场景的场景信息标注所述第二训练数据中每个像素点的训练对象的密度;将所述第二训练数据的每一帧输入至第二神经网络,并根据所述每一帧的之前帧中的每个像素点的所述训练对象的数量以及所述每个场景的场景信息,输出所述第二训练数据的所述每一帧中每个像素点的训练对象数的密度;根据每一帧的输出的训练对象的密度和所述第二训练数据中的对应帧中的标注的训练对象的密度,计算第二损失函数;根据所述第二损失函数调整所述第二神经网络的参数,以得到训练好的第二神经网络。
此外,根据本公开的一个实施例的视频监控方法,还包括:训练所述第二神经网络,其中,所述训练所述第二神经网络包括:对于多个采集场景中的每个场景的视频数据的至少一帧,以标注有所述至少一帧中存在的训练对象的数量的视频数据作为第三训练数据,并根据每个场景的场景信息标注所述第三训练数据中每个像素点的训练对象的密度;将所述第三训练数据的每一帧输入至第二神经网络,并根据所述每一帧的之前帧中的每个像素点处的所述训练对象的数量以及所述每个场景的场景信息,输出所述每一帧之后的待预测帧中每个像素点的训练对象数量的密度;根据输出的所述待预测帧中每个像素点的训练对象的密度和所述第三训练数据中的对应帧中标注的训练对象的密度,计算第三损失函数;根据所述第三损失函数调整所述第二神经网络的参数,以得到训练好的第二神经网络。
此外,根据本公开的一个实施例的视频监控方法,其中所述将所述视频数据的至少一帧输入至第一神经网络,以确定所述视频数据的至少一帧中每个像素点的对象数量信息包括:基于预定模型或预定算法,确定所述至少一帧中的前景数据和背景数据,以及将所述前景数据输入至所述第一神经网络,从而确定所述前景数据中每个像素点的对象数量信息。
此外,根据本公开的一个实施例的视频监控方法,其中,所述至少一帧为所述视频数据中的全部图像帧;或者,所述至少一帧为所述视频数据中的部分图像帧,并且当所述至少一帧中的帧数大于等于三帧时相邻的各帧之间的时间间隔相同。
此外,根据本公开的一个实施例的视频监控方法,其中,在所述确定所述至少一帧中每个像素点的对象密度信息的操作中,所基于的所述至少一帧中的所述对象数量信息为通过执行平滑操作得到的修正后的对象数量信息;和/或,在所述预测所述待预测帧中的每个像素点的对象密度信息的操作中,所基于的所述至少一帧中的所述对象数量信息为通过执行平滑操作得到的修正后的对象数量信息。
此外,根据本公开的一个实施例的视频监控方法,还包括:在所述至少一帧或所述至少一帧之后的待预测帧的所述对象密度信息指示所述对象密度超过预定阈值时,生成提示信息。
根据本公开的另一个实施例,提供了一种视频监控设备,包括:视频数据获取模块,用于获取采集场景的视频数据;数量确定模块,将所述视频数据中的至少一帧输入至预先训练的第一神经网络,以确定所述至少一帧中每个像素点的对象数量信息;以及密度确定模块,利用预先训练的第二神经网络执行如下操作中的至少一个:基于所述至少一帧中的所述对象数量信息执行平滑操作以修正所述对象数量信息;基于所述视频数据的采集场景的场景信息和所述至少一帧中的所述对象数量信息,确定所述至少一帧中每个像素点的对象密度信息;以及基于所述视频数据的采集场景的场景信息、所述至少一帧中的所述对象数量信息以及所述至少一帧与所述至少一帧后的待预测帧之间的关联信息,预测所述待预测帧中的每个像素点的对象密度信息。
此外,根据本公开的另一个实施例的视频监控设备,还包括:第一训练模块,用于预先训练所述第一神经网络,其中,对于多个采集场景中的每个场景的视频数据的至少一帧,利用预定形状的标注框标注所述至少一帧中存在的训练对象,将标注后的视频数据作为第一训练数据,所述第一训练数据的每个像素点的浓度指示所述每个像素点处存在的训练对象的数量,所述第一训练模块将所述第一训练数据的每一帧输入至卷积神经网络,输出所述第一训练数据的每一帧中每个像素点的训练对象的数量;所述第一训练模块根据输出的所述训练对象的数量和标注的所述训练对象的数量,计算第一损失函数,并根据所述第一损失函数调整所述卷积神经网络的参数,以得到训练好的所述第一神经网络。
此外,根据本公开的另一个实施例的视频监控设备,还包括:第二训练模块,所述第二训练模块用于训练所述第二神经网络,其中,对于多个采集场景中的每个场景的视频数据的至少一帧,以标注有所述至少一帧中存在的训练对象的数量的视频数据作为第二训练数据,并根据每个场景的场景信息标注所述第二训练数据中每个像素点的密度,所述第二训练模块将所述第二训练数据的每一帧输入至第二神经网络,并根据所述每一帧的之前帧中的每个像素点处的所述训练对象的数量以及所述每个场景的场景信息,输出所述第二训练数据的所述每一帧中每个像素点的训练对象的密度,所述第二训练模块根据每一帧的输出的训练对象的密度和所述第二训练数据中的对应帧中的标注的训练对象的密度,计算第二损失函数,并根据所述第二损失函数调整所述第二神经网络的参数,以得到训练好的第二神经网络。
此外,根据本公开的另一个实施例的视频监控设备,还包括:第三训练模块,所述第三训练模块用于训练所述第二神经网络,其中,对于多个采集场景中的每个场景的视频数据的至少一帧,以标注有所述至少一帧中存在的训练对象的数量的视频数据作为第三训练数据,并根据每个采集场景的场景信息标注所述第三训练数据中每个像素点的密度,所述第三训练模块将所述第三训练数据的每一帧输入至第二神经网络,并根据所述第二训练数据中的每一帧的之前帧中的每个像素点处的所述训练对象的数量以及所述每个场景的场景信息,输出所述第三数据的每一帧之后的待预测帧中每个像素点的训练对象数量的密度,所述第三训练模块根据输出的所述待预测帧中每个像素点的训练对象的密度和所述第三训练数据中的对应帧中标注的训练对象的密度,计算第三损失函数,并根据所述第三损失函数调整所述第二神经网络的参数,以得到训练好的第二神经网络。
此外,根据本公开的另一个实施例的视频监控设备,其中所述数量确定模块基于预定模型或预定算法,确定所述视频数据中的所述至少一帧中的前景数据和背景数据,并且将所述前景数据输入至所述第一神经网络,从而确定所述前景数据中每个像素点的对象数量信息。
此外,根据本公开的另一个实施例的视频监控设备,其中,所述至少一帧为所述视频数据中的全部图像帧;或者,所述至少一帧为所述视频数据中的部分图像帧,并且当所述至少一帧中的帧数大于等于三帧时相邻的各帧之间的时间间隔相同。
此外,根据本公开的另一个实施例的视频监控设备,其中,所述密度确定模块在确定所述至少一帧中每个像素点的对象密度信息的操作中,所基于的所述至少一帧中的所述对象数量信息为通过执行平滑操作得到的修正后的对象数量信息;和/或,所述密度确定模块在预测所述待预测帧中的每个像素点的对象密度信息的操作中,所基于的所述至少一帧中的所述对象数量信息为通过执行平滑操作得到的修正后的对象数量信息。
此外,根据本公开的另一个实施例的视频监控设备,还包括:信息生成模块,用于在所述至少一帧或所述至少一帧之后的待预测帧的所述对象密度信息指示所述对象密度超过预定阈值时,生成提示信息。
根据本公开的又一个实施例,提供了一种计算机程序产品,包括计算机可读存储介质,在所述计算机可读存储介质上存储了计算机程序指令,所述计算机程序指令在被计算机运行时,使得所述计算机执行以下步骤:
获取经由视频数据采集模块采集的视频数据;将所述视频数据的至少一帧输入至预先训练的第一神经网络,以确定所述至少一帧中每个像素点的对象数量信息;以及利用预先训练的第二神经网络执行如下操作中的至少一个:基于所述至少一帧中的所述对象数量信息执行平滑操作以修正所述对象数量信息;基于所述视频数据的采集场景的场景信息和所述至少一帧中的所述对象数量信息,确定所述至少一帧中每个像素点的对象密度信息;以及基于所述视频数据的采集场景的场景信息、所述至少一帧中的所述对象数量信息以及所述至少一帧与所述至少一帧后的待预测帧之间的关联信息,预测所述待预测帧中的每个像素点的对象密度信息。
要理解的是,前面的一般描述和下面的详细描述两者都是示例性的,并且意图在于提供要求保护的技术的进一步说明。
附图说明
通过结合附图对本公开实施例进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显。附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开实施例一起用于解释本公开,并不构成对本公开的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1是概述根据本公开实施例的视频监控方法的流程图。
图2是图示根据本公开实施例的视频监控设备的功能性框图。
图3是进一步图示根据本公开实施例的视频监控方法中的神经网络训练处理的第一流程图。
图4是图示根据本公开实施例的视频监控方法中的神经网络训练处理中训练数据标注的示意图。
图5是进一步图示根据本公开实施例的视频监控方法中的神经网络训练处理的第二流程图。
图6是进一步图示根据本公开实施例的视频监控方法中的神经网络训练处理的第三流程图。
图7是进一步图示根据本公开实施例的视频监控设备的功能性框图。
图8是进一步图示根据本公开实施例的视频监控方法的流程图。
图9是图示根据本公开实施例的视频监控设备的示意性框图。
具体实施方式
为了使得本公开的目的、技术方案和优点更为明显,下面将参照附图详细描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。基于本公开中描述的本公开实施例,本领域技术人员在没有付出创造性劳动的情况下所得到的所有其它实施例都应落入本公开的保护范围之内。
以下,将参考附图详细描述本公开的实施例。
图1是概述根据本公开实施例的视频监控方法的流程图。如图1所示,根据本公开实施例的视频监控方法包括以下步骤。
在步骤S101中,获取经由视频数据采集模块采集的视频数据。在本公开的一个实施例中,可以在视频监控场景中配置能够获取监控场景的视频数据的监控摄像头(诸如RGB摄像头或深度摄像头)作为视频数据采集模块,所述监控摄像头可以以一定俯视视角监控当前场景。获取经由视频数据采集模块采集的视频数据包括但不限于,在由物理位置上分离配置的视频数据采集模块采集视频数据之后,经由有线或者无线方式,接收从所述视频数据采集模块发送的视频数据。可替代地,视频数据采集模块可以与视频监控设备中的其他模块或组件物理上位于同一位置甚至位于同一机壳内部,视频监控设备中的其他模块或组件经由内部总线接收从所述视频数据采集模块发送的视频数据。此后,处理进到步骤S102。
在步骤S102中,将视频数据的至少一帧输入至预先训练的第一神经网络,以确定至少一帧中每个像素点的对象数量信息。
在本公开的一个实施例中,所述第一神经网络是卷积神经网络(CNN)。预先基于一定量的训练数据,训练获得基于像素级的对象数量模型。以下,将参照附图进一步详细描述对于训练数据的标注以及相应的训练处理。
更具体地,在本公开的一个实施例中,在将视频数据的至少一帧输入至预先训练的第一神经网络之后,可以基于预定模型确定所述至少一帧中的前景数据和背景数据。例如,可以基于预定模型对所述监控区域中的每个像素点进行概率估计,以获取每个像素点的概率模型。在本公开的一个实施例中,利用多高斯模型对单个像素进行概率估计,得到每个像素点的概率模型,以此模型来针对获取的视频数据判断前景数据和背景数据。在配置用于监控的场景之后,所述概率模型是视频数据是背景数据的概率。由于背景是相对固定的,前景是任意的,则不同于背景数据的像素提取的特征即为前景数据。
可替代地,在所述视频数据包括深度信息的情况下,可以基于预定算法,确定所述至少一帧中的前景数据和背景数据。具体地,所述预定算法包括:获取所述视频数据的每个像素点的当前深度信息与相应的所述背景深度信息的深度信息差,确定包括所述深度信息差大于第一预定阈值的像素点的区域为前景候选区域;对所述前景候选区域的视频数据执行中值滤波,获取用于监控的前景区域的视频数据。通过对于前景候选区域的视频数据执行中值滤波,实现滤除噪声信号的同时,能够保护信号的边缘,使得前景区域不被模糊。
在如上所述确定前景数据之后,将所述前景数据输入至所述第一神经网络,从而确定所述前景数据中每个像素点的对象数量信息。如此,可以极大地减少所需的运算量,并且避免在背景上得到错误的判断估计值。
在本公开的一个实施例中,为了进一步提高视频监控的实时反应,可以通过使用隔帧采样的方式进行对象数量判断。由于视频数据多帧之间的变化往往不会很大,可以使用隔帧(例如,每隔5帧)采样运算。也就是说,所述至少一帧可以为所述视频数据中的全部图像帧,即执行连续帧采样运算。或者,所述至少一帧为所述视频数据中的部分图像帧,即执行隔帧采样运算。当所述至少一帧中的帧数大于等于三帧时相邻的各帧之间的时间间隔相同,即以均匀的采样间隔执行隔帧采样运算。
在步骤S102中获得单个帧中每个像素点的对象数量信息之后,处理进到步骤S103。
在步骤S103中,利用预先训练的第二神经网络执行如下操作的至少一个:基于至少一帧中的对象数量信息执行平滑操作以修正对象数量信息;基于视频数据的采集场景的场景信息和至少一帧中的对象数量信息,确定至少一帧中每个像素点的对象密度信息;基于视频数据的采集场景的场景信息、至少一帧中的对象数量信息以及至少一帧与至少一帧后的待预测帧之间的时间关系信息,预测待预测帧中的每个像素点的对象密度信息。
在本公开的一个实施例中,所述第二神经网络是反馈神经网络(RNN)。与所述第一神经网络的训练类似,预先基于一定量的训练数据,并且根据所述第二神经网络的监测目的,执行相应的训练处理。以下,将参照附图进一步详细描述对于训练数据的标注以及相应的训练处理。
更具体地,在本公开的一个实施例中,在所述第二神经网络接收到从所述第一神经网络输入的至少一帧中每个像素点的对象数量信息之后,可以进一步对于所述至少一帧的各个位置的输出进行平滑操作,以便获得修正的对象数量信息。
进一步地,在本公开的一个实施例中,在所述第二神经网络接收到从所述第一神经网络输入的所述至少一帧中每个像素点的对象数量信息之后,可以进一步基于视频数据的采集场景的场景信息(例如,场景的物理几何信息、监控摄像头的视角、物理焦距等信息),从对象数量信息确定所述至少一帧中每个像素点的对象密度信息。在一个实施例中,所述每个像素点的训练对象的密度可以通过对应像素点处的训练对象的数量与所在场景的场景信息点乘之后获得。可替代地,在确定对象密度信息中使用的对象数量信息可以是已经对于所述至少一帧的各个位置的输出进行平滑操作后获得的修正的对象数量信息。
进一步地,在本公开的一个实施例中,在所述第二神经网络接收到从所述第一神经网络输入的所述至少一帧中每个像素点的对象数量信息之后,可以进一步基于视频数据的采集场景的场景信息(例如,场景的物理几何信息、监控摄像头的视角、物理焦距等信息),以及所述至少一帧与所述至少一帧后的待预测帧之间的关联信息,例如时间关系信息,从对象数量信息预测待预测帧中的每个像素点的对象密度信息。例如,在输入第t帧的每个像素点的对象数量信息之后,可以预测获得第(t+K)帧的对象密度信息,可以离散取值K=1000、2000等。
在步骤S103中获得的所述至少一帧或其后某一时刻的待预测帧的对象密度信息可以用于警报信息的产生。在所述至少一帧的对象密度信息或者其后某一时刻的待预测帧的对象密度信息大于预先设置的预定阈值时,即显示场景中的对象密度过大,可能存在出现踩踏等安全事件的风险,生成警报信息。
上述根据本公开实施例的视频监控方法,通过预先训练对场景中的每个位置来做量化的密度估计的神经网络,实现了不依赖于场景的人群密度估计。以下,将参照图2进一步描述执行上述视频监控方法的一种视频监控设备。
图2是图示根据本公开实施例的视频监控设备的功能性框图。如图2所示,根据本公开实施例的视频监控设备20包括视频数据获取模块21、数量确定模块22和密度确定模块23。
具体地,所述视频数据获取模块21用于获取采集场景的视频数据。在本公开的一个实施例中,可以在视频监控场景中配置能够获取监控场景的视频数据的监控摄像头(诸如RGB摄像头或深度摄像头)作为所述视频数据采集模块21,所述监控摄像头可以以一定俯视视角监控当前场景。所述视频数据获取模块21可以与其后的数量确定模块22和密度确定模块23等物理位置上分离分配,并且经由有线或者无线方式,从所述视频数据采集模块21发送视频数据给其后的各模块。可替代地,所述视频数据采集模块21可以与视频监控设备20中的其他模块或组件物理上位于同一位置甚至位于同一机壳内部,视频监控设备20中的其他模块或组件经由内部总线接收从所述视频数据采集模块21发送的视频数据。
所述数量确定模块22将所述视频数据中的至少一帧输入至预先训练的第一神经网络,以确定所述至少一帧中每个像素点的对象数量信息。如上所述,所述数量确定模块22所利用的第一神经网络包括卷积神经网络(CNN),并且预先基于一定量的训练数据,训练获得基于像素级的对象数量模型。
所述数量确定模块22基于预定模型确定所述至少一帧中的前景数据和背景数据。例如,所述数量确定模块22可以基于预定模型对所述监控区域中的每个像素点进行概率估计,以获取每个像素点的概率模型。在本公开的一个实施例中,利用多高斯模型对单个像素进行概率估计,得到每个像素点的概率模型,以此模型来针对获取的视频数据判断前景数据和背景数据。在配置用于监控的场景之后,所述概率模型是视频数据是背景数据的概率。由于背景是相对固定的,前景是任意的,则不同于背景数据的即为前景数据。
可替代地,在所述视频数据包括深度信息的情况下,所述数量确定模块22可以基于预定算法,确定所述至少一帧中的前景数据和背景数据。具体地,所述预定算法包括:获取所述视频数据的每个像素点的当前深度信息与相应的所述背景深度信息的深度信息差,确定包括所述深度信息差大于第一预定阈值的像素点的区域为前景候选区域;对所述前景候选区域的视频数据执行中值滤波,获取用于监控的前景区域的视频数据。通过对于前景候选区域的视频数据执行中值滤波,实现滤除噪声信号的同时,能够保护信号的边缘,使得前景区域不被模糊。在如上所述确定前景数据之后,将所述前景数据输入至所述第一神经网络,从而确定所述前景数据中每个像素点的对象数量信息。如此,可以极大地减少所需的运算量,并且避免在背景上得到错误的判断估计值。
在本公开的一个实施例中,为了进一步提高视频监控的实时反应,所述数量确定模块22可以通过使用隔帧采样的方式进行对象数量判断。由于视频数据多帧之间的变化往往不会很大,可以使用隔帧(例如,每隔5帧)采样运算。也就是说,所述至少一帧可以为所述视频数据中的全部图像帧,即执行连续帧采样运算。或者,所述至少一帧为所述视频数据中的部分图像帧,即执行隔帧采样运算。当所述至少一帧中的帧数大于等于三帧时相邻的各帧之间的时间间隔相同,即以均匀的采样间隔执行隔帧采样运算。
所述密度确定模块23利用预先训练的第二神经网络执行如下操作中的至少一个:基于所述至少一帧中的所述对象数量信息执行平滑操作以修正所述对象数量信息;基于所述视频数据的采集场景的场景信息和所述至少一帧中的所述对象数量信息,确定所述至少一帧中每个像素点的对象密度信息;以及基于所述视频数据的采集场景的场景信息、所述至少一帧中的所述对象数量信息以及所述至少一帧与所述至少一帧后的待预测帧之间的时间关系信息,预测所述待预测帧中的每个像素点的对象密度信息。
在本公开的一个实施例中,所述密度确定模块23利用的第二神经网络包括反馈神经网络(RNN)。与所述第一神经网络的训练类似,预先基于一定量的训练数据,并且根据所述第二神经网络的监测目的,执行相应的训练处理。
更具体地,在本公开的一个实施例中,所述密度确定模块23接收到从所述数量确定模块22输入的所述至少一帧中每个像素点的对象数量信息之后,可以进一步对于所述至少一帧的各个位置的输出进行平滑操作,以便获得修正的对象数量信息。
进一步地,在本公开的一个实施例中,在所述密度确定模块23接收到从所述数量确定模块22输入的所述至少一帧中每个像素点的对象数量信息之后,可以进一步基于视频数据的采集场景的场景信息(例如,场景的物理几何信息、监控摄像头的视角、物理焦距等信息),从对象数量信息确定所述至少一帧中每个像素点的对象密度信息。可替代地,在确定对象密度信息中使用的对象数量信息可以是已经对于所述至少一帧的各个位置的输出进行平滑操作后获得的修正的对象数量信息。
进一步地,在本公开的一个实施例中,在所述密度确定模块23接收到从所述数量确定模块22输入的所述至少一帧中每个像素点的对象数量信息之后,可以进一步基于视频数据的采集场景的场景信息(例如,场景的物理几何信息、监控摄像头的视角、物理焦距等信息),以及所述至少一帧与所述至少一帧后的待预测帧之间的关联信息,例如,时间关系信息,从对象数量信息预测待预测帧中的每个像素点的对象密度信息。例如,在输入第t帧的每个像素点的对象数量信息之后,可以预测获得第(t+K)帧的对象密度信息,可以离散取值K=1000、2000等。
在如上所述描述的视频监控设备20中,需要对于所述数量确定模块22利用的第一神经网络和所述密度确定模块23利用的第二神经网络执行预先训练。以下,将参照图3到图6描述相应的训练处理。
图3是进一步图示根据本公开实施例的视频监控方法中的神经网络训练处理的第一流程图。图3所示的神经网络训练处理的第一流程用于训练用于确定至少一帧中每个像素点的对象数量信息的所述第一神经网络。神经网络训练处理的第一流程包括以下步骤。
在步骤S301中,对于多个采集场景中的每个场景的视频数据的至少一帧,利用预定形状的标注框标注所述至少一帧中存在的训练对象,将标注后的视频数据作为第一训练数据,所述第一训练数据的每个像素点的浓度指示所述每个像素点处存在的训练对象的数量。
参照图4,图4是图示根据本公开实施例的视频监控方法中的神经网络训练处理中训练数据标注的示意图。如图4所示,在用于训练的场景的视频数据41中,利用预定形状(例如,矩形)的标注框标注所述至少一帧中存在的训练对象401。进一步地,将标注后的视频数据作为第一训练数据42,其中所述第一训练数据42的每个像素点的浓度指示所述每个像素点处存在的训练对象的数量。也就是说,如图4所示,几个训练对象401重叠的像素点,颜色比单个训练对象401所在的像素点和没有标注训练对象401的像素点的颜色更深。并且颜色越深,代表该像素点存在的训练对象的数量越多,相应的密度越大。
返回参照图3,在步骤S301之后,处理进到步骤S302。
在步骤S302中,将第一训练数据的每一帧输入至卷积神经网络,输出第一训练数据的每一帧中每个像素点的训练对象的数量。此后,处理进到步骤S303。
在步骤S303中,根据输出的训练对象的数量和标注的训练对象的数量,计算第一损失函数,根据第一损失函数调整卷积神经网络的参数,以得到训练好的第一神经网络。
通过图3所示的神经网络训练处理的第一流程,经由大量训练数据的反复迭代训练,获得用于根据本公开的实施例的视频监控设备的第一神经网络。
图5是进一步图示根据本公开实施例的视频监控方法中的神经网络训练处理的第二流程图。图5所示的神经网络训练处理的第二流程用于训练用于从对象数量信息确定至少一帧中每个像素点的对象密度信息的所述第二神经网络。神经网络训练处理的第二流程包括以下步骤。
在步骤S501中,对于多个采集场景中的每个场景的视频数据的至少一帧,以标注有至少一帧中存在的训练对象的数量的视频数据作为第二训练数据,并根据每个场景的场景信息标注第二训练数据中每个像素点的训练对象的密度。在一个实施例中,所述每个像素点的训练对象的密度可以通过对应像素点处的训练对象的数量与所在场景的场景信息点乘之后获得。其中,所述场景信息可以包括场景的物理几何信息、监控摄像头的视角、物理焦距等信息。此后,处理进到步骤S502。
在步骤S502中,将第二训练数据的每一帧输入至第二神经网络,并根据每一帧的之前帧中的每个像素点的训练对象的数量以及每个场景的场景信息,输出第二训练数据的每一帧中每个像素点的训练对象数的密度。此后,处理进到步骤S503。
在步骤S503中,根据每一帧的输出的训练对象的密度和第二训练数据中的对应帧中的标注的训练对象的密度,计算第二损失函数。此后,处理进到步骤S504。
在步骤S504中,根据第二损失函数调整第二神经网络的参数,以得到训练好的第二神经网络。
通过图5所示的神经网络训练处理的第二流程,经由大量训练数据的反复迭代训练,获得用于根据本公开的实施例的视频监控设备的第二神经网络,并且该第二神经网络用于确定从第一神经网络输出的至少一帧中每个像素点的对象密度信息。
图6是进一步图示根据本公开实施例的视频监控方法中的神经网络训练处理的第三流程图。图6所示的神经网络训练处理的第三流程用于训练用于从对象数量信息确定从第一神经网络输出的至少一帧后的待预测帧中的每个像素点的对象密度信息的第二神经网络。神经网络训练处理的第三流程包括以下步骤。
在步骤S601中,对于多个采集场景中的每个场景的视频数据的至少一帧,以标注有至少一帧中存在的训练对象的数量的视频数据作为第三训练数据,并根据每个场景的场景信息标注第三训练数据中每个像素点的训练对象的密度。此后,处理进到步骤S602。
在步骤S602中,将第三训练数据的每一帧输入至第二神经网络,并根据每一帧的之前帧中的每个像素点的训练对象的数量以及每个场景的场景信息,输出第二训练数据的每一帧之后的待预测帧中每个像素点的训练对象数的密度。此后,处理进到步骤S603。
在步骤S603中,根据输出的待预测帧中每个像素点的训练对象的密度和第三训练数据中的对应帧中标注的训练对象的密度,计算第三损失函数。此后,处理进到步骤S604。
在步骤S604中,根据第三损失函数调整第二神经网络的参数,以得到训练好的第二神经网络。
通过图6所示的神经网络训练处理的第三流程,经由大量训练数据的反复迭代训练,获得用于根据本公开的实施例的视频监控设备的第二神经网络,并且该第二神经网络用于确定从第一神经网络输出的至少一帧后的待预测帧中的每个像素点的对象密度信息。
图7是进一步图示根据本公开实施例的视频监控设备的功能性框图。与以上参照图2描述的视频监控设备20相比,如图7所示的视频监控设备70除了包括视频数据获取模块21、数量确定模块22和密度确定模块23之外,进一步包括第一训练模块24、第二训练模块25、第三训练模块26和信息生成模块27。对于视频数据获取模块21、数量确定模块22和密度确定模块23,在此将省略其重复描述。
所述第一训练模块24用于预先训练确定视频数据中至少一帧中每个像素点的对象数量信息的所述第一神经网络。所述第一训练模块24的训练处理采用参照图3描述的流程,在此将省略其重复描述。
所述第二训练模块25用于预先训练确定视频数据中至少一帧中每个像素点的对象密度信息的所述第二神经网络。所述第二训练模块25的训练处理采用参照图5描述的流程,在此将省略其重复描述。
所述第三练模块26用于预先训练确定视频数据中至少一帧后的待预测帧中的每个像素点的对象密度信息的第二神经网络。所述第三训练模块26的训练处理采用参照图6描述的流程,在此将省略其重复描述。
所述信息生成模块27在所述至少一帧或所述至少一帧之后的待预测帧的所述对象密度信息指示所述对象密度超过预定阈值时,生成提示信息。通过配置有所述信息生成模块27,在所述至少一帧的对象密度信息或者其后某一时刻的待预测帧的对象密度信息大于预先设置的预定阈值时,即显示场景中的对象密度过大,可能存在出现踩踏等安全事件的风险,生成提示信息。
图8是进一步图示根据本公开实施例的视频监控方法的流程图。如图8所示的视频监控方法可以由以上参照图7描述的视频监控设备执行。具体地,根据本公开实施例的视频监控方法包括以下步骤。
在步骤S801中,训练第一神经网络和第二神经网络。在本公开的实施例中,可以由所述第一训练模块24、第二训练模块25、第三训练模块26,利用分别参照图3、图5和图6描述的训练处理过程,训练第一和第二神经网络。此后,处理进到步骤S802。
在步骤S802中,获取经由视频数据采集模块采集的视频数据。步骤S802的处理与以上参照图2描述的步骤S201相同,在此将省略其重复描述。此后,处理进到步骤S803。
在步骤S803中,基于预定模型或预定算法,确定视频数据中的至少一帧中的前景数据和背景数据。在本公开的实施例中,在将视频数据的至少一帧输入至预先训练的第一神经网络之后,可以基于预定模型或预定算法确定所述至少一帧中的前景数据和背景数据。例如,可以基于预定模型对所述监控区域中的每个像素点进行概率估计,以获取每个像素点的概率模型。在本公开的一个实施例中,利用多高斯模型对单个像素进行概率估计,得到每个像素点的概率模型,以此模型来针对获取的视频数据判断前景数据和背景数据。在配置用于监控的场景之后,所述概率模型是视频数据是背景数据的概率。由于背景是相对固定的,前景是任意的,则不同于背景数据的即为前景数据。在所述视频数据包括深度信息的情况下,可以基于预定算法,确定所述至少一帧中的前景数据和背景数据。具体地,所述预定算法包括:获取所述视频数据的每个像素点的当前深度信息与相应的所述背景深度信息的深度信息差,确定包括所述深度信息差大于第一预定阈值的像素点的区域为前景候选区域;对所述前景候选区域的视频数据执行中值滤波,获取用于监控的前景区域的视频数据。此后,处理进到步骤S804。
步骤S804和步骤S805的处理与以上参照图1描述的步骤S102和S103分别相同,在此将省略其重复描述。此后,处理进到步骤S806。
在步骤S806中,在所述至少一帧或所述至少一帧之后的待预测帧的对象密度信息指示对象密度超过预定阈值时,生成提示信息。
图9是图示根据本公开实施例的视频监控设备的示意性框图。
图9是图示根据本发明实施例的视频监控设备的示意性框图。如图9所示,根据本发明实施例的视频监控设备90包括:处理器91、存储器92、以及在所述存储器92的中存储的计算机程序指令93。
所述计算机程序指令93在所述处理器91运行时可以实现根据本发明实施例的视频监控设备的各个功能模块的功能,并且/或者可以执行根据本发明实施例的视频监控方法的各个步骤。
具体地,在所述计算机程序指令93被所述处理器91运行时,可以使得视频监控设备90执行以下步骤:获取经由视频数据采集模块采集的视频数据;将所述视频数据的至少一帧输入至预先训练的第一神经网络,以确定所述至少一帧中每个像素点的对象数量信息;以及利用预先训练的第二神经网络执行如下操作中的至少一个:基于所述至少一帧中的所述对象数量信息执行平滑操作以修正所述对象数量信息;基于所述视频数据的采集场景的场景信息和所述至少一帧中的所述对象数量信息,确定所述至少一帧中每个像素点的对象密度信息;以及基于所述视频数据的采集场景的场景信息、所述至少一帧中的所述对象数量信息以及所述至少一帧与所述至少一帧后的待预测帧之间的关联信息,预测所述待预测帧中的每个像素点的对象密度信息。
此外,在所述计算机程序指令93被所述处理器91运行时,可以使得视频监控设备90执行:训练所述第一神经网络,其中,所述训练所述第一神经网络包括:对于多个采集场景中的每个场景的视频数据的至少一帧,利用预定形状的标注框标注所述至少一帧中存在的训练对象,将标注后的视频数据作为第一训练数据,所述第一训练数据的每个像素点的浓度指示所述每个像素点处存在的训练对象的数量;以及将所述第一训练数据的每一帧输入至卷积神经网络,输出所述第一训练数据的每一帧中每个像素点的所述训练对象的数量;根据输出的所述训练对象的数量和标注的所述训练对象的数量,计算第一损失函数,根据所述第一损失函数调整所述卷积神经网络的参数,以得到训练好的所述第一神经网络。
此外,在所述计算机程序指令93被所述处理器91运行时,可以使得视频监控设备90执行:训练所述第二神经网络,其中,所述训练所述第二神经网络包括:对于多个采集场景中的每个场景的视频数据的至少一帧,以标注有所述至少一帧中存在的训练对象的数量的视频数据作为第二训练数据,并根据每个场景的场景信息标注所述第二训练数据中每个像素点的训练对象的密度;将所述第二训练数据的每一帧输入至第二神经网络,并根据所述每一帧的之前帧中的每个像素点的所述训练对象的数量以及所述每个场景的场景信息,输出所述第二训练数据的所述每一帧中每个像素点的训练对象数的密度;根据每一帧的输出的训练对象的密度和所述第二训练数据中的对应帧中的标注的训练对象的密度,计算第二损失函数;根据所述第二损失函数调整所述第二神经网络的参数,以得到训练好的第二神经网络。
此外,在所述计算机程序指令93被所述处理器91运行时,可以使得视频监控设备90执行:训练所述第二神经网络,其中,所述训练所述第二神经网络包括:对于多个采集场景中的每个场景的视频数据的至少一帧,以标注有所述至少一帧中存在的训练对象的数量的视频数据作为第三训练数据,并根据每个场景的场景信息标注所述第三训练数据中每个像素点的训练对象的密度;将所述第三训练数据的每一帧输入至第二神经网络,并根据所述每一帧的之前帧中的每个像素点处的所述训练对象的数量以及所述每个场景的场景信息,输出所述每一帧之后的待预测帧中每个像素点的训练对象数量的密度;根据输出的所述待预测帧中每个像素点的训练对象的密度和所述第三训练数据中的对应帧中标注的训练对象的密度,计算第三损失函数;根据所述第三损失函数调整所述第二神经网络的参数,以得到训练好的第二神经网络。
此外,在所述计算机程序指令93被所述处理器91运行时,可以使得视频监控设备90执行:基于预定模型或预定算法,确定所述至少一帧中的前景数据和背景数据,以及将所述前景数据输入至所述第一神经网络,从而确定所述前景数据中每个像素点的对象数量信息。
此外,在所述计算机程序指令93被所述处理器91运行时,可以使得视频监控设备90执行:在所述至少一帧或所述至少一帧之后的待预测帧的所述对象密度信息指示所述对象密度超过预定阈值时,生成提示信息。
根据本公开实施例的视频监控设备中的各模块可以通过根据本公开实施例的视频监控设备中的处理器运行在存储器中存储的计算机程序指令来实现,或者可以在根据本公开实施例的计算机程序产品的计算机可读存储介质中存储的计算机指令被计算机运行时实现。
所述计算机可读存储介质例如可以包括智能电话的存储卡、平板电脑的存储部件、个人计算机的硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、便携式紧致盘只读存储器(CD-ROM)、USB存储器、或者上述存储介质的任意组合。
根据本公开的又一个实施例,提供了一种计算机程序产品,包括计算机可读存储介质,在所述计算机可读存储介质上存储了计算机程序指令,所述计算机程序指令在被计算机运行时,使得所述计算机执行以下步骤:
获取经由视频数据采集模块采集的视频数据;将所述视频数据的至少一帧输入至预先训练的第一神经网络,以确定所述至少一帧中每个像素点的对象数量信息;以及利用预先训练的第二神经网络执行如下操作中的至少一个:基于所述至少一帧中的所述对象数量信息执行平滑操作以修正所述对象数量信息;基于所述视频数据的采集场景的场景信息和所述至少一帧中的所述对象数量信息,确定所述至少一帧中每个像素点的对象密度信息;以及基于所述视频数据的采集场景的场景信息、所述至少一帧中的所述对象数量信息以及所述至少一帧与所述至少一帧后的待预测帧之间的关联信息,预测所述待预测帧中的每个像素点的对象密度信息。
在上面详细描述的本公开的示例实施例仅仅是说明性的,而不是限制性的。本领域技术人员应该理解,在不脱离本公开的原理和精神的情况下,可对这些实施例进行各种修改,组合或子组合,并且这样的修改应落入本公开的范围内。

Claims (16)

1.一种视频监控方法,包括:
获取经由视频数据采集模块采集的视频数据;
将所述视频数据的至少一帧输入至预先训练的第一神经网络,以确定所述至少一帧中每个像素点的对象数量信息;以及
利用预先训练的第二神经网络执行如下操作中的至少一个:
基于所述至少一帧中的所述对象数量信息执行平滑操作以修正所述对象数量信息;
基于所述视频数据的采集场景的场景信息和所述至少一帧中的所述对象数量信息,确定所述至少一帧中每个像素点的对象密度信息;以及
基于所述视频数据的采集场景的场景信息、所述至少一帧中的所述对象数量信息以及所述至少一帧与所述至少一帧后的待预测帧之间的关联信息,预测所述待预测帧中的每个像素点的对象密度信息。
2.如权利要求1所述的视频监控方法,还包括:
训练所述第一神经网络,
其中,所述训练所述第一神经网络包括:
对于多个采集场景中的每个场景的视频数据的至少一帧,利用预定形状的标注框标注所述至少一帧中存在的训练对象,将标注后的视频数据作为第一训练数据,所述第一训练数据的每个像素点的浓度指示所述每个像素点处存在的训练对象的数量;以及
将所述第一训练数据的每一帧输入至所述第一神经网络,输出所述第一训练数据的每一帧中每个像素点的所述训练对象的数量;
根据输出的所述训练对象的数量和标注的所述训练对象的数量,计算第一损失函数,根据所述第一损失函数调整所述第一神经网络的参数,以得到训练好的所述第一神经网络。
3.如权利要求1所述的视频监控方法,还包括:
训练所述第二神经网络,其中,所述训练所述第二神经网络包括:
对于多个采集场景中的每个场景的视频数据的至少一帧,以标注有所述至少一帧中存在的训练对象的数量的视频数据作为第二训练数据,并根据每个场景的场景信息标注所述第二训练数据中每个像素点的训练对象的密度;
将所述第二训练数据的每一帧输入至第二神经网络,并根据所述每一帧的之前帧中的每个像素点的所述训练对象的数量以及所述每个场景的场景信息,输出所述第二训练数据的所述每一帧中每个像素点的训练对象数的密度;
根据每一帧的输出的训练对象的密度和所述第二训练数据中的对应帧中的标注的训练对象的密度,计算第二损失函数;
根据所述第二损失函数调整所述第二神经网络的参数,以得到训练好的第二神经网络。
4.如权利要求1所述的视频监控方法,还包括:
训练所述第二神经网络,其中,所述训练所述第二神经网络包括:
对于多个采集场景中的每个场景的视频数据的至少一帧,以标注有所述至少一帧中存在的训练对象的数量的视频数据作为第三训练数据,并根据每个场景的场景信息标注所述第三训练数据中每个像素点的训练对象的密度;
将所述第三训练数据的每一帧输入至第二神经网络,并根据所述每一帧的之前帧中的每个像素点处的所述训练对象的数量以及所述每个场景的场景信息,输出所述每一帧之后的待预测帧中每个像素点的训练对象数量的密度;
根据输出的所述待预测帧中每个像素点的训练对象的密度和所述第三训练数据中的对应帧中标注的训练对象的密度,计算第三损失函数;
根据所述第三损失函数调整所述第二神经网络的参数,以得到训练好的第二神经网络。
5.如权利要求1所述的视频监控方法,其中所述将所述视频数据的至少一帧输入至第一神经网络,以确定所述视频数据的至少一帧中每个像素点的对象数量信息包括:
基于预定模型或预定算法,确定所述至少一帧中的前景数据和背景数据;以及
将所述前景数据输入至所述第一神经网络,从而确定所述前景数据中每个像素点的对象数量信息。
6.如权利要求1所述的视频监控方法,其中,所述至少一帧为所述视频数据中的全部图像帧;或者,所述至少一帧为所述视频数据中的部分图像帧,并且当所述至少一帧中的帧数大于等于三帧时相邻的各帧之间的时间间隔相同。
7.如权利要求1所述的视频监控方法,其中,在所述确定所述至少一帧中每个像素点的对象密度信息的操作中,所基于的所述至少一帧中的所述对象数量信息为通过执行平滑操作得到的修正后的对象数量信息;
和/或,在所述预测所述待预测帧中的每个像素点的对象密度信息的操作中,所基于的所述至少一帧中的所述对象数量信息为通过执行平滑操作得到的修正后的对象数量信息。
8.如权利要求1到7的任一项所述的视频监控方法,还包括:
在所述至少一帧或所述至少一帧之后的待预测帧的所述对象密度信息指示所述对象密度超过预定阈值时,生成提示信息。
9.一种视频监控设备,包括:
视频数据获取模块,用于获取采集场景的视频数据;
数量确定模块,将所述视频数据中的至少一帧输入至预先训练的第一神经网络,以确定所述至少一帧中每个像素点的对象数量信息;以及
密度确定模块,利用预先训练的第二神经网络执行如下操作中的至少一个:
基于所述至少一帧中的所述对象数量信息执行平滑操作以修正所述对象数量信息;
基于所述视频数据的采集场景的场景信息和所述至少一帧中的所述对象数量信息,确定所述至少一帧中每个像素点的对象密度信息;以及
基于所述视频数据的采集场景的场景信息、所述至少一帧中的所述对象数量信息以及所述至少一帧与所述至少一帧后的待预测帧之间的时间关系信息,预测所述待预测帧中的每个像素点的对象密度信息。
10.如权利要求9所述的视频监控设备,还包括:
第一训练模块,用于预先训练所述第一神经网络,其中,
对于多个采集场景中的每个场景的视频数据的至少一帧,利用预定形状的标注框标注所述至少一帧中存在的训练对象,将标注后的视频数据作为第一训练数据,所述第一训练数据的每个像素点的浓度指示所述每个像素点处存在的训练对象的数量,
所述第一训练模块将所述第一训练数据的每一帧输入至所述第一神经网络,输出所述第一训练数据的每一帧中每个像素点的训练对象的数量;
所述第一训练模块根据输出的所述训练对象的数量和标注的所述训练对象的数量,计算第一损失函数,并根据所述第一损失函数调整所述第一神经网络的参数,以得到训练好的所述第一神经网络。
11.如权利要求9所述的视频监控设备,还包括:
第二训练模块,所述第二训练模块用于训练所述第二神经网络,其中,
对于多个采集场景中的每个场景的视频数据的至少一帧,以标注有所述至少一帧中存在的训练对象的数量的视频数据作为第二训练数据,并根据每个场景的场景信息标注所述第二训练数据中每个像素点的密度,
所述第二训练模块将所述第二训练数据的每一帧输入至第二神经网络,并根据所述每一帧的之前帧中的每个像素点处的所述训练对象的数量以及所述每个场景的场景信息,输出所述第二训练数据的所述每一帧中每个像素点的训练对象的密度,
所述第二训练模块根据每一帧的输出的训练对象的密度和所述第二训练数据中的对应帧中的标注的训练对象的密度,计算第二损失函数,并根据所述第二损失函数调整所述第二神经网络的参数,以得到训练好的第二神经网络。
12.如权利要求9所述的视频监控设备,还包括:
第三训练模块,所述第三训练模块用于训练所述第二神经网络,其中,
对于多个采集场景中的每个场景的视频数据的至少一帧,以标注有所述至少一帧中存在的训练对象的数量的视频数据作为第三训练数据,并根据每个采集场景的场景信息标注所述第三训练数据中每个像素点的密度,
所述第三训练模块将所述第三训练数据的每一帧输入至第二神经网络,并根据所述每一帧的之前帧中的每个像素点处的所述训练对象的数量以及所述每个场景的场景信息,输出所述第三训练数据的每一帧之后的待预测帧中每个像素点的训练对象数量的密度,
所述第三训练模块根据输出的所述待预测帧中每个像素点的训练对象的密度和所述第三训练数据中的对应帧中标注的训练对象的密度,计算第三损失函数,并根据所述第三损失函数调整所述第二神经网络的参数,以得到训练好的第二神经网络。
13.如权利要求9所述的视频监控设备,其中所述数量确定模块基于预定模型或预定算法,确定所述视频数据中的所述至少一帧中的前景数据和背景数据,并且将所述前景数据输入至所述第一神经网络,从而确定所述前景数据中每个像素点的对象数量信息。
14.如权利要求9所述的视频监控设备,其中,所述至少一帧为所述视频数据中的全部图像帧;或者,所述至少一帧为所述视频数据中的部分图像帧,并且当所述至少一帧中的帧数大于等于三帧时相邻的各帧之间的时间间隔相同。
15.如权利要求9所述的视频监控设备,其中,所述密度确定模块在确定所述至少一帧中每个像素点的对象密度信息的操作中,所基于的所述至少一帧中的所述对象数量信息为通过执行平滑操作得到的修正后的对象数量信息;
和/或,所述密度确定模块在预测所述待预测帧中的每个像素点的对象密度信息的操作中,所基于的所述至少一帧中的所述对象数量信息为通过执行平滑操作得到的修正后的对象数量信息。
16.如权利要求9到15的任一项所述的视频监控设备,还包括:
信息生成模块,用于在所述至少一帧或所述至少一帧之后的待预测帧的所述对象密度信息指示所述对象密度超过预定阈值时,生成提示信息。
CN201610513552.1A 2016-06-30 2016-06-30 视频监控方法和视频监控设备 Active CN107566781B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201610513552.1A CN107566781B (zh) 2016-06-30 2016-06-30 视频监控方法和视频监控设备
US15/624,264 US10452925B2 (en) 2016-06-30 2017-06-15 Video monitoring method and video monitoring device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610513552.1A CN107566781B (zh) 2016-06-30 2016-06-30 视频监控方法和视频监控设备

Publications (2)

Publication Number Publication Date
CN107566781A CN107566781A (zh) 2018-01-09
CN107566781B true CN107566781B (zh) 2019-06-21

Family

ID=60806083

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610513552.1A Active CN107566781B (zh) 2016-06-30 2016-06-30 视频监控方法和视频监控设备

Country Status (2)

Country Link
US (1) US10452925B2 (zh)
CN (1) CN107566781B (zh)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10402700B2 (en) * 2016-01-25 2019-09-03 Deepmind Technologies Limited Generating images using neural networks
EP3566177A1 (en) * 2017-02-03 2019-11-13 Siemens Aktiengesellschaft A method and apparatus for detecting objects of interest in images
JP6835218B2 (ja) * 2017-05-22 2021-02-24 日本電気株式会社 群衆状態認識装置、学習方法および学習プログラム
US10972203B2 (en) 2017-06-12 2021-04-06 Gracenote, Inc. Detecting and responding to rendering of interactive video content
US10592786B2 (en) * 2017-08-14 2020-03-17 Huawei Technologies Co., Ltd. Generating labeled data for deep object tracking
US10692220B2 (en) * 2017-10-18 2020-06-23 International Business Machines Corporation Object classification based on decoupling a background from a foreground of an image
KR102551550B1 (ko) * 2018-04-20 2023-07-06 삼성전자주식회사 오브젝트에 대한 정보를 검색하기 위한 전자 장치 및 이의 제어 방법
CN108985263B (zh) * 2018-08-08 2021-01-26 北京旷视科技有限公司 一种数据采集方法、装置、电子设备和计算机可读介质
CN109241895B (zh) * 2018-08-28 2021-06-04 北京航空航天大学 密集人群计数方法及装置
CN109271886A (zh) * 2018-08-29 2019-01-25 武汉大学 一种教育考试监控视频的人体行为分析方法及系统
CN111291597B (zh) * 2018-12-07 2023-10-13 杭州海康威视数字技术股份有限公司 一种基于图像的人群态势分析方法、装置、设备及系统
CN109671163B (zh) * 2018-12-26 2020-05-29 黄梅萌萌 基于等级分析的票务管理机构以及相应终端
CN111382610B (zh) * 2018-12-28 2023-10-13 杭州海康威视数字技术股份有限公司 一种事件检测方法、装置及电子设备
CN109922317B (zh) * 2019-03-12 2020-03-31 重庆工程职业技术学院 通信负载大数据调节装置
CN109961060B (zh) * 2019-04-11 2021-04-30 北京百度网讯科技有限公司 用于生成人群密度信息的方法和装置
CN110598630A (zh) * 2019-09-12 2019-12-20 江苏航天大为科技股份有限公司 基于卷积神经网络的城市轨道交通乘客拥挤程度检测方法
CN111242081B (zh) * 2020-01-19 2023-05-12 深圳云天励飞技术有限公司 视频检测方法、目标检测网络训练方法、装置及终端设备
CN112001274B (zh) * 2020-08-06 2023-11-17 腾讯科技(深圳)有限公司 人群密度确定方法、装置、存储介质和处理器
CN112101290A (zh) * 2020-09-27 2020-12-18 成都睿畜电子科技有限公司 一种饲养环境的信息提示方法、装置、介质及电子设备
CN112633095A (zh) * 2020-12-14 2021-04-09 公安部交通管理科学研究所 一种视频点位备案信息校验方法
CN113159193B (zh) * 2021-04-26 2024-05-21 京东科技信息技术有限公司 模型训练方法、图像识别方法、存储介质及程序产品

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104077613A (zh) * 2014-07-16 2014-10-01 电子科技大学 一种基于级联多级卷积神经网络的人群密度估计方法
CN104504394A (zh) * 2014-12-10 2015-04-08 哈尔滨工业大学深圳研究生院 一种基于多特征融合的密集人数估计方法和系统
CN104994360A (zh) * 2015-08-03 2015-10-21 北京旷视科技有限公司 视频监控方法和视频监控系统
CN105590094A (zh) * 2015-12-11 2016-05-18 小米科技有限责任公司 确定人体数量的方法及装置
WO2016183766A1 (en) * 2015-05-18 2016-11-24 Xiaogang Wang Method and apparatus for generating predictive models

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8195598B2 (en) * 2007-11-16 2012-06-05 Agilence, Inc. Method of and system for hierarchical human/crowd behavior detection
US8331669B2 (en) * 2009-08-25 2012-12-11 Siemens Aktiengesellschaft Method and system for interactive segmentation using texture and intensity cues
JP6356266B2 (ja) * 2014-12-24 2018-07-11 株式会社日立国際電気 群集監視システム
US9858525B2 (en) * 2015-10-14 2018-01-02 Microsoft Technology Licensing, Llc System for training networks for semantic segmentation

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104077613A (zh) * 2014-07-16 2014-10-01 电子科技大学 一种基于级联多级卷积神经网络的人群密度估计方法
CN104504394A (zh) * 2014-12-10 2015-04-08 哈尔滨工业大学深圳研究生院 一种基于多特征融合的密集人数估计方法和系统
WO2016183766A1 (en) * 2015-05-18 2016-11-24 Xiaogang Wang Method and apparatus for generating predictive models
CN104994360A (zh) * 2015-08-03 2015-10-21 北京旷视科技有限公司 视频监控方法和视频监控系统
CN105590094A (zh) * 2015-12-11 2016-05-18 小米科技有限责任公司 确定人体数量的方法及装置

Also Published As

Publication number Publication date
US10452925B2 (en) 2019-10-22
US20180005047A1 (en) 2018-01-04
CN107566781A (zh) 2018-01-09

Similar Documents

Publication Publication Date Title
CN107566781B (zh) 视频监控方法和视频监控设备
JP7092177B2 (ja) 画像処理装置、画像処理方法、及びプログラム
US20170161591A1 (en) System and method for deep-learning based object tracking
CN105519102B (zh) 视频监控方法和视频监控系统
CN108288027A (zh) 一种图像质量的检测方法、装置及设备
CN109190601A (zh) 一种监控场景下目标对象识别方法及装置
CN111325051B (zh) 一种基于人脸图像roi选取的人脸识别方法及装置
CN110443210A (zh) 一种行人跟踪方法、装置以及终端
CN109710780A (zh) 一种归档方法及装置
KR20150051711A (ko) 유해 콘텐츠 영상 차단을 위한 피부 영역 추출 장치 및 방법
CN110059761A (zh) 一种人体行为预测方法及装置
CN109803112A (zh) 基于大数据的视频分析管理方法、装置及系统、存储介质
CN109815936A (zh) 一种目标对象分析方法及装置、计算机设备和存储介质
CN108363953A (zh) 一种行人检测的方法及双目监控设备
CN108932774A (zh) 信息检测方法和装置
Shahrian et al. Temporally coherent and spatially accurate video matting
EP2904546B1 (en) Method and apparatus for ambient lighting color determination
CN109784157A (zh) 一种图像处理方法、装置及系统
CN113221835B (zh) 面审视频的场景分类方法、装置、设备及存储介质
EP3862902B1 (en) System and method for privacy-aware analysis of video streams
CN112132218B (zh) 图像处理方法、装置、电子设备及存储介质
CN110751034B (zh) 行人行为识别方法及终端设备
Fradi et al. Crowd context-dependent privacy protection filters
Tiwari et al. Development of Algorithm for Object Detection & Tracking Using RGB Model
CN111062337B (zh) 人流方向检测方法及装置、存储介质和电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant