ICCV |重新思考人群中的计数和定位:一个纯粹基于点的框架

时间:2024-02-15 16:06:43

论文:Rethinking Counting and Localization in Crowds:A Purely Point-Based Framework

代码:https://github.com/TencentYoutuResearch/CrowdCounting-P2PNet

获取:在公众号CV技术指南中回复关键字“0007”可下载此论文

欢迎关注公众号 CV技术指南 ,专注于计算机视觉的技术总结、最新技术跟踪、经典论文解读。

 

前言:

在人群中定位个体更符合后续高级人群分析任务的实际需求,而不是简单地计数。然而,现有的基于定位的方法依赖于作为学习目标的中间表示(即密度图或伪框)是违反直觉和容易出错的。

论文提出了一个纯粹基于点的框架,用于联合人群计数和个体定位。对于这个框架,论文提出了一个新的度量标准,称为密度归一化平均精度 (density Normalized Average Precision --nAP),而不是仅仅报告图像级别的绝对计数误差,以提供更全面和更精确的性能评估。

此外,论文在这个框架下设计了一个直观的解决方案,称为点对点网络(P2PNet)。P2PNet 丢弃了多余的步骤,直接预测一组point proposals来表示图像中的头部,与人类标注结果一致。通过彻底的分析,论文揭示了实现这种新颖想法的关键步骤是为这些proposals分配最佳学习目标。

P2PNet 不仅在流行的计数基准上显着超越了SOTA方法,而且还实现了有前途的定位精度。

 

 

出发点

  1. 在人群分析的所有相关具体任务中,人群计数是一个基本支柱,旨在估计人群中的个体数量。 然而,简单地给出一个数字显然远远不能支持后续更高层次的人群分析任务的实际需求,如人群跟踪、活动识别、异常检测、流量/行为预测等。

     

  2. 事实上,这个领域有一个明显的趋势,即除了简单的计数之外,更具有挑战性的细粒度估计(即个体的位置)。 具体来说,一些方法将人群计数视为头部检测问题,但在对小尺度头部进行劳动密集型注释上留下了更多的努力。 其他方法试图生成仅提供点注释的头部伪边界框,但这至少看起来很棘手或不准确。 同样试图直接定位个体,有几种方法在抑制或分裂过近的候选实例时陷入困境,由于头部尺度的极端变化,特别是对于高度拥挤的区域,它们容易出错。

     

  3. 在评估指标方面,一些有远见的工作鼓励采用补丁级别的指标进行细粒度评估,但它们仅提供了对定位的粗略衡量标准。 其他现有的定位感知指标要么忽略了人群中的显着密度变化,要么缺乏对重复预测的惩罚。

 

 

创新思路

  1. 为了解决上述问题,论文提出了一个纯粹基于点的框架,用于联合计数和定位人群中的个人。 该框架直接使用点标注作为学习目标,同时输出点来定位个体,受益于点表示的高精度定位特性和相对便宜的标注成本。

     

  2. 论文提出了一种称为密度归一化平均精度 (density Normalized Average Precision --nAP) 的新指标,为定位和计数错误提供综合评估指标。nAP 指标支持框和点表示作为输入(即预测或注释),没有上述缺陷。

     

  3. 作为这个新框架下的直观解决方案,论文开发了一种新方法来直接预测一组具有图像中头部坐标及其置信度的point proposals。具体来说,论文提出了一个点对点网络 (P2PNet) 来直接接收一组带标注的头部点用于训练,并在推理过程中预测点。

    为了使这样的想法正确工作,论文深入研究了ground truth target分配过程,以揭示这种关联的关键。结论是,无论是多个proposals 与单个ground truth匹配的情况,还是相反的情况,都会使模型在训练期间混淆,导致高估或低估计数。

    因此,论文建议通过匈牙利算法进行一对一匹配,将point proposals与其ground truth target相关联,未匹配的proposals 应归类为负样本。凭经验表明,这种匹配有利于改进 nAP 指标,作为论文在新框架下解决方案的关键组成部分。这种简单、直观和高效的设计产生了SOTA的计数性能和有前途的定位精度。

 

 

Methods

 

Purely Point-based Framework

这里简要说明这种新框架的思路。给定一个有N个个体的图像,用N个点来表示个体的头部中心点。网络输出两个东西,一个是预测头部的中心点P,一个是该中心点的置信度C。目标是使预测点与ground truth尽可能地接近,并有足够高的置信度。

与传统的计数方法相比,该框架提供的个体位置有助于那些基于运动的人群分析任务,如人群跟踪、活动识别、异常检测等 此外,该框架不依赖于劳动密集型标注、不准确的伪框或棘手的后处理,受益于原始点表示的高精度定位特性,特别是对于人群中高度拥挤的区域。

因此,这个新框架由于其相对于传统人群计数的优势和实用价值而值得更多关注。 然而,由于存在严重的遮挡、密度变化和标注错误,处理这样的任务是非常具有挑战性的 ,这在 [13] 中甚至被认为是理想的但不可行的。

 

 

Density Normalized Average Precision

一个预测点 pˆj 只有在它可以匹配到某个ground truth pi 时才被归类为 TP。 匹配过程由基于像素级欧几里德距离的准则 (ˆpj , pi) 指导。 然而,直接使用像素距离来测量亲和度忽略了人群之间大密度变化的副作用。 因此,为此匹配标准引入了密度归一化,以缓解密度变化问题。

 

简单说来就是引入最近邻K(取3)个点,将它们的距离归一化。

 

图片

 

用公式表示如下:

图片

 

 

预测与ground truth匹配方案

图片

 

(a) 在为每个ground truth点选择最近的提议时,多个ground truth点可能与同一个提议匹配,这会导致计数低估。 (b) 在为每个提案选择最近的ground truth时,多个提案可能会与相同的地面实况点匹配,这会导致高估计数。 (c) 论文通过匈牙利算法进行一对一匹配没有以上两个缺陷,因此适合直接点预测。

 

 

 P2PNet

图片

P2PNet 的整体架构

 

建立在 VGG16 之上,它首先引入了一个上采样路径来获得细粒度的深度特征图。 然后它利用两个分支同时预测一组点提议及其置信度分数。pipeline中的关键步骤是确保point proposals和ground truth点之间的一对一匹配,这决定了这些proposals的学习目标。

 

loss function如下:

图片

 

 

Conclusion

 

图片

 

图片

 本文来源于公众号 CV技术指南 的论文分享系列。

欢迎关注公众号 CV技术指南 ,专注于计算机视觉的技术总结、最新技术跟踪、经典论文解读。

在公众号中回复关键字 “技术总结” 可获取以下文章的汇总pdf。

其它文章

CV技术指南--精华文章汇总分类

计算机视觉中的自注意力

综述专栏 | 姿态估计综述

漫谈CUDA优化

为什么GEMM是深度学习的核心

使用深度神经网络为什么8位足够?

经典论文系列--胶囊网络:新的深度学习网络

经典论文系列 | 目标检测--CornerNet & 又名 anchor boxes的缺陷

如何看待人工智能的泡沫

使用Dice loss实现清晰的边界检测

PVT--无卷积密集预测的多功能backbone

CVPR2021 | 开放世界的目标检测

Siamese network总结

视觉目标检测和识别之过去,现在及可能

在做算法工程师的道路上,你掌握了什么概念或技术使你感觉自我提升突飞猛进?

计算机视觉专业术语总结(一)构建计算机视觉的知识体系

欠拟合与过拟合技术总结

归一化方法总结

论文创新的常见思路总结

CV方向的高效阅读英文文献方法总结

计算机视觉中的小样本学习综述   

知识蒸馏的简要概述   

优化OpenCV视频的读取速度

NMS总结   

损失函数技术总结

注意力机制技术总结   

特征金字塔技术总结   

池化技术总结

数据增强方法总结   

CNN结构演变总结(一)经典模型

CNN结构演变总结(二)轻量化模型 

CNN结构演变总结(三)设计原则

如何看待计算机视觉未来的走向   

CNN可视化技术总结(一)特征图可视化

CNN可视化技术总结(二)卷积核可视化

CNN可视化技术总结(三)类可视化

CNN可视化技术总结(四)可视化工具与项目