用于驾驶员驾驶辅助及安全基于单目视觉的道路标志识别研究外文翻译资料

 2022-11-12 20:23:49

英语原文共 6 页,剩余内容已隐藏,支付完成后下载完整资料


用于驾驶员驾驶辅助及安全基于单目视觉的道路标志识别研究

Mohak Sukhwani1 Suriya Singh1 Anirudh Goyal1 Aseem Behl1 Pritish Mohapatra1

Brijendra Kumar Bharti2 C. V. Jawahar11

CVIT, IIIT Hyderabad, India 2 RNTBCI, Chennai, India

摘要:

在本文中,我们提出了一种解决方案,用来形成更丰富的描述和指令的司机援助和安全。该解决方案是基于一组计算机视觉和机器学习模块。从低级图像处理开始,最后生成高级描述。将图像模式识别模块的结果与视频序列中交通规则的先验知识和更多的环境相结合。对于道路标志的识别,使用了基于SVM的分类器和基于HOG的分类器。我们在城市环境中采集的真实数据上测试了我们的方法,其结果表现了令人印象深刻的性能,并给出了各模块的定性和定量性能。

关键词:计算机视觉;道路标志识别;驾驶员辅助;

一、引言及相关工作

对场景的语义理解是计算机视觉的最终目标之一。在自然的室外环境中,这个问题变得极其复杂。当使用计算机视觉设计安全系统或驾驶员辅助时,始终需要生成语义丰富的描述和指令。这项工作是朝着这个方向迈出的一步。我们的解决方案提高了识别的技术水平,并试图弥合“识别为标签”和“人类友好地理解”的语义鸿沟。

在过去有许多工作:识别单独的道路标志的各种应用,包括安全和自主导航[1]-[11]。然而,这些方法的识别能力通常仅限于为符号分配一个标签,并可能在图像中对其进行局部化。在这项工作中,我们将识别扩展到更丰富的语义理解,利用更多环境道路标记在时间和空间上的上下文联系。在最近的[17],[18]中,利用上下文联系来更好地理解视觉数据已经成为一个主要的研究方向。在我们的设置中,上下文信息包括当前帧和以前帧中某些其他符号的存在或缺失。这种从单独识别出发的高层次推理,是通过将导航中的自顶向下和自底向上线索相结合来实现的。

我们的目标是利用从一辆行驶中的汽车上捕捉到的视频流,从视觉线索中建立类似人类的理解。解决方案有以下几个特点:(1)我们使用单眼拍摄的视频进行处理相机和设计一个低成本的解决方案(与最低的硬件要求)的安全和司机的协助;(2)开始识别单独的符号或标记(如斑马线)的道路上,然后转移到语言描述(如“你可能很快就会预期斑马线和减速下来”);(3)我们系统学习已存在模板的标志(如“斑马线”和“菱形标志”),并使用它形成的描述更丰富、更具预测性;(4)我们利用机器学习的思想,使解决方案能够在最少的监督下轻松适应新环境(新城市或新成像条件)。

利用计算机视觉技术进行自主导航和驾驶员辅助的问题由来已久,近年来得到了广泛的研究。这方面的工作大致可分为两类:(i)基于计算机视觉的道路/交通场景分析;(ii)基于计算机视觉的车辆安全系统。道路/交通场景识别既可以使用静态摄像头[12]、[13],也可以使用安装在移动车辆上的摄像头[2]-[11]。现代汽车正在装备各种传感器,以实现先进的功能。这导致了涉及车载传感器的车辆安全和导航研究活动的激增。视觉是现代智能汽车的重要组成部分。许多现代车辆都配备了安全系统,可以在紧急情况下警告驾驶员并控制驾驶。例如,[5]提供了使用面向驾驶员的摄像机监控驾驶员状态的解决方案。[1] -[4]提出车道偏离、附近车辆和障碍物的道路监控方法。像[7]-[10]这样的工作,尝试通过使用车载摄像头检测车道和交通标志来识别交通场景。

在高度受限的环境下使用单目摄像机。我们的目标是设计能够为人和机器提供语义指令(用于安全和指导)的模块。我们的问题类似于[11]。然而,我们的方法更加有原则和鲁棒性强。我们设计和实现了一组计算机视觉模块,这些模块从低级图像处理开始,最终生成更丰富的语义描述,对人和机器都具有更大的效用。我们在具有挑战性的自然城市交通状况下采集的真实数据上验证了我们的方法。我们考虑19个路标,并在数据集上报告了比[11]使用的数据集大三倍的结果,包括光照、侵蚀和遮挡程度的变化。

二、概述

本系统以视频流形式的视觉数据为输入,以对道路交通场景的人性化语言描述和行驶建议为输出。当输入的视频流被安装在车辆顶部的摄像机捕获时,语言描述和行驶建议通过“驾驶辅助系统”呈现给驾驶员。

图1展示了系统的概述。对于视频的每一帧,我们首先使用二值化将其分割为前景区域和背景区域。这一步的目标是将大部分不相关的部分推到背景中,只将道路的突出部分,如道路标志和车道标志,分割出来作为前景。其次,从前景的片段中识别出道路标志的候选边界框。然后,对于每个候选边界框,运行一个分类器来确定边界框内是否存在路标。最后,使用每个符号的位置和标签进行语义推理。我们的算法跟踪前一帧检测到的路标,并在其上建立语义网络。然后系统将结果转换成一种人类友好的形式,驾驶员可以很容易地掌握这种形式。

图1:系统概述图

三、技术细节

A:检测

系统中的第一个模块检测道路标志边界框,无论它们属于哪个类别。这是一项具有挑战性的任务,因为在大量的视频帧中,道路标志的退化程度很高,而且一些视频帧中缺乏良好的照明条件。在下面的子小节中,我们将描述检测模块中的不同阶段。

1)二值化:我们首先对图像进行二值化,这样我们就有了像路标和车道标记这样的部分作为前景,并尝试将其他的东西推到背景中。二值化对于道路标志被侵蚀或由于其他物体阻挡或反射正常阳光而导致光线变化的图像具有挑战性。在这里,我们描述了两种方法,我们试图使框架二值化。

采用Otsu方法进行二值化:该算法假设待阈值图像包含两类像素或双模直方图(如前景和背景);它计算分离这两个类的最佳阈值,使它们的组合扩展(类内方差)最小。而不是使用全局阈值,我们将图像分成块,每个大小为100times;100像素和每一块用Otsu阈值计算的方法。实验证明,块级阈值虽然耗时较长,但比全局阈值更具有鲁棒性。该算法简单有效,但需要对所有可能的阈值进行计算。

使用GMM进行二值化:该算法假设可以使用高斯混合模型(Gaussian mix Model, GMM)对路牌对应像素点的强度分布进行建模。GMM模型由一个固定数量(通常在3到7之间)的加权高斯分布组成。任何不太可能由该模型生成的像素都被认为是不相关的,因此被丢弃作为背景。GMM模型使用Otsu的方法对少量初始帧进行二值化输出初始化,并随着帧数的增加而定期更新。该算法是快速和帧大小为1280times;960像素,运行在一个核心系统5帧/秒。该算法可以很容易地扩展为在多核cpu和gpu等多核架构上并行运行。与使用Otsu方法的二值化相比,基于GMM的二值化导致的误报更少。图2给出了Otsu方法与GMM二值化方法的比较。

(a) (b) (c)

图2:典型帧的二值化结果:(a)输入帧;(b)使用Otsu的方法;(c)使用GMM;

2)生成候选窗口:接下来,我们在图像上识别可能包含路标的边框。在理想的二值化情况下,每个连接的组件都对应一个候选边界框。然而,我们的数据集是由自然城市道路的图像组成的,正如预期的那样,我们遇到了大量的路标被降级,导致二值化的碎片。我们需要将这些较小的片段合并到一个边框中,然后将这个边框传递给分类器。除此之外,我们还有一些路标,比如斑马线,它自然由几个独立的组件组成,需要合并到一个边框中。在二值化映像中合并多个组件以生成有用的候选窗口并不是一项简单的任务。 在这里,我们试图提高系统的召回率,以便在容忍错误检测的同时获得所有路标的候选边界框。为此,我们只考虑大于特定大小的段,然后为这些段的所有可能组合生成边界框。

3)修剪候选窗口:由于前面的步骤导致了大量的虚假候选窗口,为了修剪它们,我们学习了线性支持向量机来区分包含路标的窗口和不包含路标的窗口。我们使用一些手工标记的例子来训练这个SVM。

B:识别与分类

在这个模块中,我们使用前一个模块生成的候选边界框,预测一个边界框可能具有的路标。

1)特征提取:对每个候选边界框提取HOG特征[15]。HOG描述符捕获边界框内强度梯度方向的分布。这些特性对于尺度、光照和适度降解的变化是具鲁棒性的。图3显示了一些典型边界框的HOG特性。

2)分类:我们将问题建模为一个多类分类问题,通过训练1-vs-rest线性SVM对19个路牌类别进行分类。对于每个候选边界框,我们使用所有19个线性支持向量机计算分数,分数最高的路牌类别分配给候选边界框。我们使用公共可用的liblinear库[14]来训练1-vs-rest分类器。

为了训练SVM分类器,我们将数据集分为训练集和验证集。我们用候选窗口各自的路标类别标签进行标注。我们针对每个路标类别对线性支持向量机进行训练,训练集的候选边界框具有HOG特征,其中包含特定路标的候选窗口具有正标签,其他每个候选窗口具有负标签。

(a) (b) (c)

图3:HOG特征的可视化,例如候选窗口(a)左转(b)右转(c)直走

C:语义推理

在这个模块中,我们对检测到的道路标志进行单独的分类处理,并尝试将相关信息以人性化的形式和以场景描述和行驶建议的形式呈现给驾驶员。最终的输出以音频和可视格式显示在面板上,如图8所示。

所面临的挑战是如何以一种用户能够理解和使用的格式来呈现信息,而这种格式需要用户付出最少的额外努力。为了实现这一点,我们首先从时间推断开始。我们的算法检测和识别每一帧中的符号。我们跟踪以前的输出标签,并在其上构建语义描述。通过对多个帧进行扩展,可以使结果更加可靠。在对新帧进行处理的过程中,我们得到了以检测到的路标和相应分数为形式的新的识别输出。通过将这些单独的输出与前一帧的结果进行积分得到新的推论。

然后,我们将标签转换成更有意义的描述。最终显示的结果以人们可以理解的句子、短语或注释(稍后转换为音频输出)的形式显示,并在输出屏幕左侧的窗格中高亮显示检测到的符号,如图8所示。下面将详细描述这个模块中所遵循的不同步骤。

(1)时间推理:与HMMs类似,本例中当前帧的输出依赖于前一帧,因此我们将系统建模为order-n Markov。检测到的符号计数是控制前一帧之间关系的符号计数。随着系统顺序的增加,整体复杂度的增加使得我们的系统速度变慢,而结果却没有显著的改善。我们的系统在n = 5的情况下性能最好。

由于我们使用视频作为系统的输入,在帧级别上的错误检测可能会导致系统错误。为了使系统对较小的误分类具有鲁棒性,我们跟踪在前n帧中检测到的符号的数量;如果我们无法对特定帧中的符号进行分类,那么之前的帧检测就可以帮助我们。只有当符号的计数在当前帧和以前帧中超过某一阈值(countthresh)时,才认为该符号被检测到。

(2)高标号:我们可以在每一帧中设置多个路牌,因此为了在给定的情况下显示所有路牌,我们设计了一个显示系统,将所有检测到的路牌高亮显示在“最常打标”窗格中。我们甚至在画面中心显示与最重要检测相关的文本。大多数重要的检测是由一组预先确定的符号优先级(可根据需求进行配置)决定的。

我们的语以生成模块是安全系统的核心。丰富的描述增加了驾驶辅助和音频线索的情况下,高优先级符号(可配置)警告司机要格外小心。该模块增加了系统的能力,造就一个“更安全的司机”。

图4:数据集中的图像示例

四、实验和验证

A.数据集和注释

在这个工作中使用的数据集是由安装在汽车上的摄像头创建的,用来捕捉行驶方向的前视图。这辆车在日本神奈川县的Hon-Atsugi地区的城市道路上行驶了一个多小时。摄像机以1280 times;960的分辨率记录下道路的视频,捕捉到阳光明媚、隧道穿越、阳光暗淡、车辆在路标上的影子、车辆在标志上的障碍物等场景。据我们所知,我们没有任何公共存储库来捕捉这些变化。我们的数据集包含65K帧有100K标注的路标,分为19类。

注释如此庞大的数据集绝非易事,为了减少工作量,我们设计了一种半监督的方法来对数据集进行注释,方法是每隔五帧注释一次,然后将结果传播到其余的帧。总之,我们手工注释了15k帧,并将结果传播到50k帧上。如果对注释有任何调整(由于传播),则通过访问和验证每个框架的注释来进行。

我们既捕捉主观的(如遮挡、亮度),也捕捉客观的(如遮挡、亮度)每个路标的属性。在注释中捕获的细节在性质上是广泛的,并且为每个路标定义了以下属性:

1)遮挡:无遮挡、中遮挡、高遮挡。

2)亮度:低亮度、中亮度、高亮度。

3)侵蚀:无侵蚀、中侵蚀、高侵蚀。

4)车道:不适用、电流车道、异车道。

5)驱动方向:不适用、驱动方向、相反方向。

该道路标志附有注释,标示19种不同类型的道路标志,包括限速标志“30”、“40”及“50”、“斑马过路”、“停车”、“停车线”、“对角线”、“钻石”、“雪佛龙”、“右转”、“直线”、“禁止掉头”、“掉头”、

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[18477],资料为PDF文档或Word文档,PDF文档可免费转换为Word

您需要先支付 30元 才能查看全部内容!立即支付

发小红书推广免费获取该资料资格。点击链接进入获取推广文案即可: Ai一键组稿 | 降AI率 | 降重复率 | 论文一键排版