用于行人检测的系统和方法与流程

文档序号:19792688发布日期:2020-01-24 14:38阅读:587来源:国知局
用于行人检测的系统和方法与流程

发明领域

本发明涉及图像处理领域。更具体地,本发明涉及用于行人检测和碰撞警告的系统和方法。

发明背景

背景描述包括可用于理解本发明的信息。这并不是承认本发明提供的任何信息或与当前要求保护的发明有关的信息是现有技术,或者明确或隐含引用的任何出版物均为现有技术。

当事故发生时,行人是交通系统中的弱势参与者,尤其是在城市地区。世界卫生组织(who)的第一份全球道路安全评估报告显示,交通事故是世界范围内造成人员伤亡的主要原因之一。41%至75%的道路交通致命事故涉及行人,行人因道路交通事故致死的可能性是车辆乘员的四倍。这些死亡主要是由于行人或驾驶员的失误造成的。防止此类事故并确保人员安全是非常重要的。随着道路上的行人死亡人数的增加,行人检测解决方案的意义和重要性也在增加。行人检测解决方案通过提前提醒驾驶员,在避免这些事故中发挥着至关重要的作用。汽车中的高级驾驶员辅助系统(adas)实施行人检测解决方案,以防止在道路上发生事故。

在物体检测领域中,检测图像中的行人是一项具有挑战性的任务。当检测周围的障碍物时,传感器起着重要的作用。车辆常用的传感器是lidar(光检测和测距)、radar(无线电检测和测距)、超声和摄像头。与其他传感器相比,由于更低的成本和优势,基于视觉的系统变得越来越重要。

当前,在车辆中实施了不同的行人检测技术。一种这样的技术是基于运动的检测。在这种方法中,从通过相机捕获的连续帧中检测运动。基于显著的运动检测来确认行人的存在。但是,基于运动的检测具有某些局限性。在实际实践中,基于运动的检测也会由于捕获非行人物体而触发多个错误信号。此外,光照的变化也会影响整体检测。因此,基于运动的检测更适合于背景稳定的监视领域。

在行人检测的一些其他现有方法中,以各种比例扫描整个图像,从而使处理极其缓慢。基于显著性的方法使用2d特征,例如渐变、颜色、强度、边缘等,以提取对象段。由于该方法高度依赖于所选特征,因此人工检测效率不高。基于立体的前景分割是消除背景的一种方法。

对于大多数现有技术,主要假设之一是行人在特定深度处具有垂直结构。现有的一些技术包括:v-视差表示查找垂直和水平平面以提取候选roi(感兴趣区域),基于立体的平面拟合以查找不同的平面,具有行人大小约束(psc)的视差图分析以更好地提取roi,和利用视觉和热红外等不同光谱的多模式立体方法。

在行人检测的其他方法中,使用基于视觉的检测技术。通常,基于视觉的行人检测有两种主要方法,即整体方法和基于部分的方法。在整体检测中,将行人作为一个整体检测。而基于部分的方法的检测过程集中在头部、躯干臂、腿等部位。一般的检测过程包括预处理、前景分割、对象分类和追踪。预处理包括曝光校正、动态测距、噪声消除等,以提供更好的输入/图像用于进一步处理。前景分割通过消除背景和天空区域来提取可能的候选roi。这将搜索限制为roi,从而减少了处理时间和误报。

主要的挑战是开发可靠的车载行人检测系统,因为行人具有不同的姿势、衣服和形状。检测行人时要解决的另一个挑战是不断变化的光照,尤其是在白天。这直接影响图像质量。如果图像质量差,则无法获取信息。大多数图像处理算法对于光照变化是不变的(不随其变化)。对于基于立体的算法,时间复杂度更高,而在非纹理区域中的检测率则非常低。另外,白天行人检测很困难,需要复杂的系统并且具有更低的准确性。

因此,需要强大、准确、快速、高效和简单的白天行人检测系统。另外,需要一种行人检测系统,该系统可以检测穿着任何服装的行人。另外,需要一种行人检测系统,其能够处理不断变化的白天光照并且能够准确地检测行人。

发明目的

本发明的一些目的,在本文中至少一个实施例满足,如下文所示。

本发明的目的是提供一种用于行人检测的系统和方法,该系统和方法准确地检测行人并相应地提供警告。

本发明的另一目的是提供一种用于行人检测的系统和方法,该系统和方法检测行人而与他们的着装无关。

本发明的另一个目的是提供一种在白天的变化光照下检测行人的系统和方法。

本发明的另一个目的是提供一种在所有方向上检测行人的系统和方法。

本发明的另一个目的是提供一种强大、经济和简单的准确地检测行人的系统和方法。

概要

提供本发明概要以介绍用于行人检测的系统和方法的简单概念,在详细描述中进一步描述。该概述不旨在确认所要求保护的主题的关键或必要特征,也不旨在用于确定/限制所要求保护的主题的范围。

本发明涉及图像处理领域。更具体地,本发明涉及用于行人检测和碰撞警告的系统和方法。

在一个方面,本发明阐述了在车辆中实现的行人检测系统,该系统包括:非暂态存储设备,其中包含一个或多个可用于检测行人的例程;以及以及一个或多个处理器,其耦合到所述非暂态存储设备并且可操作来执行所述一个或多个例程,其中,所述一个或多个例程包括:初始化模块,所述初始化模块在由所述一个或多个处理器执行时接收一个或多个图像帧,并从接收的一个或多个图像帧中选择的一组图像帧定义为感兴趣区域(roi),其中该组图像帧中的每个图像帧均属于车辆驾驶员的视野,其中roi为基于每个图像帧的分辨率并且还基于车辆驾驶员的视野中定义的区域来定义;扫描窗口选择模块,当由一个或多个处理器执行时,在每组图像帧的roi中确定多个扫描窗口,其中,每个扫描窗口的大小是根据图像帧中行人的估计身高来计算;特征提取模块,当由一个或多个处理器执行时,从每个扫描窗口中提取定向梯度的积分直方图(ihog)特征;及行人检测模块,当由一个或多个处理器执行时,使用两个或多个分类器的级联,基于从每个扫描窗口提取的ihog特征来检测行人。

在一个实施例中,在车辆驾驶员的视野中的区域可以是远区域、中区域或近区域中的任何区域,并且其中初始化模块从远端区域高清晰度(hd)分辨率图像、中间区域的视频图形阵列(vga)分辨率图像、近端区域的四分之一vga(qvga)分辨率图像中定义roi。

在一个实施例中,特征提取模块提取每个扫描窗口的ihog特征,包括多个单元以使得能够调整每个扫描窗口的多个单元中的每个单元的大小,以使得多个扫描窗口中的每个扫描单元的特征矢量长度相同。

在另一个实施例中,行人检测模块与非最大抑制(nms)模块耦合,该模块配置为提供围绕检测到的行人的单个边界框的输出。

在另一个实施例中,行人的检测与车辆的速度以及行人与车辆之间的距离无关。

在一个实施例中,行人检测模块在检测到行人时生成警报。

在另一实施例中,该系统进一步包括追踪模块,以基于该组图像帧所提取的ihog特征来追踪检测到的行人的边界框。

在另一个实施例中,该系统还包括碰撞确定模块,以基于对行人的检测来确定车辆与行人之间的碰撞的预期时间。

在一个实施例中,扫描窗口选择模块配置为切换该组图像帧的一个图像帧中的roi的扫描。

在另一实施例中,两个或多个分类器中的至少一个分类器使用训练图像数据库来促进行人的检测,该训练图像数据库基于以下创建:使用行人的轮廓信息裁剪一个或多个图像帧中的至少一个训练图像帧;将每个裁剪后的图像调整为最接近的扫描窗口的大小;从至少一个分类器的分类器数据库中去除不想要的结构;从至少一个分类器中收集误报;并将误报添加到后续分类器的分类器数据库中。

在一个方面,本发明阐述了一种用于行人检测的方法,包括:通过一个或多个处理器接收一个或多个图像帧,并且为从接收到的一个或多个图像帧中所选择的一组图像帧定义感兴趣区域(roi),其中该组图像帧中的每个图像帧都属于车辆驾驶员的视野,其中roi基于每个图像帧的分辨率并进一步基于在驾驶员视野中定义的区域来定义;通过一个或多个处理器,在所述的每组图像帧的roi中确定多个扫描窗口,其中,基于在图像帧中行人的假定高度来计算每个扫描窗口的大小;通过一个或多个处理器,从每个扫描窗口中提取定向梯度积分直方图(ihog)特征;并通过一个或多个处理器,使用两个或多个分类器的级联基于从每个扫描窗口中提取的ihog特征来检测行人。

通过以下优选实施例的详细描述以及附图,其中相同的数字表示相同的特征,本发明的各种目的、特征、方面和优点变得更加显而易见。

在本申请的范围内,明确地设想了在前面的段落、权利要求和/或下面的描述和附图中提出的各个方面、实施例、示例和替代方案,特别是其各个特征可以是。独立或组合使用。与一个实施例结合描述的特征适用于所有实施例,除非这些特征不兼容。

附图说明

包括附图以提供对本发明的进一步理解,并且附图并入说明书中并构成说明书的一部分。附图示出了本发明的示例性实施例,并且与说明书一起用于解释本发明的原理。这些附图仅用于说明,因此不是本发明的限制,并且其中:

图1示出了根据本发明的实施例的行人检测系统的架构,以阐述其整体流程。

图2a示出了根据本发明实施例的行人检测系统的示例性功能模块。

图2b示出了根据本发明的示例性实施例的用于远、中和近区域的示例性roi。

图2c示出了根据本发明实施例的初始化模块的示例性框图。

图2d示出了根据本发明实施例的用于实现特征提取的示例性框图。

图2e示出了根据本发明实施例的用于行人检测的分类器架构的示例性框图。

图2f示出了根据本发明实施例的svm分类器的示例性输出。

图2g示出了根据本发明实施例的非最大抑制(nms)模块的示例性输出。

图2h示出了根据本发明实施例的用于实现追踪模块的示例性框图。

图2i示出了根据本发明实施例针对确定碰撞时间的碰撞距离计算的示例性框图。

图2j示出了根据本发明的示例性实施例的不同阶段的行人碰撞警告样本帧输出。

图3示出了根据本发明的实施例所提出的系统的工作方法。

图4示出了根据本发明的实施例的所提出的系统的整体工作。

详细说明

以下是在附图中描绘的本发明的实施例的详细描述。实施例的细节使得清楚地传达了本发明。然而,所提供的大量细节并非旨在限制实施例的预期变型;相反,目的是覆盖落入如所附权利要求书所限定的本发明的精神和范围内的所有修改、等同形式和替代形式。

在以下描述中,阐述了许多具体细节以便提供对本发明的实施例的透彻理解。对于本领域技术人员显而易见的是,在没有这些具体细节的一些情况下可以实施本发明的实施例。

本发明的实施例包括各种步骤,将在下面描述。这些步骤可以由硬件组件执行,或者可以包含在机器可执行指令中,机器可执行指令可以用于使用由指令编程的通用处理器或专用处理器以执行这些步骤。可选地,可以通过硬件、软件和固件的组合和/或通过操作员来执行步骤。

通过将包含根据本发明的代码的一种或多种机器可读存储介质与适当的标准计算机硬件组合以执行其中所包含的代码,可以实施本发明描述的各种方法。用于实施本发明的各种实施例的设备可以包括一个或多个计算机(或单个计算机内的一个或多个处理器)和包含或具有网络访问根据发明所述的各种方法编码的计算机程序的存储系统,本发明的方法步骤可以通过计算机程序产品的模块、例程、子例程或子部分来实现。

如果说明书指出组件或特征“可以”、“能够”、“能”或“可能”包括或具有特征,则不需要包括特定的组件或特征或具有该特征。

如本发明的说明书和随后的整个权利要求书中所使用的,“一个”、“一种”和“所述”的含义包括复数引用,除非上下文另外明确指出。而且,如本发明的描述中所使用,“在...中”的含义包括“在...里面”和“在...上面”,除非上下文另外明确指出。

在下文中与附图一起更完整地描述示例性实施例,其中示例性实施例已经示出。这些示例性实施例的提供仅出于说明的目的,因此,本发明是彻底和完整的,并且将本发明的范围充分传达给本领域的普通技术人员。然而,所公开的本发明可以以许多不同的形式来实施,并且不应解释为限于本文中阐述的实施例。各种修改对于本领域技术人员是显而易见的。在不脱离本发明的精神和范围的情况下,本文中定义的一般原理可以应用于其他实施例和应用。此外,本文中引用的本发明的实施例的所有陈述及其具体示例旨在涵盖其结构和功能的等同物。另外,目的在于,这样的等同物包括当前已知的等同物以及将来开发的等同物(即,开发出的执行相同功能的任何元件,而不管结构如何)。另外,所使用的术语和短语是为了描述示例性实施例的目的而使用,而不应是认为是限制性的。因此,本发明应赋予最宽泛的范围,包括与所公开的原理和特征一致的许多替代、修改和等同形式。为了清楚起见,没有详细描述与本发明相关的技术领域中已知的与技术材料有关的细节,以免不必要地使本发明晦涩难懂。

因此,例如,本领域普通技术人员应该理解,附图、示意图、图示等代表实现本发明的系统和方法的概念图或过程。附图中所示的各种元件的功能可以通过使用专用硬件以及能够执行相关软件的硬件来提供。类似地,图中所示的任何开关仅是概念上的。它们的功能可以通过程序逻辑的操作,通过专用逻辑,通过程序控制和专用逻辑的交互,或甚至手动来实现,具体技术可由实现本发明的实体来选择。本领域普通技术人员进一步理解,本文描述的示例性硬件、软件、过程、方法和/或操作系统是出于说明性目的,因此,并不旨在限于任何特定的命名元件。

本发明的实施例可以提供为计算机程序产品,其可以包括在其上有形地体现指令的机器可读存储介质,可以用于对计算机(或其他电子设备)进行编程以执行处理。术语“机器可读存储介质”或“计算机可读存储介质”包括但不限于固态(硬盘)驱动器,磁带,软盘,光盘,光盘只读存储器(cd-rom)和磁光盘,半导体存储器,例如rom、prom、随机存取存储器(ram)、可编程只读存储器(prom)、可擦prom(eprom)、电可擦prom(eeprom),闪存,磁卡或光卡,或适合于存储电子指令(例如,计算机程序代码,例如软件或固件)的其他类型的介质/机器可读介质。机器可读介质可以包括在其中可以存储数据的非暂时性介质,并且不包括无线或通过有线连接传播的载波和/或暂时性电子信号。非暂时性介质的示例可以包括但不限于磁盘或磁带,光学存储介质诸如光盘(cd)或数字通用磁盘(dvd),闪存,存储器或存储设备。一个计算机程序产品可以包括代码和/或机器可执行指令,它们可以表示流程、功能、子程序、程序、例程、子例程、模块,软件包、类或指令、数据结构或程序语句的任何组合。通过传递和/或接收信息、数据、属性、参数或存储器内容,代码段可以耦合到另一代码段或硬件电路。信息、属性、参数、数据等可以通过任何合适的方式传递、转发或传输,包括内存共享、消息传递、令牌传递、网络传输等。

此外,可以通过硬件、软件、固件、中间件、微代码、硬件描述语言或其任意组合来实现实施例。当以软件、固件、中间件或微代码来实现时,用于执行必要任务的程序代码或代码段(例如,计算机程序产品)可以存储在机器可读介质中。处理器可以执行必要的任务。

在一些附图中描述的系统可以以各种配置来提供。在一些实施例中,系统可以配置为分布式系统,其中系统的一个或多个组件分布在云计算系统中的一个或多个网络上。

所附权利要求中的每一项都定义了单独的发明,可以以侵权目的将其视为包括权利要求中指定的各种元件或限制的等同形式。取决于上下文,在某些情况下,以下对“发明”的所有引用可能仅指某些特定实施例。在其他情况下,应认识到,对“发明”的引用将指代一个或多个但不一定是所有权利要求中所述的主题。

除非本文另外指出或除非与上下文明显矛盾,否则本文描述的所有方法可以以任何合适的顺序执行。任何和所有实施例或相对于本文的某些实施例提供的示例性语言(例如“诸如”)的使用仅旨在更好地阐明本发明,并且除非权利要求,并不对本发明的范围构成限制。说明书中的任何语言都不应解释为表示对实施本发明必不可少的任何未要求保护的元件。

以下显示了本文使用的各种术语。对于以下未对权利要求中使用的术语进行定义的范围,应给予相关领域的技术人员最宽泛的定义,术语反映在提交时的印刷出版物和已发表的专利中。

本发明涉及图像处理领域。更具体地,本发明涉及用于行人检测和碰撞警告的系统和方法。

在一个方面,本发明阐述了在车辆中实施的行人检测系统,该系统包括:非暂态存储设备,其具有在其中包含的一个或多个可操作的例程以检测行人;以及一个或多个处理器,耦合到所述非暂态存储设备并且可操作来执行所述一个或多个例程,其中,所述一个或多个例程包括:初始化模块,其中它在通过一个或多个处理器执行时接收一个或多个图像帧,并为从接收到的一个或多个图像帧中选择的一组图像帧定义感兴趣区域(roi),其中该组图像帧中的每个图像帧均属于车辆驾驶员的视野,其中roi基于每个图像帧的分辨率而定义并且还基于在车辆驾驶员的视野中定义的区域来定义;扫描窗口选择模块,当由一个或多个处理器执行时,它在每组图像帧的roi中确定多个扫描窗口,其中,每个扫描窗口的大小是根据图像帧中行人的估计身高来计算;特征提取模块,当由一个或多个处理器执行时,它从每个扫描窗口中提取定向梯度积分直方图(ihog)特征;及行人检测模块,当由一个或多个处理器执行时,它使用两个或多个分类器的级联,根据从每个扫描窗口提取的ihog特征来检测行人。

在一个实施例中,车辆驾驶员的视野中的区域可以是远区域、中间区域或近区域中的任何一个,并且其中初始化模块从远区域的高清(hd)分辨率图像,中间区域的视频图形阵列(vga)分辨率图像和近区域的四分之一vga(qvga)分辨率图像中来定义roi。

在一个实施例中,特征提取模块提取包括多个单元的每个扫描窗口的ihog特征,使得针对每个扫描窗口的多个单元中的每个单元的大小能够调整,以使多个扫描窗口中的每个的特征矢量长度相同。

在另一个实施例中,行人检测模块与非最大抑制(nms)模块耦合,该模块配置为提供围绕检测到的行人的单个边界框的输出。

在另一实施例中,对行人的检测与车辆的速度以及行人与车辆之间的距离无关。

在一个实施例中,行人检测模块在检测到行人时生成警报。

在另一实施例中,该系统进一步包括追踪模块,以基于该组图像帧的提取的ihog特征来追踪检测到的行人的边界框。

在另一个实施例中,该系统还包括碰撞确定模块,基于对行人的检测来确定车辆与行人之间的碰撞的预期时间。

在一个实施例中,扫描窗口选择模块配置为切换该组图像帧中的图像帧的roi的扫描。

在另一实施例中,两个或更多个分类器中的至少一个分类器使用训练图像数据库来促进行人的检测,该训练图像数据库基于以下创建:使用行人的轮廓信息裁剪一个或多个图像帧中的至少一个训练图像帧;将每个裁剪后的图像调整为最接近的扫描窗口的大小;从至少一个分类器的分类器数据库中去除不想要的结构;从至少一个分类器收集误报;并将误报添加到后续分类器的分类器数据库中。

在一个方面,本发明阐述了一种用于行人检测的方法,该方法包括:由一个或多个处理器接收一个或多个图像帧,并且为从接收到的一个或多个图像帧中选择的一组图像帧定义感兴趣区域(roi),其中该组图像帧中的每个图像帧都属于车辆驾驶员的视野,其中roi基于每个图像帧的分辨率定义并进一步基于在车辆驾驶员视野中定义的区域来定义;由一个或多个处理器在每组图像帧的roi中确定多个扫描窗口,其中,基于图像帧中行人的假定高度来计算每个扫描窗口的大小;由一个或多个处理器从每个扫描窗口提取定向梯度积分直方图(ihog)特征;并由一个或多个处理器使用两个或多个分类器的级联基于从每个扫描窗口中提取的ihog特征来检测行人。

根据本发明的一方面,行人检测系统(在下文中可互换地称为所提出的系统)使得能够检测行人并且向用户(例如,实施所提出的系统的车辆的驾驶员)提供碰撞警告。很多时候,车辆前方的突然运动对行人和驾驶员以及其他人,例如车辆的其他乘员和车辆本身,都构成严重的风险。在这种情况下,所提出的系统通过提供及时的警告来帮助驾驶员提前很好地了解各种行人的运动,从而避免了驾驶员的事故。

在一个实施例中,机载向前的照相机捕获车辆前方的场景。此外,对捕获的图像执行图像处理以检测各种动作的行人例如站立、跑步、步行和穿过马路等,以及所有其他方向的行人。所提出的系统能够检测到穿着任何类型的衣服/服饰/服装的行人。因此,在检测到一个或多个行人时相应地提供输出。

图1示出了根据本发明的实施例的行人检测系统的架构,以说明其整体工作。

如图1所示,行人检测系统100(在下文中称为系统100)接收一个或多个图像帧102作为输入。使用优选地放置在车辆的后视镜外壳组件中的相机或图像传感器来捕获图像帧,使得图像帧属于车辆驾驶员的视野。此外,系统100从接收到的图像帧102中选择一组图像帧,并为每个图像帧定义感兴趣区域(roi)。为了定义roi,系统100考虑诸如图像帧的分辨率和在车辆驾驶员的视野中定义的区域之类的因素。在车辆驾驶员的视野中限定的区域可以是远区域、中间区域或近区域中的任何一个。在一个实施例中,系统100从远区域的高清晰度(hd)分辨率图像、中间区域的视频图形阵列(vga)分辨率图像以及近区域的四分之一vga(qvga)分辨率图像中来定义roi。

此后,系统100确定每个图像帧的roi中的多个扫描窗口,如106所示。每个扫描窗口的大小是根据图像帧中行人(将要检测到的)的假定高度来计算的。为了提高行人检测的效率,系统100利用一种技术来切换该组图像帧中的图像帧的roi的扫描。

在一个实施例中,系统100从每个扫描窗口中提取定向梯度积分直方图(ihog)特征,如108所示。为了有效地提取特征,每个扫描窗口包括多个单元,使得对于每个扫描窗口的多个单元中的每个单元的大小能够调整,以使多个扫描窗口中的每个扫描窗口的特征矢量长度相同。

在一个实施例中,系统100使用两个或多个分类器的级联基于从每个扫描窗口提取的ihog特征来检测行人,如110所示。为了促进分类器的检测,使用行人的轮廓信息基于一个或多个图像帧的训练图像的裁剪创建了训练图像数据库,将每个裁剪后的图像调整为最接近的扫描窗口的大小,从两个或多个分类器中至少一个分类器的分类器数据库中删除不需要的结构,收集来自至少一个分类器的误报,并将误报添加到后续分类器的分类器数据库中。

在一个实施例中,系统100提供围绕检测到的行人的单个边界框的输出(如112所示),并在检测到所述行人时生成警报。本领域技术人员会理解,系统100的各种实现方式使得能够检测与车辆的速度以及行人与车辆之间的距离无关的行人。

图2a示出了根据本发明实施例的行人检测系统的示例性功能模块。

在一方面,用于行人检测的系统(在本文中表示为系统100)可以包括一个或多个处理器202。一个或多个处理器202可以实现为一个或多个微处理器、微型计算机、微控制器、数字信号处理器、中央处理单元、逻辑电路和/或根据可操作的指令能处理数据的任何设备。在其他能力中,一个或多个处理器202配置为获取并执行存储在所提出的系统100的存储器204中的计算机可读指令。存储器204可以存储一个或多个计算机可读指令或例程,其可以提取并执行以通过网络服务来创建或共享数据单元。存储器204可以包括任何非暂态存储设备,包括例如易失性存储器诸如ram或非易失性存储器诸如eprom、闪存等。

系统100还可以包括一个或多个接口206。接口206可以包括各种接口,例如,用于数据输入和输出设备的接口,称为i/o设备、存储设备和类似设备等。接口206可以促进系统100与耦合到系统100的各种设备的通信。接口206还可以为系统100的一个或多个组件提供通信路径。这样的组件的示例包括,但不限于处理引擎208和数据228。

处理引擎208可以实现为硬件和编程(例如,可编程指令)的组合,以实现处理引擎208的一个或多个功能。在本文所述的示例中,硬件和编程的这种组合可以以几种不同的方式来实现。例如,用于处理引擎208的编程可以是存储在非暂态机器可读存储介质上的处理器可执行指令,并且用于处理引擎208的硬件可以包括处理源(例如,一个或更多处理器)以执行此类指令。在本示例中,机器可读存储介质可以存储指令,在由处理源执行时,实现处理引擎208。在这样的示例中,系统100可以包括存储指令的机器可读存储介质和处理源以执行指令,或机器可读存储介质可以是分离的但是系统100和处理资源可以访问。在其他示例中,处理引擎208可以由电子电路实现。

数据228可以包括或者存储或者生成作为由处理引擎208的任何元件实现的功能的数据。例如,除了其他数据,在数据228中还可以存储由如下所述的训练图像数据库226所使用的数据。

在示例性实施例中,引擎208可以包括初始化模块210、扫描窗口选择模块212、特征提取模块214、行人检测模块216、非最大抑制模块218、追踪模块220、碰撞确定模块222、其他模块224。

应当理解,所描述的模块仅仅是示例性模块,并且任何其他模块或子模块可以包括为系统100的一部分。这些模块也可以合并或划分为可以配置的超级模块或子模块。

初始化模块210

在一方面,初始化模块210接收属于车辆驾驶员视野的一个或多个图像帧,并从接收到的图像帧中选择一组图像帧。此外,初始化模块210为每个图像帧定义感兴趣区域(roi)。roi是基于诸如每个图像帧的分辨率和在车辆驾驶员的视野中定义的区域之类的因素来定义的;

在一个实施例中,车辆驾驶员的视野中的区域可以是远区域、中间区域或近区域中的任何一个。初始化模块210从远区域的高清晰度(hd)分辨率图像、中间区域的视频图形阵列(vga)分辨率图像、以及近区域的四分之一vga(qvga)分辨率图像中定义roi。根据示例性实施方式,在图2中示出了基于图像的分辨率的在各个区域中通过初始化模块210对roi的定义。

图2c示出了根据本发明实施例的初始化模块210的示例性框图。初始化模块210接收包括输入图像帧242、相机参数244和感兴趣区域(roi)信息246在内的输入信息。基于输入信息,初始化模块210初始化不同的参数,包括roi参数248、扫描窗口参数25、ihog(定向梯度积分直方图)参数252、svm(支持向量机)或分类器参数254和追踪器参数256。如本领域技术人员所理解的,正确设置roi参数248对于通过系统100的行人检测是最重要的,因为设置roi参数248以保证行人的定位(即确定行人在图像中的位置)。

扫描窗口选择模块212

在一个方面,扫描窗口选择模块212确定每组图像帧的roi中的多个扫描窗口。基于图像帧中行人的假定高度来计算每个扫描窗口的大小。在一个实施例中,扫描窗口选择模块212从初始化模块210接收相关的输入。随着对象(即,行人)定位以在图像中进行识别,扫描窗口在对象分类中起着不可或缺的作用。扫描窗口根据单元窗口大小和执行扫描的距离而拆分,这有助于减少计算时间。同样,连续的扫描单元可以出于相同的目的而重复使用。

在一个实施例中,考虑通过用于扫描每个roi的不同窗口大小来扫描每个roi以检测行人。例如,对于在远区域的行人检测,可以在hd分辨率图像中定义的roi中考虑十个窗口;对于中间区域的行人检测,可以在vga分辨率图像中定义的roi中考虑11个窗口;对于近区域的行人检测,可以在qvga分辨率图像中定义的roi中考虑七个窗口。在下面的表1中列出了用于远、中间和近区域的行人检测的一些示例性窗口大小。

表1:用于远、中间和近区域的行人检测的窗口大小

本发明的各种实施例改善了检测的范围和质量,例如,检测的范围可以扩展到50米。在一个实施例中,根据行人的假定高度来选择用于扫描roi的窗口大小。对于给定的现实世界距离,行人在帧中的高度使用以下公式计算:

帧中的行人高度=帧中的y头部位置-帧中的y脚位置,其中

帧中y头部位置=fy+(((ch-ph)*cos(θ))+(rd*sin(θ)))/((rd*cos(θ))-((ch-ph)*-sin(θ))*(焦距/像素大小)

帧中y脚位置=fy+(((ch)*cosθ))+(rd*sin(θ)))/((rd*cos(θ))-((ch)*-sin(θ))*(焦距/像素大小)

其中:

ch:相机高度,以米为单位

rd:行人到相机的真实世界距离,以米为单位

ph:行人真实世界高度(约1.8米)

fy:帧高度(米)

θ:俯仰角

获得行人高度后,将根据以下规则选择窗口:

窗口高度=帧中的行人高度*100/80*(16的最近倍数)

一旦获得窗口大小,可以通过试错法获得需要执行扫描的行(例如35m至50m的范围)。例如,对于每个窗口,在给定的行中执行扫描,一个单元向上移动,而一个单元向下移动。

图2d示出了根据本发明实施例的用于实现特征提取的示例性框图。如图所示,在一个实施例中,扫描窗口选择模块212与单元大小估计模块262可操作地耦合,使得扫描窗口选择模块212的输出提供为单元大小估计模块262的输入。每个扫描窗口包括多个单元,单元大小估计模块262调整单元大小以使所有扫描窗口的特征向量长度相同。本领域技术人员会理解,调整单元格大小的技术有助于提高计算速度和降低复杂度。

根据本发明的实施例,对于远、中间和近区域使用不同大小的扫描窗口。单元大小估计模块262估计每个扫描窗口的单元大小,以使所有大小的窗口具有相同长度的ihog特征。单元大小估计模块262的输出馈送到特征提取模块214。

特征提取模块214

在一方面,特征提取模块214从每个扫描窗口中提取定向梯度积分直方图(ihog)特征,其中每个扫描窗口包括多个单元,使得每个扫描窗口的多个单元中的每个单元的大小通过单元大小估计模块262调整,以使多个扫描窗口中的每个扫描窗口的特征矢量长度相同。

众所周知,hog(梯度直方图)、哈尔特征和lbp(局部二进制模式)是用于对象检测的最常见特征提取技术。在这些已知技术中,hog特征提取技术是最常用于检测行人的。因此,在一个实施例中,特征提取模块214利用hog特征提取技术来检测行人。hog是一种面向边缘的直方图,其基于称为细胞的局部区域中的梯度方向。因此,它容易表现出物体的粗糙形状,并且hog对于几何形状的变化和光照变化的变化是强大的。通过单元大小估计模块262调整单元的大小以使所有扫描窗口的特征向量长度相同,有助于提高计算速度并降低复杂度。此外,积分直方图(ihog)用于快速直方图提取。使用估计的单元,特征提取模块214针对roi内的所有扫描窗口提取ihog特征。

行人检测模块216

在示例性实施例中,特征提取模块214的输出还用于行人检测模块216的分类和对象检测。在一方面,行人检测模块216基于从每个扫描窗口提取的ihog特征使用如图2e所示中形成的两个或多个分类器的级联来检测行人。此外,行人检测模块216与非最大抑制(nms)模块218耦合,该模块配置为提供围绕所检测到的行人的单个边界框的输出。本领域技术人员会理解,如本申请中公开的行人的检测与车辆的速度以及行人与车辆之间的距离无关。

图2e示出了根据本发明实施例的用于行人检测的分类器架构的示例性框图。如图所示,根据一个实施例,三级分类器用于检测。两个自适应增强分类器274a和274b与支持向量机(svm)分类器276相结合,以提高检测精度。自适应增强和svm通常用于实时条件下的对象分类。另一方面,基于深度学习的方法,如卷积神经网络(cnn),您只看一次(yolo)架构和单流时间行动建议(sst)架构用于精确地检测和定位对象。但是,深度学习方法不适用于实时条件,因为计算时间和内存要求很高。由于本发明的目的是开发一种行人检测系统,该系统将精确地检测行人并实时运行,因此本文中使用自适应增强分类器和svm分类器。根据一种实施,发现级联的分类器(两个自适应增强分类器和一个svm)适合于执行所述任务。

在一方面,两个或更多个分类器中的至少一个分类器使用训练图像数据库226来促进对行人的检测。训练图像数据库226由以下各项创建:

·使用行人的轮廓信息来裁剪一个或多个图像框的训练图像

·将每个裁剪后的图像调整为最接近的扫描窗口的大小

·通过从至少一个分类器(两个或多个分类器中)的分类器数据库中删除不需要的结构例如极、树等来执行数据库清理;和

·从至少一个分类器中收集误报;并将误报添加到后续分类器的分类器数据库中。

如图2e所示,在示例性实施例中,从每次扫描中提取的ihog特征272馈送到自适应增强分类器的第一级274a。一级自适应增强分类器274a通过几乎所有行人和很少的非行人。来自第一级自适应增强分类器274a的所有正值馈送到第二级自适应增强分类器274b。第二级自适应增强分类器274b拒绝更多非行人。来自第二级自适应增强分类器274b的所有正值可以进一步馈送到svm分类器276。当图像在svm分类器之前通过自适应增强分类器时,svm分类器上的负载减小。仅考虑通过svm分类器的那些窗口进行检测。svm分类器的示例性输出在图2f中示出。分类器的输出是行人周围的多个边界框。svm分类器276的输出进一步馈送到非最大抑制(nms)模块218。

非最大抑制模块218

在一方面,非最大抑制模块218与行人检测模块216耦合,并且配置为提供围绕所检测到的行人的单个边界框的输出。

根据一个实施例,如图2e所示,通过非最大抑制模块218接收支持向量机(svm)分类器276的输出。如图2f所示,分类器276的输出是行人周围的多个边界框。基于框的置信度和位置,非最大抑制(nms)模块218抑制所有多个框并围绕多个检测框外的行人周围绘制单个边界框,如图2g所示。

追踪模块220

在一方面,追踪模块220基于该组图像帧的提取的ihog特征来追踪检测到的行人的边界框。

在一个实施例中,非最大抑制模块218的输出由追踪模块220接收。追踪的不同阶段如图2h所示。本领域技术人员应该理解,视频追踪是使用摄像机随时间定位运动对象(或多个对象)的过程。视频追踪的目的是将目标对象关联到连续的视频帧中。当对象相对于帧速率快速移动时,关联特别困难。追踪器随着其功能所需的变量进行更新。如图2h中所示,追踪模块220基于有效计数的数量来确定追踪是处于空闲状态、预追踪状态、追踪状态还是取消状态。

碰撞确定模块222

在示例性实施例中,追踪模块220的输出还用于由碰撞确定模块222计算碰撞的时间。碰撞确定模块222使用以下方程式来计算检测到的行人的碰撞时间(ttc):

ttc=行人到主机的实际距离/(主机速度-行人速度)

真实世界距离的估计需要摄像机参数和检测到的边界框的有关信息。

图2i示出碰撞确定模块222的工作框图。可以理解,主机速度/车辆速度是远大于行人速度。摄像机参数和检测到的边界框可用于确定行人与主机/车辆的真实世界距离。此后,使用以下公式计算ttc(碰撞时间):

ttc=行人到主机的实际距离/(主机速度)

一旦检测到行人,便会基于ttc向驾驶员提供警告。

图2j示出了不同阶段的行人碰撞警告样本帧输出。行人检测警告可以显示在本领域已知的任何显示设备上。警告可以是本领域中已知的各种形式,例如但不限于视觉、听觉、感觉、及任意组合等。

在一个实施例中,扫描窗口选择模块212实现图像帧扫描的切换以使图像处理更快。对第一帧的hd分辨率执行全带扫描。对于第二帧,对vga和qvga分辨率执行全带扫描。除此以外,还对前一帧中有检测框的hd分辨率中的特定区域执行局部扫描。对于第三帧,执行全带扫描以获取hd分辨率。在先前的帧中检测到的vga和qvga的特定区域进行局部扫描。重复该过程以提高帧速率,即每秒帧数(fps)。

其他模块224

在一方面,其他模块224实现由系统100或一个或多个处理引擎208执行的应用或功能的补充功能。

尽管以上对提出的系统进行了详细说明,包括所有主要模块,但实际实现完全有可能仅包括提出的模块的一部分或这些模块的组合,或者将这些模块划分为子模块的各种组合,跨多个设备的各种组合,这些设备可以彼此有效地耦合在一起,包括在云中。此外,可以按任何顺序配置模块以实现详细说明的目标。同样,可以理解,所提出的系统可以配置在计算设备中或跨彼此可操作连接的多个计算设备中进行配置,其中,计算设备可以是计算机、智能设备、支持互联网的移动设备和类似物。因此,在何处以及如何配置所提出的系统的所有可能的修改、实现和实施例都在本发明的范围内。

图3示出了根据本发明的示例性实施例提出的系统的工作方法。

一方面,可以在计算机可执行指令的通常上下文中描述所提出的方法。通常,计算机可执行指令可以包括执行特定功能或实现特定抽象数据类型的例程、程序、对象、组件、数据结构、过程、模块、功能等。该方法也可以在分布式计算环境中实践,其中功能由通过通信网络连接的远程处理设备执行。在分布式计算环境中,计算机可执行指令可以位于本地和远程计算机存储介质中,包括内存存储设备。

所描述的方法的顺序不旨在理解为限制,并且可以以任何顺序组合任意数量的所描述的方法框以实现该方法或替代方法。另外,在不脱离本文描述的主题的精神和范围的情况下,可以从方法中删除各个框。此外,该方法可以以任何合适的硬件、软件、固件或其组合来实现。然而,为了便于说明,在以下描述的实施例中,可以认为该方法在上述系统中实现。

在一个方面,本发明阐述了一种用于行人检测的方法,该方法包括在步骤302处,由一个或多个处理器接收一个或多个图像帧,并为从接收到的一个或多个图像帧中选择的一组图像帧定义感兴趣区域(roi),其中,所述一组图像帧中的每个图像帧都属于车辆驾驶员的视野,其中,基于每个图像帧的分辨率并且进一步基于在车辆驾驶员的视野中定义的区域来定义roi;及在步骤304,由一个或多个处理器确定每组图像帧的roi中的多个扫描窗口,其中,基于图像帧中行人的推测高度来计算每个扫描窗口的大小。

该方法进一步包括,在步骤306,由一个或多个处理器从每个扫描窗口中提取定向梯度的积分直方图(thog)特征。在步骤308,由一个或多个处理器使用两个或多个分类器的级联基于从每个扫描窗口提取的ihog特征来检测行人。

图4示出了根据本发明的示例性实施例的所提出的系统的整体工作。

如图所示,多个图像传感器或摄像机如402-1、402-2....402-n(统称为摄像机402)可以配置在车辆中以捕获不同区域的图像帧,尤其是正面车辆的区域。

系统100从一个或多个摄像机402接收不同的图像。如上所述,此后,系统100生成至少一个边界框404,包含检测到的行人的图像。用于生成至少一个边界框404的过程可以如上所述。

在示例性实施例中,边界框404以这种方式在车辆实现的显示装置上显示给车辆的驾驶员:驾驶员可以及时看到行人并采取规避行为来保护行人。

系统100还确定与行人的碰撞是否即将到来,如果是,则生成如406所示的碰撞警告。警告406可以采取音频或视频信号的形式或两者的组合来及时警告车辆驾驶员。

可以理解,系统100可以与车辆的现有系统和控制装置集成在一起,以形成高级驾驶员辅助系统(adas),或者增强现有的adas。例如,由系统100生成的信号可以发送到车辆的发动机控制单元(ecu),并且可以帮助自动施加制动、禁用车辆的加速和鸣响。所有这些步骤可以帮助避免对行人、车辆乘员以及车辆本身造成伤害。

容易理解的,尽管本文阐述的公开的主要应用是用于行人检测的汽车领域中,但是其也可以在非汽车领域中使用,其中可以类似地检测到任何运动物体。

因此,本发明的系统和方法提供了简单、强大和准确的行人检测,而与行人的着装、行人的方向和变化的白天光照无关。另外,本发明的系统和方法使用三级分类器以更好地检测行人,从而减少误报。本发明还提供了一种实现帧切换以在检测时增加每秒帧数(fps)的系统和方法。利用本发明的系统和方法,改善了检测范围和检测质量。

如上所述,提出的系统使用了几个独特的功能。例如,所提出的系统考虑了来自不同分辨率的不同的感兴趣区域(roi)-远、近和中间区域-行人检测独立于车辆的速度以及与物体/行人的距离,从而提高了检测范围。根据行人的高度选择用于扫描的窗口大小,并调整单元大小以使所有扫描窗口的特征向量长度相同,这有助于降低处理复杂性并提高计算速度,从而使系统具有较高的响应速度。提出的系统使用级联的分类器,例如,如上所述使用三级分类器以更好地行人检测和减少误报。此外,提出的系统使用一种独特的策略来训练样本收集和注释,从而有助于建立强大的分类器模型。

如本文所使用,并且除非上下文另有指示,否则术语“耦合到”旨在包括直接耦合(其中两个元件彼此耦合或彼此接触)和间接耦合(其中至少一个其他元件位于两个元件之间)。因此,术语“耦合到”和“与...耦合”同义地使用。在本文的上下文中,术语术语“耦合到”和“与...耦合”也委婉地用来表示通过网络“通信耦合”,其中两个或更多设备能够通过网络彼此交换数据,可能通过一个或多个中间设备。

此外,在解释说明书和权利要求书时,应以与上下文一致的尽可能广泛的方式解释所有术语。特别地,术语“包括”和“包含”应解释为以非排他性的方式指代元件、组件或步骤,表示所引用的元件、组件或步骤可以存在、利用或与其他未明确引用的元件、组件或步骤组合。如果说明书的权利要求是指选自由a、b、c...和n组成的组中的至少一种,则该文应解释为仅需要该组中的一个元素,而不是a加n或b加n等

尽管已经图示和描述了本发明的一些实施例,但是这些实施例本质上是完全示例性的。本发明不限于仅在本文中阐述的实施例,并且对于本领域技术人员是显而易见的,除了已经描述的那些之外,在不脱离本文的发明构思的情况下,许多修改是可能的。所有这些修改、改变、变型、替换和等同形式完全在本发明的范围内。因此,除了所附权利要求的精神之外,本发明的主题不受限制。

发明的优点

本发明提供了用于行人检测的系统和方法,其准确地检测行人并相应地提供警告。

本发明提供了一种用于行人检测的系统和方法,该系统和方法检测行人而不管他们的服装如何。

本发明提供了一种在白天的不同光照下检测行人的系统和方法。

本发明提供了一种在所有方向上检测行人的系统和方法。

本发明提供了一种准确地检测行人的强大、经济和简单的系统和方法。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1