行人检测综述 之 精华提取——图表与挑战

From Handcrafted to Deep Features for Pedestrian Detection:A Survey

从手工制作到深度特征的行人检测:一项调查

调查内容:

  1. 关于行人检测的传统算法和深度学习算法;
  2. 关于行人检测的单光谱检测和多光谱检测;
  3. 关于行人检测的多种数据集;
  4. 关于行人检测的问题和挑战。

一篇好的论文(此综述发表在PAMI期刊,SCI一区TOP),只看图表便可以大概读懂其内容,所以,本博客不对综述内容进行逐句翻译,只撰写综述中的图表和未来挑战。

目录

1 摘要

2 行人检测综述之图像

3 行人检测综述之表格

4 挑战

4.1 尺度方差

4.2 堵塞(遮挡)

4.3 领域自适应

4.4 多传感器融合

4.5 实时检测

5 结论


1 摘要

行人检测是计算机视觉中一个重要但具有挑战性的问题,尤其是在以人为中心的任务中。在过去的十年里,在手工制作和深度特征的帮助下,已经见证了显著的进步。在这里,我们对行人检测的最新进展进行了全面的调查。首先,我们对单光谱检测进行了详细的综述,包括手工制作的基于特征的方法和基于深度特征的方法。对于基于手工特征的方法,我们对方法进行了广泛的回顾,发现在形状和空间上具有大自由度的手工特征具有更好的性能。在基于深度特征的方法的情况下,我们将其分为纯基于CNN的方法和同时使用手工和基于CNN的特征的方法。我们给出了这些方法的统计分析和趋势,其中特征增强、部分感知和后处理方法引起了主要关注。除了单光谱行人检测外,我们还回顾了多光谱行人检测,它为照明变化提供了更稳健的特征。此外,我们还介绍了一些相关的数据集和评估指标,并进行了深入的实验分析。我们在结束这项调查时强调了需要解决的悬而未决的问题,并强调了未来的各种方向。

索引术语:行人检测、基于手工特征的方法、基于深度特征的方法和多光谱行人检测。


什么是图像的单光谱和多光谱?

  1. 单光谱图像: 单光谱图像是通过一种波长范围内的光学传感器(比如普通的彩色摄像头)捕获到的图像,它只包含了可见光信息或某一特定波长范围的光信息。在行人检测中,单光谱图像通常用于普通的行人检测任务,通过提取图像中的颜色、纹理、形状等特征来识别行人。传统的行人检测算法通常基于单光谱图像进行处理,例如使用Haar特征、HOG(方向梯度直方图)特征等。
  2. 多光谱图像: 多光谱图像是通过同时采集多个波段(多个波长)的光学信息得到的图像,比如红外图像、热成像图像等。多光谱图像可以提供比单光谱图像更丰富的信息,包括不同波段下的光谱特征、热量分布等。在行人检测中,多光谱图像可以用于特殊环境下的行人检测任务,比如夜间或低光照条件下的行人检测,因为红外图像能够捕获到人体在红外波段的特征。因此,多光谱图像在一些特殊场景下可能会比单光谱图像具有更好的适用性。
  3. 应用场景不同:总的来说,单光谱图像和多光谱图像都可以用于行人检测任务,但根据实际的应用场景和需求选择合适的图像数据类型是非常重要的。在一般的日常场景下,单光谱图像已经能够满足大部分行人检测的需求;而在一些特殊环境下,多光谱图像可能会提供更多有用的信息来增强行人检测的效果。

2 行人检测综述之图像

图1. 从2000年到2019年,通过谷歌学者搜索获得的关于行人检测的出版物数量不断增加。


 

图2. 在过去十年中,加州理工学院测试集[43]在对数平均漏检率(miss rate)方面的检测性能改进(越低越好)。顶部:我们显示了在 reasonable(R)set 上的性能比较。底部:我们显示的是在 heavy occluded(HO)set 中的比较。条形图中的白色交叉阴影表示使用更准确的注释[241]进行训练和测试。条形图中的白线阴影表示除了外观信息之外还使用了运动提示。

  • R集包括身高超过50个像素的行人,他们身体的遮挡率不到35%。作者比较了30种方法的性能,包括手工制作、深度学习和混合方法。
  • HO集包括身高超过50像素的行人,他们35%至80%的身体被遮挡。这些结果表明,在遮挡等现实挑战下,检测性能仍远不能令人满意。

[43] Piotr Dollar,Christian Wojek,Bernt Schiele,and Pietro Perona. Pedestrian detection:An evaluation of the state of the art. IEEETransactions on Pattern Analysis and Machine Intelligence,34(4):743–761,2010.

[241] Shanshan Zhang,Rodrigo Benenson,Mohamed Omran,JanHosang,and Bernt Schiele. How far are we from solvingpedestrian detection? Proc.IEEE Conference on Computer Visionand Pattern Recognition,2016.


 

图3.大多数行人检测方法通常包括三个连续步骤。

  • 第一步,提案生成,涉及从输入图像生成候选提案。
  • 第二步,提案分类(和回归),包括将提案分配给正类别(行人)或负类别(背景)。
  • 第三步,后处理步骤旨在抑制属于同一行人的重复边界框。
  • 第一步和第二步中,特征提取是关键,包含手工特征到深度特征的各种特征提取策略。

 

图4. 行人检测中使用的深层特征和手工特征的可视化。

  • 在左边(红虚线之前):特征金字塔网络[109]的不同层(P2、P3和P4)。在这里,我们展示了具有最大响应的特征通道。
  • 右边(红色虚线之后):三个颜色通道的手工特征(即LUV),然后是梯度幅度(最后一列)。

 

图5. 两类不同的单光谱行人检测方法:基于手工特征的方法和基于深度特征的方法。

  • 我们进一步将基于手工制作的方法分为基于通道特征的方法和基于可变形零件模型的方法
  • 此外,基于深度特征的行人检测方法分为混合方法和纯基于CNN的方法

 

图6. 基于通道特征的方法中的一些典型特征,包括SquaresChantrs[5]、Chntrs[42]、InformedHaar[239]、LDCF[131]、Checkerbords[243]和NNNF[17]。形状和空间(局部或非局部)的特征自由度从左到右变大。NNFF特征维度长、多样性高并相互独立、重复性少,所以特征自由度最大。

什么是图像的特征自由度?

图像特征自由度是指图像中可以用来描述和区分不同对象的独立特征的数量。在图像处理和计算机视觉中,特征通常指的是能够从图像中提取出来并用来表示图像内容的某种信息,比如边缘、颜色、纹理等。图像特征自由度的大小直接影响了图像的表达能力和图像处理算法的准确性。

一般来说,图像特征的自由度取决于以下几个因素:

  1. 维度:特征的维度指的是特征向量的长度,也就是用来描述一个特征的参数个数。例如,如果用颜色直方图来描述图像的颜色特征,那么特征的维度就是颜色空间的维度,比如RGB颜色空间的维度是3。
  2. 多样性:特征的多样性指的是特征向量的不同维度之间的独立性,也就是这些特征能够提供多少互相独立的信息。如果多个特征之间存在相关性较高,那么它们提供的信息可能会有冗余,降低了特征的自由度。
  3. 重复性:特征的重复性指的是特征向量中是否包含了冗余的信息,比如同一类图像的特征向量之间有很高的相似性。重复性高会导致特征的自由度下降。

在实际应用中,选择合适的特征提取方法和特征描述子是非常重要的,以确保图像特征的自由度足够高,能够有效地表达图像内容并支持后续的图像处理和分析任务。


 

图7.基于深度特征的方法的架构。(a) 和(b)显示了混合方法中的两种技术,而(c)是纯基于CNN的方法。

  • (a)中,CNN提取深层特征用于提案生成,浅层分类器用于提案分类。
  • (b)中,基于手工特征的方法用于提案生成,CNN用于提案分类。
  • (c)中,纯CNN以端到端的方式用于提案生成和分类。

 

图8.基于深度特征的方法统计。左边部分显示了属于不同类的方法数量的变化。图例中的特征表示融合特征和基于注意力的方法的结合,这两种方法都旨在提高特征描述能力。由于这些方法的数量有限,我们忽略了无锚方法和其他方法。右侧部分显示了不同类别的百分比。


 

图9. 各种规模的行人示例。从左到右,行人规模从小到大不等。不同规模的行人有大规模的变化,小规模的行人相对嘈杂和模糊。


 

图10. 不同类型遮挡(即类间和类内遮挡)下的行人示例。左侧显示了一些类间遮挡的示例,其中遮挡程度从严重到裸露不等。右侧显示了一些类内遮挡的示例,其中类内遮挡发生在不同的行人之间。


 

3 行人检测综述之表格

表1. 与物体检测和人体检测的比较。由于特定的挑战,行人检测已经作为一个独立的问题进行了研究。


 

表2. 21种典型的基于手工特征的行人检测方法总结。

浅分类器用于学习行人检测器,其中:

  • CF表示基于通道特征的方法;
  • PM表示基于变形零件模型的方法;
  • SW表示滑动窗口策略。

表3 用于行人检测的45种典型的基于深度特征的方法的总结。这些方法通常建立在卷积神经网络上,其中,'P-CNN'表示纯CNN方法,'Hybrid'表示混合方法,'SW'表示滑动窗口策略,R-CNN是指R-CNN系列中的特征提取方式,包括R-CNN、Fast R-CNN和Faster R-CNN。


 

表4 多光谱行人检测的12种典型方法汇总。P-CNN表示纯CNN方法,Hybrid表示混合方法。


 

表5 行人数据集汇总。顶部是早期行人数据集,中间是现代行人数据集;底部是多光谱行人数据集。full表示全身边界框,visible表示可见的身体边界框,head表示头部边界框。


 

表6 加州理工学院行人数据集上30种最先进方法的漏检率(MR)。R、HO、R+HO和A的集合用于评估。顶部基于加州理工学院的标准注释[43],底部基于新的准确注释[241]。上标C/K/X/Z/1表示CPU、NVIDIA K40 GPU、NVIDIATitanX GPU、NVID IA TitanZ GPU和NVIDIA 1080Ti GPU。


 

表7 KITTI测试集上21种最先进方法的平均精度(AP)。上标C/K/X/1表示CPU、NVIDIA K40 GPU、NVIDIA TitanX GPU和NVIDIA 1080Ti GPU。


 

表8 CityPersons验证集上17种最先进方法的漏检率(MR)。上标1表示NVIDIA 1080Ti GPU。上标†表示遮挡率超过35%的高度超过50像素的行人,而不是遮挡率超过35-80%的高度超过50%像素的行人。因此,†表示难度更高。


 

表9 CityPersons测试装置上最先进检测器的漏检率。


 

表10 使用[112]提供的注释的KAIST R测试集上最先进检测器的漏检率。所有测试集(all)包含白天子集(day)和夜晚子集(night)。上标X/1表示NVIDIA Titan X/1080Ti。


 

表11 改进CityPersons验证集上用于行人检测的通用物体检测器。


 

表12 训练策略对行人检测的影响。简单地使用附加的对象类并不能提高行人检测。


 

表13 训练期间不同数据处理操作对CityPersons验证集的影响。


 

表14 不同骨干对CityPersons验证集的影响。


 

表15 不同NMS策略对CityPersons验证集的影响。


 

表16 检测器在不同数据集上的泛化能力。


 

4 挑战

尽管取得了巨大成功,行人检测仍然面临以下几个挑战。

4.1 尺度方差

交通和视频监控场景通常包含各种规模的行人。图9 显示了一些示例。大规模和小规模的行人表现出高度的阶级内差异。因此,使用单个检测器来准确检测不同规模的行人是具有挑战性的。

其中一个简单的思想是尺度无关策略,包括基于图像金字塔和基于特征金字塔的方法。对于基于图像金字塔的方法来说,提高其效率是很重要的。相比之下,特征金字塔策略相对有效。然而,如何提取稳健的尺度无关特征对于特征金字塔策略来说是重要的。另一个想法是减少不同规模的行人之间的差异[149],[207],[228]。我们可以利用生成对抗性网络来减少数据和特征级别的类内变化。

此外,小规模行人检测是解决尺度方差问题的瓶颈。然而,现有的方法对小尺度物体检测缺乏足够的研究[64],[230]。因此,有必要将小尺度行人检测视为一个独立的问题。

4.2 堵塞(遮挡)

行人堵塞是一个非常常见的问题。对于站姿,CityPersons数据集[244]中70%的行人被遮挡。图10显示了两种类型的行人遮挡:类间遮挡和类内遮挡。当行人被其他物体(而不是行人)遮挡时,会发生类间遮挡。相比之下,当行人被其它行人遮挡时,则会发生类内遮挡。

类间遮挡的主要解决方案是增强未遮挡部分的特征,抑制遮挡部分的特性。有两种策略:隐式策略[181]《Deep learning strong parts for pedestrian detection》,[214]《Psc-net:学习遮挡行人检测的局部空间协同现象》和显式策略[29]《Pedhunter:拥挤场景中的遮挡鲁棒行人检测器》,[151]《用于遮挡行人检测的面具引导注意力网络》,[260]《用于行人检测和遮挡估计的双盒回归》。

  • 隐式策略通常学习多个部分检测器来覆盖不同的遮挡模式。在这种策略中,如何设置/组合零件是一个悬而未决的问题。
  • 显式策略使用额外的注释(例如,头部或可见部分的注释)。由于额外的注释需要大量的资源消耗,因此使用少量的零件注释来帮助遮挡行人检测是很有用的。

通常,行人检测需要NMS去除重复的边界框。作为一种负面影响,NMS将人群场景中属于不同行人的边界框组合在一起(类内遮挡)。为了解决这个问题,一种解决方案是改进的NMS策略,例如动态NMS阈值。另一个解决方案是通过避免边界框组合操作来实现无NMS策略。

此外,时间信息对于驾驶和监控场景中的遮挡行人检测也很重要。

4.3 领域自适应

现有的大多数方法都专注于特定的行人数据集,无法保证良好的领域自适应能力[195]《Few-shotadaptive faster r-cnn》,[212]《用于静态视频监控的特定场景行人检测》。例如,在良好天气下训练的行人检测器在恶劣天气(如雾和雨)下往往具有次优性能。因此,有必要解决领域自适应问题。大多数领域自适应方法都是基于对抗性学习的,包括数据级[72]、[87]、[89]、[121]、特征级[168]、[215]和实例级[24]、[264]方法。然而,它们主要集中在通用对象检测上。未来,可以通过考虑行人/场景特征来开发行人检测的领域自适应方法。

此外,我们可以在未来利用同域和跨域评估,这将指导研究人员设计出具有良好综合性能的行人检测器。

4.4 多传感器融合

在第4节中,多光谱行人检测采用了两种传感器(即可见光/红外摄像机)。它为照度变化提供了更稳健的检测性能。为了确保安全并生成3D信息,我们不仅需要融合来自同质数据的多个传感器(可见光/红外相机)的信息,还需要融合异构数据的多传感器(相机和激光雷达)的信息。激光雷达可以提供准确的深度信息,而相机具有详细的语义信息。然而,如何在异构数据中融合信息是一项具有挑战性的重要任务。

4.5 实时检测

现有的行人检测方法大多侧重于提高检测精度,而忽略了效率。然而,应用于驾驶/监控场景的计算资源有限,但需要实时检测速度。例如,CityPersons上报道的最快方法在单个NVIDIA180Ti GPU上的推理速度为0.22s,无法满足实际应用的需要。因此,有必要研究嵌入式设备的轻量级实时行人检测方法。

5 结论

在过去的十年里,行人检测取得了巨大的成功,从手工特征到基于深度特征的方法。 

  • 首先,详细总结了这两种类型的方法。
  • 然后,回顾了多光谱行人检测,流行的行人数据集,并对行人检测方法进行了深入分析。
  • 最后,讨论了行人检测中的一些具有挑战性的问题(例如,遮挡、尺度方差和域自适应)。

>>> 如有疑问,欢迎评论区一起探讨。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/124040.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2023.11.09 homework (2)

【七年级上数学】 教别人也是教自己,总结下: 13)找规律的题目,累加题目,要整体看,不然不容易算出来,求最大值,那么就是【最大值集群和】减去【最小集群和】就是最大值 9-12&#x…

falsk框架中安装flask-mysqldb报错解决方案

错误示例 我的是py37版本,无法直接安装flask-mysqldb pip install flask-mysqldb报错如下 解决方案 先去第三方库 https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient 下载mysqlclient 这个是我的版本 mysqlclient-1.4.6-cp37-cp37m-win_amd64.whl 下…

数据权限-字段权限【实践篇-结合相关业务详细讲解如何实现】(基于若依框架)

理论看这个 https://blog.csdn.net/weixin_41842550/article/details/119890216 这里写目录标题 按照部门结构和用户数据来实现数据权限一 需要的基础数据1 系统管理--部门管理--增加如下结构2 系统管理--角色管理--增加两个角色3 系统管理--用户管理--增加7个用户 二 截图和代…

35岁危机来临前,程序员如何未雨绸缪?

程序员逼近35岁”高龄“,救命。。。 (目瞪口呆)什么? 程序员而立之年,为未来担忧?(双手抱头不敢置信) 不可能!他们明明那么努力、那么辛苦了!!!&a…

SQL审计是什么意思?目的是什么?有什么好处?

很多刚入行的运维小伙伴对于SQL审计不是很了解,不知道其是什么意思?使用SQL审计的目的是什么?使用SQL审计的好处有哪些?这里我们大家就来一起聊聊,仅供参考哈! SQL审计是什么意思? 【回答】&…

【原理篇】三、SpringBoot自动配置原理

文章目录 0、背景demo1、自动配置思路2、META-INF/spring.factories3、Redis自动配置4、自定义一个自动配置5、排除SpringBoot内置自动配置类的加载6、补充点:ApplicationContextAware接口 0、背景demo 用一个循序渐进的示例来体验属性配置,方便后面理解…

Oracle 安装及 Spring 使用 Oracle

参考内容: docker安装oracle数据库史上最全步骤(带图文) Mac下oracle数据库客户端 Docker安装Oracle docker能安装oracle吗 Batch script for add a auto-increased primary key for exist table with records Docker 安装 Oracle11g 注意&a…

用Java(C语言也可以看)实现冒泡排序和折半查找(详细过程图)+逆序数组

目录 一、冒泡排序 1.冒泡排序介绍 2.排序的思路 3.完整代码 二、折半查找 1.折半查找介绍 2.查找的思路 3.完整代码 三、逆序数组 1.逆序思路 2..完整代码 一、冒泡排序 冒泡排序是众多排序的一种,无论在C语言或者Java中都很常见,后续在数据…

浅谈智能变电站自动化系统的应用与产品选型

安科瑞电气股份有限公司 上海嘉定 201801 摘要:现如今,智能变电站发展已经成为了电力系统发展过程中的内容,如何提高智能变电站的运行效率也成为电力系统发展的一个重要目标,为了能够更好地促进电力系统安全稳定运行,…

轻量封装WebGPU渲染系统示例<22>- 渲染到纹理(RTT)(源码)

当前示例源码github地址: https://github.com/vilyLei/voxwebgpu/blob/feature/rendering/src/voxgpu/sample/RTTTest.ts 当前示例运行效果: 此示例基于此渲染系统实现,当前示例TypeScript源码如下: export class RTTTest {private mRscene new RendererScene()…

使用 Threejs 从基础开始构建 3D 地球

需求 threejs学习-3D 地球 实现: 1、使用粒子效果模拟宇宙星空 2、贴图、模型等资源的加载 3、加载资源的监听 4、效果合成器 EffectComposer 的初级使用 5、在地球上设置坐标以及坐标涟漪动画 6、标点间建立飞线 7、简单动画建议先浏览一遍git地址上代码&#xff…

SpringMVC简介

SpringMVC简介 一、MVC是什么二、什么是SpringMVC?1.特点 三、简单实现 一、MVC是什么 MVC是模型视图控制器的简称,是指一种架构思想。 M:Model,模型层,指工程中的JavaBean,作用是处理数据。 JavaBean分为…

A Survey on Neural Network Interpretability

A Survey on Neural Network Interpretability----《神经网络可解释性调查》 摘要 随着深度神经网络的巨大成功,人们也越来越担心它们的黑盒性质。可解释性问题影响了人们对深度学习系统的信任。它还与许多伦理问题有关,例如算法歧视。此外,…

基于Python的书籍数据采集与可视化分析系统

温馨提示:文末有 CSDN 平台官方提供的学长 Wechat / QQ 名片 :) 1. 项目简介 基于Python的书籍数据采集与可视化分析系统旨在挖掘和分析海量图书数据背后的规律和趋势,为读者、出版商和数据分析师提供更深入的洞察和辅助决策。本系统依托于某瓣庞大的图书…

JS逆向爬虫---请求参数加密②【某麦数据analysis参数加密】

主页链接: https://www.qimai.cn/rank analysis逆向 完整参数生成代码如下&#xff1a; const {JSDOM} require(jsdom) const dom new JSDOM(<!DOCTYPE html><p>hello</p>) window dom.windowfunction customDecrypt(n, t) {t t || generateKey(); //…

20 VPN详解

1、连接数据中心 1.第一种方式是走公网&#xff0c;但是公网太不安全 2.第二种方式是专线&#xff0c;但是比较贵 3.VPN连接2、vpn的概念 全名Virtual Private Network&#xff0c;虚拟专用网&#xff0c;就是利用开放的公众网络&#xff0c;建立专用数据传输通道&#xff0c…

洛谷P5731 【深基5.习6】蛇形方阵java版题解

import java.util.Arrays; import java.util.Scanner;// 给出一个不大于9的正整数n&#xff0c;输出nn的蛇形方阵。 public class Main {public static void main(String[] args) {Scanner sc new Scanner(System.in);int n sc.nextInt();int[][] a new int[n][n];int total…

《016.SpringBoot+vue校园社团管理系统》【有文档】

《016.SpringBootvue校园社团管理系统》【有文档】 项目简介 [1]本系统涉及到的技术主要如下&#xff1a; 推荐环境配置&#xff1a;DEA jdk1.8 Maven MySQL 前后端分离; 后台&#xff1a;SpringBootMyBatisPlus; 前台&#xff1a;vueElementUI; [2]功能模块展示&#xff1a…

HCIP---VLAN

文章目录 目录 目录 文章目录 前言 一.VLAN概述 作用&#xff1a; 二.VLAN基础认识 VLAN ID: VLAN端口类别 总结 前言 VLAN技术是现代企业网络和数据中心网络的核心技术之一。本文将重点针对VLAN技术进行详解。 一.VLAN概述 VLAN&#xff08;Virtual Local Area Network…

自动化实战 - 测试个人博客系统

前言 本篇使用Selenium3Junit5对个人博客进行自动化测试&#xff0c;如有错误&#xff0c;请在评论区指正&#xff0c;让我们一起交流&#xff0c;共同进步&#xff01; 文章目录 前言一.web自动化测试用例二.测试准备1.注册界面自动化测试测试过程中遇到的Bug: 2.登录界面自动…