人群密度分析算法调研
概述
人群行为分析算法分为四个主要方向:
1、行人检测(Pedestrian Detection)
2、人群计数(Crowd Counting)
3、人群密度分析(Crowd Density Estimation)
4、人群状态分析(Crowd Behaviour Analysis)
人群计数与人群密度分析为其中重要的组成内容。人群计数与人群密度分析算法通常的方法大致可以分为三种:
1 、行人检测 :这种方法比较直接,在人群较稀疏的场景中,通过检测视频中的每一个行人,进而得到人群计数的结果,一般是用基于外观和运动特征的boosting,贝叶斯模型为基础的分割,或集成的自顶向下和自底向上的处理,这种方法在人群拥挤情况下不大奏效,需要运用到基于部件模型(如DPM)的检测器来克服人群拥挤遮挡的问题。
2、视觉特征轨迹聚类:对于视频监控,一般用KLT跟踪器和聚类的方法,通过轨迹聚类得到的数目来估计人数。
3、基于特征的回归:建立图像特征和图像人数的回归模型, 通过测量图像特征从而估计场景中的人数。由于拥挤情况下采用直接法容易受到遮挡等难点问题的影响,而间接法从人群的整体特征出发,具有大规模人群计数的能力。
人群密度分析算法技术分析
传统方法
1、前景分割:前景(行人或人群)分割的目的是将人群从图像中分割出来便于后面的特征提取,分割性能的好坏直接关系的最终的计数精度,因此这是限制传统算法性能的一个重要因素。常用的分割算法有:光流法、混合动态纹理、小波分析 、背景差分等。
2、特征提取:从分割得到的前景提取各种不同的底层特征,常用的特征有:人群面积和周长、边缘信息、纹理特征、闵可夫斯基维度等。
3、人数回归:将提取到的特征回归到图像中的人数。常用的回归方法有:线性回归、分段线性回归、脊回归、高斯过程回归等。
深度学习方法
Step1、给定一张图像,用CNNs来估计人数,一般有两种方案:
Step2、一是输入图像,输出区域内估计的人头数目;
Step3、二是输出人群密度图(每平方米多少人),然后再通过积分求总人数。
主流算法分析
1、Cross-scene Crowd Counting via Deep Convolutional Neural Network(CVPR2015)
目的:
解决算法在不同场景下通用性问题
难点:
1、寻找一种可以更好表达人群特征的方式(用深度学习替代手工特征)。
2、不同场景有不同的透视率,人群分布与光照条件。
3、传统方法使用的前景分割方法很难得到精确的分割结果。
4、数据集(现有数据集样本数目少,场景单一)。
贡献:
1、提出了一种同时进行两个任务的CNN模型,一个任务是估计人群密度图,一个任务是人数统计。
2、提出了一种新场景无需要人工标定自适应finetune的训练流程。
3、提出的框架不再依赖于前景分割。
4、提出了一个当时最大的人群密度分析测试集(WorldExpo’10 Crowd Counting Dataset)。
训练流程图
训练数据准备
1、图(a)为样本的透视图估计。越红代表透视图值越大。
2、图(b)展示了估计出来的密度图。分别展示出了密度图跟计算密度图的不同区域。可以看出,随着透视值的增加,框变大。
预测网络结构
测试结果
UCSD dataset
UCF CC 50 dataset
2、Single-Image Crowd Counting via Multi-Column Convolutional Neural Network(CVPR2016)
目的:
提出了一种根据任意单张样本精确估计任意人群密度与透视角度的人群数量估计算法。
难点:
1、不使用前景分割技术。
2、人群的分布与密度在数据集中变化多样,往往存在极大的遮挡。
3、样本中行人尺度变化很大。
贡献:
1、提出一张多分支网络结构解决目标多尺度问题,实现行人密度图输出。
2、使用全卷积结构代替全连接,支持任意尺存样本输入,降低失真。
3、建立一个约1200张样本的新数据集(Shanghaitech dataset)
MCNN结构图
训练数据准备
基于几何自适应核大小的密度图计算
通常情况头部的大小与两个相邻的人在拥挤的场景中的中心之间的距离有关, 在人群较密的情况下近似等于人头大小,实验验证β=0.3效果最好。这样生成的密度图在人头小/大的位置高斯核的方差小/大(较集中/分散),能够更好地表征人头大小的特征。
对比测试
不同尺度单列网络结构与多列网络结构结果对比
3、CrowdNet: A Deep Convolutional Network for Dense Crowd Counting (ACM 2016)
目的:
提出一种基于深度学习的解决高密度人群密度分析算法
难点:
1、传统的检测方法无法胜任高密度、高重叠的场景的人群计数工作。
2、样本的透视方式多种多样。
3、比其它CV任务复杂的多的数据标定工作。
贡献:
1、使用深浅结合的双分支网络结构解决目标多尺度变化问题。
2、从样本中多尺度取样做数据扩展,提升多尺度的兼容性。
CrowdNet结构图
训练数据准备
对比测试
4、Slicing Convolutional Neural Network for Crowd Video Understanding(CVPR 2016.7)
特点:
利用2D卷积实现人群密度时空分析。
目的:
传统的3D卷积或者跟踪方法将样本结构特征与动态特征混合在一起同时处理,作者认为这两种完全不同的特征可以通过设计一种先进的网络分别提取有价值的语义信息,用于人群密度视频分析。
贡献:
提出一种全新名为Slicing CNN(S-CNN)网络结构,主要包括三个网络分支。包括一个作用于视频序列帧上(x,y方向)的2D空间滤波分支,产生3D的特征集。以及两个使用第一个分支作为输入,分别作用于时间方向与x,y轴的2D滤波分支。
5、Spatiotemporal Modeling for Crowd Counting in Videos(ICCV 2017.7)
特点:
利用LSTM实现长序列人群密度时空分析。
目的:
主流的视频人群密度分析算法在处理视频时以帧为单位,没有考虑十分重要的视频时序特征。
贡献:
1、提出一种新的网络结构称为ConvLSTM用于视频行人计数。
2、扩展ConvLSTM为双向LSTM,获取时序方向上更多的双向特征。
3、进行了一系列迁移学习测试,证明本文提出的方法通过少数视频帧微调,在全新的数据集上取得很好的效果。
6、Other Papers
Deep People Counting in Extremely Dense Crowds(ACM2015)
贡献:
1、提出一种端到端的网络结构,预测ROI内的行人个数。
2、为了降低误检率提出了一种负样本拓展策略。
CNN-based Cascaded Muti-task Learning of High-level Prior and Density Estimation for Crowd Counting(AVSS 2017.8)(pytorch code)
贡献:
1、提出一种端到端的新型网络结构,并行进行人数统计任务与人群密度分析任务。
Crowd counting via scale-adaptive convolutional neural network(2017.11)(caffe code)
贡献:
1、提出一种自适应尺度的CNN结构(SaCNN)。
2、提出一种Relative Count Loss。
3、建立一个新的数据集(SmartCity)。
Fully Convolutional Crowd Counting On Highly Congested Scenes(VISAPP 2017.1)
贡献:
1、提出一种训练数据数据拓展的方法,降低训练数据的冗余性,提升模型的鲁棒性。
2、提出一种单列,全卷积网络结构进行人群密度热力图预测。
3、提出一种前向运算时多尺度样本输入的策略,增强不同透视率相机的识别能力。
ResNetCrowd: A Residual Deep Learning Architecture for Crowd Counting,Violent Behaviour Detection and Crowd Density Level Classification(AVSS 2017.5)
贡献:
1、提供了一个100张图片组成的完整标记了人群数目,暴力行为以及人群密度估计的数据集。
2、提出了一种基于深度残差网络的多任务网络结构,同时进行人群数目统计,暴力行为检测以及人群密度估计任务。
3、对提出的多任务系统进行定量分析与对比测试。
技术重点与难点
常用人群密度估计数据库
人群密度分析算法调研相关推荐
- 人群行为分析算法调研
概述 人群行为分析算法分为四个主要方向: 1.行人检测(Pedestrian Detection) 2.人群计数(Crowd Counting) 3.人群密度分析(Crowd Density Esti ...
- 浅谈人群行为分析算法
概述 人群行为分析算法分为四个主要方向: 1.行人检测(Pedestrian Detection) 2.人群计数(Crowd Counting) 3.人群密度分析(Crowd Density Esti ...
- 人群密度检测matlab算法,基于视频的人员密度检测.doc
山东建筑大学 课 程 设 计 说 明 书 题 目:课 程:数字处理课程设计院 (部):信息与电气工程学院专 业:电子信息工程班 级:学生姓名:学 号:指导教师:完成日期: 摘要3 一.设计目的4 二. ...
- 密度聚类算法DBSCAN实战及可视化分析
密度聚类算法DBSCAN实战及可视化分析 目录 密度聚类算法DBSCAN实战及可视化分析 DBSCAN实战及聚类效果可视化 构建分类算法获得预测推理能力 DBSCAN实战及聚类效果可视化 DBSCAN ...
- 人群密度算法_算法人群的力量。
人群密度算法 介绍 (Introduction) One of the most fascinating historical examples of the power of crowds can ...
- 压力密度杯行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
压力密度杯市场的企业竞争态势 该报告涉及的主要国际市场参与者有TQC.BEVS.BYK Instruments.Solvica.JARP.Komal Scientific.elcometer.Astr ...
- 人群分析行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
人群分析市场的企业竞争态势 该报告涉及的主要国际市场参与者有Nokia Corporation.AGT International.NEC Corporation.Walkbase.Spigit, I ...
- 深度学习上的又一重点发现——利用MSCNN实现人群密度监测
作者|李秋键 出品|AI科技大本营(ID:rgznai100) 人群密度计数是指估计图像或视频中人群的数量.密度或分布,它是智能视频监控分析领域的关键问题和研究热点,也是后续行为分析.拥塞分析.异常检 ...
- 利用MSCNN实现人群密度监测
人群密度计数是指估计图像或视频中人群的数量.密度或分布,它是智能视频监控分析领域的关键问题和研究热点,也是后续行为分析.拥塞分析.异常检测和事件检测等高级视频处理任务的基础.随着城市化进程的快速推进, ...
- 人群行为分析--Understanding Pedestrian Behaviors from Stationary Crowd Groups
Understanding Pedestrian Behaviors from Stationary Crowd Groups CVPR2015 本文主要探讨 静态人群对行人行为的影响 人群行为的建模 ...
最新文章
- ToolBarManager可任意选择你想要的菜单
- CDH 5.16.1 + Redhat 7.0 部署(二)
- linux常用命令:系统目录说明及命令ls,cp,touch,history,gparted分区
- MySQL学习笔记01【数据库概念、MySQL安装与使用】
- 基于字典 ,输入季节显示月份(Python)
- 基于ABP落地领域驱动设计-04.领域服务和应用服务的最佳实践和原则
- python人工智能原理及其应用_人工智能原理与实践:基于Python语言和TensorFlow
- 台式计算机固定资产属于哪类,电脑属于固定资产的哪一类
- ahci模式下无法启动Linux,电脑AHCI模式无法开启是怎么回事?
- Linux安全驱动模块,【漏洞预警】CVE-2017-2636:linux 内核n_hdlc驱动模块 本地提权漏洞...
- Pytorch中expand_as()函数详解
- 使用JMeter进行简单的app接口测试
- 实战项目-python库分析科比生涯数据
- 数据分析师有发展前景吗?
- 【图解线性代数】第四章—向量组及向量空间的几何意义
- C语言string中常用方法
- 车内看车头正不正技巧_路边侧方位实用停车技巧,学会这一招,再也不担心车头刮到前车...
- 用MFC画一个美国队长的盾牌
- 零知识证明系列之一——初探零知识证明
- 2021年高考绵阳中学成绩查询,四川省绵阳中学2021年排名