近年来,安防监控在智慧城市中扮演的角色越来越重要,监控视角下的人群分析对于构建智慧城市的重要性日渐显现。

人群计数与定位作为其中的基础任务,服务于人流预测、城市规划、空间设计等高阶任务。

然而,该领域依然缺乏大规模的数据集以及公平的测试基准平台,尤其是人群定位依然没有一个有效的衡量标准。

为此,主要做了以下几项工作(对应论文已经被T-PAMI接收):

  • 论文题目:

  • NWPU-Crowd: A Large-Scale Benchmark for Crowd Counting and Localization
  • 论文地址:

    https://ieeexplore.ieee.org/document/9153156

https://arxiv.org/abs/2001.03360

  • 项目地址:

  • https://gjy3035.github.io/NWPU-Crowd-Sample-Code/
  1. 构建了包含5,000余幅图像的人群计数/定位数据集NWPU-Crowd,并对其以人头点和人头框的方式进行标注;

  2. 搭建了线上测试平台,能够让研究者公平地参与测试集的评估;

  3. 更新了C3F人群计数框架,完美支持Python3并将密度图处理改为在线生成,节省存储;

  4. 公开了针对人群计数专门设计的标注工具,能够有效应对尺度变化、多标漏标的现象。

更多公开的内容参见项目主页,包含了论文的历史版本、公开的数据集、样例代码、标注工具、实验结果等。本文将从上述四个方面介绍该工作。

    01    

NWPU-Crowd数据集

数据获取

NWPU-Crowd数据集包含了5,109幅常见的人群图像,图像来源于Google, Baidu, Bing, Sougou等常用搜索引擎与pixbay, pxhere, wallhere等图片素材网站。以“人群、拥挤,春运,军训”等常见关键词进行检索收集,以求囊括多样化的人群场景。具体的搜索关键词如下表所示:

数据集特色

NWPU-Crowd有以下几个特色:

  • 负样本。数据集中引入了351幅负样本图像,即无人场景。一些在纹理上与拥挤人群纹理相似的图像被收集进来,例如动物迁徙、花海、密集排列的图像,期望能够帮助模型提高泛化性能。

  • 高分辨率图像。对于极端拥挤的超大人群场景,数据集搜集了高质量的、高分辨率的图像,其中最大尺寸达到了4028×19044。数据图像的平均分辨率为2191×3209。

  • 更加明显的表观差异。整个数据集单幅图像人数范围在0到20,033。数据内部人头目标的面积范围(人头最小4个像素,最大超过一千万像素)造成了目标的表观特征差异明显。

下表展示了NWPU-Crowd与主流数据集的基本信息对比:

数据集对比

下图展示了一些NWPU-Crowd数据集中典型的场景。第一行为正常光照,第二行和第三行为极端光照与低亮度场景,最后一行为负样本图像。

数据集样例图像

数据和预训练模型下载方式:【我爱计算机视觉】公众号后台回复『NWPU』

注:目前数据集的扩展工作正在进行中,作者称争取在1年内将规模提升至1万张图像、500万个实例目标。

    02    

CrowdBenchmark评测平台

与检测、分割、跟踪等领域相比,人群计数、定位领域缺乏一个公开的算法性能评测平台,这也导致了一些性能对比上的不准确现象的发生。

此外,部分数据集自身也没有提供详细的评测标准和方案,导致一些性能对比有一定的不公平性。

因此,类似于COCO、CityScapes和MOT等Benchmark,构建人群计数/定位领域的评测平台是非常重要的。

评测准则

在评测网站中,允许.edu邮箱自主注册账户进行评估,同时对非.edu账户,使用注册邮箱发送个人信息(姓名、单位及用途)到crowdbenchmark.com@gmail.com 也可完成注册。

为确保公平性,对于每一项任务,每一个账户在每个自然月有6次提交机会。

目前平台已经吸引了50余位来自世界各地的科研工作者,评估了超过20位用户的150余次提交结果。特别地,人群定位任务目前依然在内测中,预计将于本月末开放评估。

下图为评测平台截图:

评测网站截图

评估标准

►人群计数

在人群计数任务中,评测平台采用最为流行的三种指标:MAE,MSE和NAE,具体定义如下:

为了全方位评估算法性能,从人群数量以及场景亮度将数据集划分为多个类别,并对每个类别进行单独评估。

具体地,人群数量包含五个类别:{负样本, (0, 100], (100, 500], (500, 5000], 大于5000};

亮度分为三个类别:{[0, 0:25], (0:25, 0:5], (0:5, 0:75]}。

分别记为:S0, S1, ..., S4; L0, L1, L2。

►人群定位

在人群定位中,由于传统数据集对人头尺寸没有标注,因此还没有一个统一的、广泛被大家认可或使用的评估标准。

得益于NWPU-Crowd对人头框进行了标注,人头尺寸很容易被计算,因此人群定位任务的评测可以被视为一个点集匹配任务。

这样,就可以用Precision,Recall以及F1-measure来衡量定位的结果。

对于一个实例目标,设定了两个尺寸阈值,一个是矩形框的外接圆的半径,一个是矩形框长和宽最小值的1/2(即内切圆的半径)。

公式表示为:

如果预测点能够落入到某一实例的外接圆或内切圆内,则认为该点成功定位了该实例。很明显,就定位标准而言,后者比前者更加严格。那么,问题就转换成了两个点集(预测点集和GT点集)的匹配。

考虑到效率问题,评测系统只需计算出TP,FP和FN的值,即可得到Precision、Recall以及F1-measure,因此采用匈牙利(Hungarian)算法求得两个点集的最大匹配即可。

同样地,为了全方位评估算法性能,以人头框的像素数为标准,将实例分为六个类别,分别是:

分别记为:A0, A1, ..., A5。

    03    

样例代码(C3F更新版)

为了方便大家使用NWPU-Crowd开展计数和定位工作,提供了样例代码供大家快速实验和复现。相比于C3F框架,主要区别在于:

  • 代码完美遵循Python3.X标准;

  • 数据与处理过程中,直接生成点图,节省存储,在线生成密度图和定位图;

  • 更直观的可视化结果,相比于之前的灰度显示,现已经改为彩色密度图。

►人群计数

样例代码包含了对6个主流算法(MCNN, C3F-VGG, CSRNet, CANNet, SCAR, SFCN+)的复现参数和实验。

此外在文章中,还执行了SANet, PCC Net, Reg+Det Net和BL等经典方案。

在测试集的结果如下表:

人群计数性能指标排行榜

从表格可以看出,高密度场景(S4,人数大于5000人)低亮度(L0,YUV空间亮度低于0.25)的场景,估计误差较大。下图密度图预测的可视化结果一定程度上反映了该现象。

人群计数可视化结果

  • 代码地址:

    https://github.com/gjy3035/NWPU-Crowd-Sample-Code

  • 预训练模型:

    http://share.crowdbenchmark.com:2443/home/Pre-trained_Models_NWPU-Crowd

  • 可视化结果:

    http://share.crowdbenchmark.com:2443/home/predicted_density_map_on_NWPU-Crowd_val

►人群定位

样例代码中,文章复现了经典的RAZNet的Localization branch,简称为RAZ_loc。此外,在文章中,一些经典的目标检测算法和人群定位方案也参与了评比,例如:Faster RCNN, Finding TinyFaces, 高斯先验重建等。

在测试集的结果如下:

人群定位性能指标排行榜

从Box level(A0~A5代表根据人头大小划分的六个类别)的分类结果来看,没有一个算法可以同时处理好小目标与大目标的定位问题。

下图定位结果的可视化结果也反映了上述结论(其中绿框代表实例目标的外接圆;绿点代表预测结果匹配正确,即TP;红点表示漏检即FN;紫色表示虚检,即FP)。

人群定位可视化结果

  • 代码地址:

    https://github.com/gjy3035/NWPU-Crowd-Sample-Code-for-Localization

  • 预训练模型:

    http://share.crowdbenchmark.com:2443/home/Pre-trained_Models_NWPU-Crowd

  • 可视化结果:

    http://share.crowdbenchmark.com:2443/home/Predicted_Localization_Results_on_NWPU-Crowd_val

    04    

标注工具

工欲善其事,必先利其器。一个简单好用的标注工具是非常重要的。针对于人群计数/定位任务,文章作者开发了一个基于Web端的人群标注工具。

主要特色有以下几个:

  • 为应对不同场景,在标注过程中,标注工具自动将整张图片分割成 16×16 的小区块。使得标注者可以在原图的5个尺度下(1x,2x,4x,8x,16x)标注目标。

  • 为防止漏标多标情况,右侧内容显示框包含两部分:全透明区域代指左侧每个小方格的真实区域,四周浅蓝色透明区域为邻近区域。

  • 每一个区块均可设置为是否标注完成。该功能在标注超大场景时特别有效,一张图可能会持续一个小时。每一个区块的划分使得每张图也可随时随地中断标注以及快速定位标注位置。

标注工具截图

  • 下载链接:

    https://github.com/Elin24/cclabeler

    05    

总结与展望

通过构建数据集以及大量的实验,发现目前存在着以下一些值得关注的问题。

  • 如何提高模型的鲁棒性?目前的计数模型在应对高密度人群区域时,趋向于学习局部特征,模型在负样本和背景目标上的表现较差。

  • 如何设计算法以缓解不同场景属性之间的影响?由于高密度与低密度场景间表观特征的巨大差异,场景间的性能影响非常明显。现实中,对于一个监控场景,人群的密度是不断在变化中的,如何设计算法减弱不同密度场景对性能的影响至关重要。

  • 如何降低模型在极端拥挤场景下的估计误差?由于目标之间的相互遮挡、目标较小等原因,现有的模型在应对该类场景时,往往误差较大。

  • 如何同时精准地定位微小目标和大尺寸目标?由于视角变化的存在,人头目标的尺寸变化较大,现有的算法难以同时处理该种情况。因此,亟待一种针对人群场景的特定算法的出现。

在未来的工作中,文中称也将致力于缓解和应对上述问题,推动人群计数/定位在实际中的落地和应用。

END

备注:人群计数

行人-ReID-步态交流群

行人检测、行人重识别、步态识别等技术,

若已为CV君其他账号好友请直接私信。

我爱计算机视觉

微信号:aicvml

QQ群:805388940

微博知乎:@我爱计算机视觉

投稿:amos@52cv.net

网站:www.52cv.net

在看,让更多人看到  

西工大PAMI论文:发布大规模人群计数/定位基准平台相关推荐

  1. 【论文汇总】人群计数中Transformer的应用,持续更新

    1.CCTrans: Simplifying and Improving Crowd Counting with Transformer 论文地址:https://arxiv.org/pdf/2109 ...

  2. 干货!面向人群计数的跨模态协作表征学习方法和大规模RBGT数据集

    点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入! 人群计数是一项基本但又十分具有挑战性的视觉任务,它需要丰富的信息来生成像素级别的人群密度图.之前的方法大多数仅使有限的用光学图像信息,在 ...

  3. 今日 Paper | 虚拟试穿网络;人群计数基准;联邦元学习;目标检测等

    2020-01-15 05:41:40 为了帮助各位学术青年更好地学习前沿研究成果和技术,AI科技评论联合Paper 研习社(paper.yanxishe.com),推出[今日 Paper]栏目, 每 ...

  4. 【技术短文】基于深度负相关学习的人群计数方法

    SIGAI 特邀作者:cnns 原创声明:本文为 SIGAI 原创文章,仅供个人学习使用,未经允许,不得转载,不能用于商业目的. 1.     人群计数 监控视频中的人群自动计数有着重要的社会意义和市 ...

  5. CVPR 2022 57 篇论文分方向整理 + 打包下载|涵盖目标检测、语义分割、人群计数、异常检测等方向

    CVPR2022论文速递系列: CVPR 2022 3月3日论文速递(22 篇打包下载)涵盖网络架构设计.姿态估计.三维视觉.动作检测.语义分割等方向 CVPR 2022 3月4日论文速递(29 篇打 ...

  6. 人群计数最全代码、数据、论文合集

    2021.11.19更新: 人群计数 /Crowd Counting Rethinking Counting and Localization in Crowds:A Purely Point-Bas ...

  7. 人群计数-SaCNN论文翻译

    论文翻译 摘要: 人群计数的任务是自动估计人群图像中的行人数目.为了应对人群图像中普遍存在的尺度和视角变化,最先进的方法是采用多列CNN架构来回归人群图像的密度图.对于不同尺度的行人(头),多列具有不 ...

  8. 【论文快读】人群计数FIDTM

    Focal Inverse Distance Transform Maps for Crowd Localization and Counting in Dense Crowd 华中科大,北邮 挺实用 ...

  9. 人群计数北航最新综述论文阅读:CNN-based Density Estimation and Crowd Counting: A Survey

    针对220项工作,讨论了现有主流方法(主要基于CNN)在各任务中有效的原因,对基本开放问题.挑战和未来方向的见解. 对模型设计.数据集收集以及一些推广到其他领域的重要问题进行了展望,包括领域适应或迁移 ...

最新文章

  1. 阿里云应用性能管理(APM)产品-应用实时监控服务(ARMS)技术解密 资料下载...
  2. 图解用工具对BHO做初步研究
  3. 百度新闻 谷歌新闻_每日新闻摘要:到目前为止,Google I / O提供的最佳信息
  4. C语言学习笔记---时间函数asctime()和localtime()
  5. Eclipse:An internal error occurred during: Building workspace. GC overhead limit exceeded
  6. DELL服务器故障代码.xlsx
  7. ibm刀片服务器 维护,IBM刀片服务器 一刀搞定企业信息化
  8. 不能注册 DLL/OCX:Regsvr32失败的解决办法
  9. linux版本的pdf软件,3款可以注释标注的Linux版pdf阅读器评测
  10. 一个简洁、美观的登录页面
  11. 正则表达式常用的校验方法
  12. win10解决设置默认打开方式不生效问题(双击每次都要选择默认打开程序)
  13. pycharm-03-工程结构
  14. 微搭低代码Tab栏组件使用指南
  15. Flutter高仿微信-第51篇-群聊-修改群名
  16. 深度推荐模型之NFM模型
  17. 基于 WeDataSphere Prophecis 与 KubeSphere 构建云原生机器学习平台
  18. matlab表达式比未知数多,matlab求解未知数
  19. Day 3 Linux(目录篇 、文件操作篇 、压缩解压相关命令, 编辑器vi 、编译器gcc 、调试器gdb、 makefile工程管理器初学)
  20. 博士毕业论文英文参考文献换行_一文解决中英参考文献混排问题

热门文章

  1. 高性能裸金属服务器应用场景
  2. gitlab快速入门
  3. 万变不离其宗之ZYNQ资源
  4. 如何选择适合自己数据的统计检验方法
  5. 微信分享链接优化 title icon 描述
  6. pio读取 Excel中 电话号码和身份证的问题
  7. python之求最小公倍数
  8. 图学习02—图神经网络的发展
  9. 【1小时记住Docker常用命令】Docker学以致用
  10. os.environ[‘CUDA_VISIBLE_DEVICES‘]指定GPU后,还是用的“0“卡