掌桥专利:专业的专利平台
掌桥专利
首页

紧急车辆音频检测

文献发布时间:2023-06-19 11:00:24


紧急车辆音频检测

技术领域

本公开的实施例总体上涉及操作自主车辆。更具体地,本公开的实施例涉及基于音频对紧急车辆的检测。

背景技术

以自主模式(例如,无人驾驶)操作的车辆可以减轻乘员(特别是驾驶员)免于某些与驾驶有关的责任。当以自主模式操作时,车辆可以使用车载传感器导航到各种位置,允许车辆在最少的人机交互、或者在某些情况下无需任何乘客的情况下行进。

紧急车辆(诸如警车、救护车和消防车)使用紧急汽笛告警行人和车辆驾驶员紧急情况。当汽笛响起时,行人和车辆驾驶员必须远离紧急车辆并允许紧急车辆经过。汽笛产生可以轻松听到、识别并可以传播相对远的大噪声。

自主驾驶车辆(ADV)必须意识到紧急情况,使得ADV能够正确响应。例如,如果消防车上的紧急汽笛响起,则ADV应该远离消防车。因此,期望的是,ADV基于紧急汽笛的音频检测做出驾驶决策,使得在紧急时刻期间ADV可以远离消防车道。

发明内容

在第一方面中,提供一种操作自主驾驶车辆(ADV)的计算机实现方法,方法包括:

使用安装在ADV上的一个或多个音频捕获设备捕获音频信号流,音频信号流表示ADV周围的可听环境;

将神经网络应用于音频信号流的至少一部分,以检测紧急车辆汽笛信号;

响应于确定紧急车辆汽笛信号,对音频信号流的至少一部分执行音频分析,以确定紧急车辆是正在朝着ADV移动还是正在远离ADV移动;以及

基于紧急车辆是正在朝着ADV移动还是正在远离ADV移动的确定,规划控制ADV的轨迹。

在第二方面中,提供一种数据处理系统,包括:

处理器;以及

存储器,耦合到处理器且用于存储指令,指令在由处理器执行时使处理器执行如第一方面所述的操作自主驾驶车辆(ADV)的方法的操作。

在第三方面中,提供一种非暂时性机器可读介质,具有存储在其中的指令,指令在由处理器执行时使处理器执行如第一方面所述的操作自主驾驶车辆(ADV)的方法的操作。

通过本发明的方法和系统,ADV可以基于紧急汽笛的音频检测做出正确的驾驶决策。

附图说明

在附图的图中以示例而非限制的方式示出本公开的实施例,在附图中,相似的附图标记指示相似的元件。

图1是示出根据一个实施例的联网系统的框图。

图2是示出根据一个实施例的自主车辆的示例的框图。

图3A-3B是示出根据一个实施例的与自主车辆一起使用的感知和规划系统的示例的框图。

图4示出根据一些实施例的用于检测紧急车辆汽笛的过程。

图5示出根据一些实施例的图示用于检测紧急车辆汽笛的系统的框图。

图6示出根据一些实施例的缓冲音频信号的示例。

图7-10示出与紧急车辆交互的ADV的示例。

具体实施方式

将参考下面讨论的细节来描述本公开的各种实施例和方面,并且附图将示出各种实施例。以下描述和附图是本公开的说明,并且不应被解释为限制本公开。许多具体细节被描述以提供对本公开的各种实施例的全面理解。然而,在某些情况下,为了提供对本公开的实施例的简要讨论,没有描述公知的或常规的细节。

在说明书中对“一个实施例”或“一实施例”的引用是指结合该实施例描述的特定特征、结构或特性可以被包含在本公开的至少一个实施例中。说明书中各个地方出现的短语“在一个实施例中”不一定都指相同的实施例。

一种系统和过程可以a)在一个或多个麦克风信号中检测紧急车辆汽笛的存在,以及b)基于汽笛的幅度或频率的变化(例如,通过多普勒效应),确定紧急车辆汽笛是否正在接近ADV。如果ADV感测到紧急车辆正在接近ADV(即越来越近),则ADV可以做出驾驶决策以给紧急车辆无障碍路线。

图1是示出根据本公开的一个实施例的自主车辆网络配置的框图。参考图1,网络配置100包括可以通过网络102通信地耦合到一个或多个服务器103-104的自主车辆101。尽管示出一个自主车辆,但是多个自主车辆可以彼此耦合和/或通过网络102耦合到服务器103-104。网络102可以是任何类型的网络,诸如局域网(LAN)、广域网(WAN)(诸如Internet、蜂窝网络、卫星网络的或其组合)、有线或无线的网络。服务器103-104可以是任何种类的服务器或服务器集群,诸如Web或云服务器、应用服务器、后端服务器或其组合。服务器103-104可以是数据分析服务器、内容服务器、交通信息服务器、地图和兴趣点(MPOI)服务器、或位置服务器等。

自主车辆是指可以被配置为处于自主模式的车辆,在自主模式下,车辆在驾驶员很少或没有输入的情况下导航通过环境。这种自主车辆可以包括具有一个或多个传感器的传感器系统,一个或多个传感器被配置为检测关于车辆在其中操作的环境的信息。车辆及其相关联的(一个或多个)控制器使用检测的信息导航通过环境。自主车辆101可以在手动模式、完全自主模式或部分自主模式下操作。

在一个实施例中,自主车辆101包括但不限于感知和规划系统110、车辆控制系统111、无线通信系统112、用户接口系统113和传感器系统115。自主车辆101还可以包括包含在普通车辆中的某些通用组件,诸如引擎、车轮、方向盘、变速器等,其可以由车辆控制系统111和/或感知和规划系统110使用各种通信信号和/或命令来控制,诸如,例如加速信号或命令、减速信号或命令、转向信号或命令、制动信号或命令等。

组件110-115可以经由互连、总线、网络或其组合彼此通信地耦合。例如,组件110-115可以经由控制器局域网(CAN)总线彼此通信地耦合。CAN总线是一种车辆总线标准,其被设计为允许微控制器和设备在没有主机的应用中彼此通信。它是一种基于消息的协议,最初是为汽车内的多路电气布线设计的,但也用于许多其他情况。

现在参考图2,在一个实施例中,传感器系统115包括但不限于一个或多个相机211、全球定位系统(GPS)单元212、惯性测量单元(IMU)213、雷达单元214、以及光检测和测距(LIDAR)单元215。GPS系统212可以包括收发器214,收发器214可操作以提供关于自主车辆的位置的信息。IMU单元213可以基于惯性加速度来感测自主车辆的位置和朝着的改变。雷达单元214可以表示利用无线电信号感测在自主车辆的局部环境内的物体的系统。在一些实施例中,除了感测物体之外,雷达单元214可以附加地感测物体的速度和/或前进方向。LIDAR单元215可以使用激光感测自主车辆所处环境中的物体。LIDAR单元215可以包括一个或多个激光源、激光扫描仪以及一个或多个检测器、以及其他系统组件。相机211可以包括一个或多个设备以捕获自主车辆周围的环境的图像。相机211可以是静态相机和/或视频相机。相机可以例如通过将相机安装在旋转和/或倾斜的平台上是机械地可移动的。

传感器系统115还可以包括其他传感器,诸如声纳传感器、红外传感器、转向传感器、油门传感器、制动传感器和音频传感器(例如,麦克风)。音频传感器可以被配置为从自主车辆周围的环境捕获声音。转向传感器可以被配置为感测方向盘的转向角、车辆车轮或其组合。油门传感器和制动传感器分别感测车辆的油门位置和制动位置。在某些情况下,油门传感器和制动传感器可以被集成为集成的油门/制动传感器。在一些实施例中,传感器系统的传感器(例如相机、扫描仪和/或检测器)的任何组合都可以收集用于检测障碍物的数据。

在一个实施例中,车辆控制系统111包括但不限于转向单元201、油门单元202(也称为加速单元)和制动单元203。转向单元201用于调节车辆的方向或前进方向。油门单元202用于控制马达或引擎的速度,进而控制车辆的速度和加速度。制动单元203用于通过提供摩擦以减慢车辆的车轮或轮胎来使车辆减速。注意,图2中所示的组件可以以硬件、软件或其组合来实现。

再次参考图1,无线通信系统112用于允许自主车辆101与外部系统(诸如设备、传感器、其他车辆等)之间的通信。例如,无线通信系统112可以直接或者经由通信网络(诸如通过网络102的服务器103-104)与一个或多个设备进行无线通信。无线通信系统112可以使用任何蜂窝通信网络或无线局域网(WLAN),例如使用WiFi与另一个组件或系统进行通信。无线通信系统112可以例如使用红外链路、蓝牙等直接与设备(例如,乘客的移动设备、车辆101内的显示设备、扬声器)通信。用户接口系统113可以是在车辆101内实现的外围设备的一部分,包括例如键盘、触摸屏显示器、麦克风和扬声器等。

自主车辆101的某些或全部功能可以由感知和规划系统110控制或管理,特别是在以自主驾驶模式操作时。感知和规划系统110包括必要的硬件(例如(一个或多个)处理器、存储器、存储装置)和软件(例如,操作系统、规划和路由程序),以接收来自传感器系统115、控制系统111、无线通信系统112和/或用户接口系统113的信息,处理接收到的信息,规划从起点到目的地点的路线或路径,然后基于规划和控制信息驾驶车辆101。可替换地,感知和规划系统110可以与车辆控制系统111集成在一起。

例如,作为乘客的用户可以例如经由用户界面指定行程的起始位置和目的地。感知和规划系统110获得行程有关的数据。例如,感知和规划系统110可以从MPOI服务器(其可以是服务器103-104的一部分)获得位置和路线信息。位置服务器提供位置服务,以及MPOI服务器提供某些位置的地图服务和POI。可替换地,这样的位置和MPOI信息可以本地缓存在感知和规划系统110的永久存储设备中。

当自主车辆101沿着路线移动时,感知和规划系统110还可以从交通信息系统或服务器(TIS)获得实时交通信息。注意,服务器103-104可以由第三方实体操作。可替换地,服务器103-104的功能可以与感知和规划系统110集成在一起。基于由传感器系统115检测或感测的实时交通信息、MPOI信息和位置信息、以及实时交通环境数据(例如,障碍物、物体、附近车辆),感知和规划系统110可以规划最佳路线并且例如根据规划的路线经由控制系统111驾驶车辆101,以安全有效地到达指定目的地。

服务器103可以是为各种客户端执行数据分析服务的数据分析系统。在一个实施例中,数据分析系统103包括数据收集器121和机器学习引擎122。数据收集器121从各个车辆(自主车辆或由人类驾驶员驾驶的常规车辆)收集驾驶统计123。驾驶统计123包括指示发出的驾驶命令(例如,油门、制动器、转向命令)以及由车辆的传感器在不同时间点捕获的车辆的响应(例如,速度、加速度、减速度、方向)的信息。驾驶统计123还可以以包括描述不同时间点的驾驶环境的信息,诸如,例如路线(包括起点位置和目的地位置)、MPOI、道路状况、天气状况等。

基于驾驶统计123,机器学习引擎122出于各种目的生成或训练一组规则、算法和/或预测模型124。然后可以将算法124上载到ADV上,以在自主驾驶期间实时使用。

图3A和图3B是示出根据一个实施例的与自主车辆一起使用的感知和规划系统的示例的框图。系统300可以被实现为图1的自主车辆101的一部分,包括但不限于感知和规划系统110、控制系统111和传感器系统115。参考图3A-3B,感知和规划系统110包括但不限于定位模块301、感知模块302、预测模块303、决策模块304、规划模块305、控制模块306和路由模块307。

模块301-307中的一些或全部可以以软件、硬件或其组合来实现。例如,这些模块可以被安装在永久存储设备352中、被加载到存储器351中、并且由一个或多个处理器(未示出)执行。注意,这些模块中的一些或全部可以通信地耦合到图2的车辆控制系统111的一些或全部模块或与这些模块集成。模块301-307中的一些可以作为集成模块被集成在一起。

定位模块301确定自主车辆300的当前位置(例如,利用GPS单元212),并管理与用户的行程或路线有关的任何数据。定位模块301(也称为地图和路线模块)管理与用户的行程或路线有关的任何数据。用户可以例如经由用户界面登录并指定行程的开始位置和目的地。定位模块301与自主车辆300的其他组件通信,诸如地图和路线信息311,以获得与行程有关的数据。例如,定位模块301可以从位置服务器以及地图和POI(MPOI)服务器获得位置和路线信息。位置服务器提供位置服务,并且MPOI服务器提供某些位置的地图服务和POI,其可以被缓存为地图和路线信息311的一部分。在自主车辆300沿路线移动时,定位模块301还可以从交通信息系统或服务器获取实时交通信息。

基于由传感器系统115提供的传感器数据和由定位模块301获得的定位信息,由感知模块302确定对周围环境的感知。感知信息可以表示普通驾驶员在驾驶员正在驾驶的车辆周围将会感知到的东西。感知可以包括车道配置、交通信号灯、另一车辆的相对位置、行人、建筑物、人行横道、或其他与交通有关的标志(例如,停车标志、让路标志),例如,以物体的形式。车道配置包括描述一个或多个车道的信息,诸如,例如车道的形状(例如,直行或弯曲)、车道的宽度、道路中有多少个车道、单向或双向车道、合并或拆分车道、出口车道等。

感知模块302可以包括计算机视觉系统或计算机视觉系统的功能,以处理和分析由一个或多个相机捕获的图像,以便识别自主车辆的环境中的物体和/或特征。物体可以包括交通信号、道路边界、其他车辆、行人和/或障碍物等。计算机视觉系统可以使用物体识别算法、视频跟踪和其他计算机视觉技术。在一些实施例中,计算机视觉系统可以映射环境、跟踪物体并估算物体的速度等。感知模块302还可以基于由诸如雷达和/或LIDAR的其他传感器提供的其他传感器数据来检测物体。

对于每个物体,预测模块303预测在这种情形下物体将表现的东西。根据一组地图/路线信息311和交通规则312基于当时感知驾驶环境的感知数据进行预测。例如,如果物体是在相反方向的车辆并且当前驾驶环境包括交叉路口,则预测模块303将预测车辆是可能直行向前移动还是转弯。如果感知数据指示交叉路口没有交通灯,则预测模块303可以预测车辆可能必须在进入交叉路口之前完全停止。如果感知数据指示车辆当前在只能向左转的车道或只能向右转的车道,则预测模块303可以分别预测车辆将更可能向左转或向右转。

在一些方面,预测模块至少在被认为与ADV的当前路径有关的区域中生成预测移动障碍物的路径的障碍物的预测轨迹。可以基于移动障碍物的当前状态(例如,移动障碍物的速度、位置、前进方向、加速度或类型)、地图数据和交通规则生成预测轨迹。

例如,ADV可以基于参考地图数据的障碍物的前进方向和位置将障碍物识别为被感测为在驾驶车道中行驶的车辆(例如紧急车辆),地图数据包含车道位置和方向,其基于障碍物的方向和位置证实障碍物似乎是在驾驶车道上驾驶。假设地图数据指示这是只能向右转的车道。根据交通规则(例如,在只能向右转的车道上“车辆”类型的障碍物必须向右转),可以生成限定障碍物移动的轨迹。轨迹可以包含预测障碍物移动的线的坐标和/或数学表示。

在一些实施例中,当预测障碍物的移动轨迹时,预测系统或模块将障碍物的轨迹预测划分为两部分:1)纵向移动轨迹生成,以及2)横向移动轨迹生成。这些部分可以组合形成障碍物的预测轨迹。

在一些实施例中,生成横向移动轨迹(也简称为横向轨迹),包括使用第一多项式函数优化轨迹。产生纵向移动轨迹(也简称为纵向轨迹),包括使用第二多项式函数优化轨迹。基于a)障碍物的当前状态作为初始状态,以及b)障碍物的预测结束状态作为一组限制,执行优化以使轨迹平滑地至少与障碍物的当前前进方向对齐。根据预测障碍物将移动到的车道的形状确定结束状态。一旦已经限定并生成了纵向移动轨迹和横向移动轨迹,就可以通过组合纵向移动轨迹和横向移动轨迹确定障碍物的最终预测轨迹。结果,基于障碍物的当前状态和车道的形状,障碍物的预测轨迹更加准确。

多项式优化或多项式拟合是指对由多项式函数(例如,五次或四次多项式函数)表示的曲线(例如,障碍物的轨迹)的形状进行优化,使得曲线沿着曲线是连续的(例如,可获得两个相邻区段的连接处的导数)。在自主驾驶领域中,从起点到终点的多项式曲线被分成多个区段(或多个段),每个区段对应控制点(或参考点)。这种分段多项式曲线称为分段多项式。当优化分段多项式时,除了一组初始状态约束和最终状态约束之外,还必须满足两个相邻区段之间的一组连接约束和一组边界约束。

一组连接约束包括相邻区段的位置(x,y)、速度、前进方向和加速度必须相同。例如,第一区段(例如,前区段)的结束位置和第二区段(例如,后区段)的起始位置必须相同或在预定的接近度内。第一区段的结束位置的速度、前进方向和加速度以及第二区段的起始位置的相应速度、前进方向和加速度必须相同或在预定范围内。另外,每个控制点与预定边界(例如,围绕控制点的左右0.2米)相关联。多项式曲线必须在其相应边界内通过每个控制点。当在优化期间满足这两组约束时,表示轨迹的多项式曲线应该是平滑且连续的。

对于每个物体,决策模块304做出关于如何处理物体的决策。例如,对于特定的物体(例如,在交叉路线中的另一辆车)以及描述该物体的元数据(例如,速度、方向、转弯角度),决策模块304决定如何遇见该物体(例如,超车、让车、停止、经过)。决策模块304可以根据可以存储在永久存储设备352中的一组规则(诸如交通规则或驾驶规则312)做出这样的决策。

路由模块307被配置为提供从起点到目的地点的一条或多条路线或路径。对于例如从用户接收的从起始位置到目的地位置的给定行程,路由模块307获得路线和地图信息311,并且确定从起始位置到达目的地位置的所有可能的路线或路径。路由模块307可以为每条路线(其确定从起始位置到达目的地位置)生成地形图式的参考线。参考线是指一条理想的路线或路径,不受诸如其他车辆、障碍物或交通状况的其他因素的干扰。即,如果道路上没有其他车辆、行人或障碍物,则ADV应该准确或密切跟随参考线。然后地形图被提供给决策模块304和/或规划模块305。根据由其他模块提供的其他数据(诸如来自定位模块301的交通状况、由感知模块302感知的驾驶环境以及由预测模块303预测的交通状况),决策模块304和/或规划模块305检查所有可能的路线以选择和修改最佳路线中的一条。用于控制ADV的实际路径或路线可能与由路由模块307提供的参考线接近或不同,这取决于当时的特定驾驶环境。

基于对感知到的每个物体的决策,规划模块305使用由路由模块307提供的参考线作为基础,以规划用于自主车辆的路径或路线以及驾驶参数(例如,距离、速度和/或转弯角度)。即对于给定的物体,决策模块304决定如何处理该物体,而规划模块305确定如何进行该处理。例如,对于给定的物体,决策模块304可以决定经过该物体,而规划模块305可以确定是在该物体的左侧还是在右侧经过。规划和控制数据由规划模块305生成,规划和控制数据包括描述车辆300如何在下一移动周期(例如,下一路线/路径段)中移动的信息。例如,规划和控制数据可以指示车辆300以每小时30英里(mph)的速度移动10米,然后以25mph的速度改变到右车道。

基于规划和控制数据,控制模块306根据由规划和控制数据限定的路线或路径,通过向车辆控制系统111发送适当的命令或信号,控制和驾驶自主车辆。规划和控制数据包括足够的信息,以沿路径或路线在不同时间点使用适当的车辆设置或驾驶参数(例如,油门、制动、转向命令)将车辆从路线或路径的第一点驾驶到第二点。

在一个实施例中,在数个规划周期(也称为驾驶周期)中执行规划阶段,诸如,例如在每100毫秒(ms)的时间间隔中。对于每个规划周期或驾驶周期,将基于规划和控制数据发出一个或多个控制命令。即每100ms,规划模块305规划下一路线段或路径段(例如包括目标位置和ADV到达目标位置所需的时间)。可替换地,规划模块305还可以指定特定的速度、方向和/或转向角等。在一个实施例中,规划模块305为下一预定时间段(诸如5秒)规划路线段或路径段。对于每个规划周期,规划模块305基于在前一个周期中规划的目标位置,为当前周期(例如,接下来的5秒)规划目标位置。然后,控制模块306基于当前周期的规划和控制数据产生一个或多个控制命令(例如,油门、制动、转向控制命令)。

注意,决策模块304和规划模块305可以被集成为集成模块。决策模块304/规划模块305可以包括导航系统或导航系统的功能,以为自主车辆确定行驶路径。例如,导航系统可以确定一系列速度和定向的前进方向,以影响自主车辆沿着基本上避开感知到的障碍物的路径的移动,同时通常使自主车辆沿着通往最终目的地的基于道路的路径前进。可以根据经由用户接口系统113的用户输入来设置目的地。导航系统可以在操作自主车辆时动态地更新行驶路径。导航系统可以合并来自GPS系统和一个或多个地图的数据,以便确定自主车辆的行驶路径。

在图4中,示出可以在自主驾驶车辆(ADV)的驾驶期间执行的过程400,以基于是否听到紧急车辆汽笛(例如警笛、救护车和消防车)正在接近ADV做出ADV的驾驶决策。过程可以周期性地重复,例如,每个驾驶周期、或每多个驾驶周期、或每个规划周期。过程可以优先于以上其他车辆规划决策,直到确定紧急车辆汽笛不再接近ADV。在那时,ADV可以基于目的地、障碍物检测等恢复正常规划,如其他部分描述的。

在框402处,过程包括接收具有在ADV的环境中感测到的声音的一个或多个麦克风信号。可以由集成到ADV并被布置为感测ADV的环境中的声音的麦克风生成麦克风信号。在一些实施例中,一个或多个麦克风可以被布置在ADV的外部上,或者以使得麦克风可以感测到ADV之外的环境声音的方式布置。

在框404处,过程包括处理一个或多个麦克风信号以生成具有在ADV的环境中感测到的声音的音频信号。这样的音频处理可以包括组合麦克风信号以及对所得的组合信号进行滤波,如在其他部分中进一步描述的。

在框406处,过程包括将神经网络应用于音频信号以检测紧急车辆汽笛的音频签名的存在。可以用音频训练数据来训练神经网络(例如,在部署ADV之前)。训练数据可以包括:a)被分类为具有紧急车辆汽笛的音频数据,以及b)被分类为不具有紧急车辆汽笛的音频数据。例如,训练数据可以包括许多音频样本,其中一些包含不同的警笛、消防车汽笛和救护车汽笛,其被分类为具有紧急车辆汽笛,以及其中一些包含其他噪声,诸如但不限于,狗吠、鸟鸣、汽车喇叭、音乐等,其被分类为不具有紧急车辆汽笛。

在一些实施例中,神经网络是卷积神经网络,尽管在不脱离本发明范围的情况下也可以使用其他神经网络。类似地,神经网络可以具有能够通过常规测试和实验而确定的深度N(例如1、2、3或更大)。可以使用已知技术训练神经网络,诸如,例如线性回归、最小化诸如均方误差(MSE)或线性最小二乘的损失函数(也称为成本函数)、梯度下降和/或其他已知训练技术。

如果由神经网络算法检测到汽笛(例如,紧急车辆汽笛的音频签名),则过程在决策框408处将进行到框410。如果未检测到,则该过程将什么也不做,这意味着在当前驾驶周期中,ADV的驾驶决策将不受此过程的影响。

在框410处,响应于检测到音频签名的存在,过程可以分析音频签名中的变化以做出紧急车辆汽笛是a)正在朝着ADV移动、还是b)没有正在朝着ADV移动的确定。在一些实施例中,分析可以包括检测音频签名从音频信号的一个时间帧到音频信号的另一个时间帧的幅度、频率(也称为音高)的变化。

例如,汽笛的幅度和/或频率相对于时间的增加可以指示紧急车辆汽笛正在朝着ADV移动。在一些实施例中,可以分析麦克风信号以确定音频签名从一个麦克风信号到另一个麦克风信号的相移,这也可以指示汽笛的方向以及汽笛是否正在接近ADV。

在框412处,过程可以基于确定控制ADV。例如,如果紧急车辆汽笛正在朝着ADV移动,则过程可以生成驾驶决策:将ADV从当前驾驶车道转向出来、使ADV加速或减速、和/或制动ADV以减速或停止。可以通过一系列控制命令影响驾驶决策,这些命令启动油门、制动和/或转向。

参考图5,示出可以检测并响应接近的汽笛的ADV系统。一个或多个麦克风502可以在ADV的环境中感测声音。麦克风形成在ADV上具有固定和已知位置的麦克风阵列,麦克风阵列被布置为感测围绕ADV的多个方向上的声音。

麦克风信号处理器504可以处理麦克风信号以生成音频信号515,用于由机器学习算法模块518以及多普勒相移和频率/时间分析模块516消耗。麦克风信号处理器包括将麦克风信号组合为组合麦克风信号507的组合器模块506。这可以例如通过对麦克风信号进行平均来完成。组合器可以使用特征提取来确定待对准的麦克风信号的关键点,使得它们可以被正确组合。在不脱离本公开范围的情况下,组合器可以利用其他组合或降混技术将麦克风信号组合为单个音频信号。

麦克风信号处理器包括从组合麦克风信号507中去除噪声分量的滤波器508。例如,低通滤波器510可以衰减高频音频分量。附加地或替代地,有源噪声控制模块512可以从高频音频分量中主动地去除噪声。

例如,有源噪声控制可以分析麦克风信号的波形,以确定ADV的环境中的背景噪声。该噪声可以包括由ADV产生的噪声,或其他环境噪声,诸如其他车辆的引擎、音乐、风等。可以产生抗噪信号,当将抗噪信号应用于组合麦克风信号时,可以消除组合麦克风信号中的噪声。抗噪声信号可以是检测到的噪声(其可以在麦克风信号或组合麦克风信号中检测到)的相移或反相版本。在一些实施例中,一个或多个麦克风信号可以用作噪声参考信号。已知的自适应算法可以分析噪声参考信号以确定组合麦克风信号中的待消除的噪声。然后可以将这种噪声反转,使得在将其应用于组合麦克风信号时,产生破坏性干扰,消除音频信号中的噪声使得可以在音频信号中更有效地识别汽笛。

对组合麦克风信号滤波而得到的滤波后音频信号513可以由滤波器模块输出,并馈送到音频信号存储缓冲器154。在将神经网络应用于音频信号(在模块518处)以及分析音频签名的变化(在框516处)之前,音频信号存储缓冲器可以将音频信号存储为多个时间帧。

例如,参考图6,可以从音频信号604中提取多个音频帧(例如,帧1和帧2)。每个音频帧可以重叠在相邻音频帧上,尽管不是必须的。帧大小可以基于应用而变化(例如0.5秒、1秒、3秒),并且可以通过常规测试和实验而针对应用进行调整。每个帧可以被存储在存储缓冲器614中。多普勒相移和频率/时间分析模块以及机器学习检测算法模块可以消耗来自存储缓冲器的每个帧(例如,以逐帧为基础),因为存储缓冲器中填充着来自滤波器模块的滤波音频。因此,存储缓冲器用作提供连续音频数据用于由模块处理的管线。

返回参考图5,机器学习检测算法模块518将神经网络算法应用于音频信号515,以确定在音频信号中是否存在紧急汽笛的音频签名。如所提及的,音频信号可以是一系列音频帧。因此,神经网络算法可以分析一系列音频帧,以确定是否存在紧急汽笛的音频签名。

如果是,则可以通知多普勒相移和频率/时间分析模块516检测到汽笛。响应于该通知,多普勒相移和频率/时间分析模块516可以分析音频信号515以基于多普勒效应估计紧急车辆汽笛(并且因此,紧急车辆)是否正在朝着ADV移动。例如,如果紧急汽笛的频率随时间(例如,从一个时间帧到另一个时间帧)增加(例如,从1Hz到1.1Hz),基于多普勒效应,则这可以表明紧急车辆正在朝着ADV移动。在这种情况下,ADV应该停止或靠边停车。其他指示可以包括汽笛响度的增加,或汽笛从一个麦克风信号到另一个麦克风信号的相移。可以在时域和/或频域中分析时间帧。

在一些实施例中,汽笛逻辑517还可以分析ADV的移动以帮助确定紧急汽笛是否正在接近ADV。例如,汽笛逻辑517可以检查ADV速度。如果ADV速度为零,并且汽笛的幅度和频率随时间保持不变,则汽笛逻辑517可以形成紧急车辆和汽笛是静止的确定。在另一个示例中,如果ADV正在移动,并且汽笛的幅度和频率随时间保持恒定(或基本恒定),则汽笛逻辑需要更多数据以形成确定。例如,ADV可以分析相机数据以确定紧急车辆在何处以及紧急车辆是否正在接近ADV。

可以将确定519指示给决策模块304(如其他部分中描述的)和/或规划模块305。确定可以是“接近”、“不接近”中的一个。决策模块和/或规划模块然后可以基于确定做出驾驶决策(例如,减速、改变车道、停止)。可以通过从控制模块306向车辆控制系统111发出的一系列控制命令(油门、制动、转向)影响驾驶决策。在一些实施例中,仅当确定是紧急车辆正在接近ADV时才做出驾驶决策。因此,ADV可以忽略未正在接近的汽笛并防止对驾驶造成不必要的干扰。

图7至图10还示出不同的非穷举式场景,其中ADV通过执行诸如图4中描述的过程来检测并响应紧急车辆汽笛。在图7中,紧急车辆704正在接近ADV 702。ADV 702具有一个或多个麦克风703,其在ADV的环境中感测声音。一旦ADV确定紧急车辆704正在接近ADV(例如,如图所示,从后面),ADV就可以做出驾驶决策,诸如减速、制动和/或转向路边。

图8示出紧急车辆804正在远离ADV 802的场景。在这种情况下,ADV可以检测到紧急车辆汽笛正在远离ADV,并且ADV可以继续沿其当前路径行驶而没有干扰。

图9和图10示出紧急车辆和ADV在同一路径上的场景。即使紧急车辆不在同一条道路或路径上,道路上的车辆也必须对紧急车辆做出响应,因为非紧急车辆必须让路,以给紧急车辆在选择行驶路径时的优先权。在图9中,ADV 902正在朝着交叉路口驾驶,并基于紧急车辆的汽笛感测到正在接近的紧急车辆904。ADV可以通过减速、制动和/或靠边停车来做出响应,使得紧急车辆可以具有选择路径(直行或转弯)的优先权,并且确保ADV将不会阻挡紧急车辆。但是在图10中,当确定紧急车辆1004正在远离ADV 1002驾驶时,则ADV可以安全地沿着ADV的路径前进,而无需进一步考虑紧急车辆。

应该理解的是,图7-图10中讨论的示例是说明性的而不是限制性的。可以描述涉及ADV和检测紧急车辆是否正在接近的许多场景,所有这些在本公开中均无法实际示出。

注意,上面示出和描述的一些或全部组件可以以软件、硬件或其组合来实现。例如,这样的组件可以被实现为安装并存储在永久存储设备中的软件,软件可以由处理器(未示出)加载并在存储器中执行以实施整个本申请描述的过程或操作。可替换地,这样的组件可以被实现为被编程或嵌入到诸如集成电路(例如,专用IC或ASIC)、数字信号处理器(DSP)或现场可编程门阵列(FPGA)的专用硬件中的可执行代码,其可以经由相应驱动器和/或操作系统从应用程序进行访问。此外,作为软件组件经由一个或多个特定指令可访问的指令集的一部分,这样的组件可以被实现为处理器或处理器核心中的特定硬件逻辑。

根据对计算机存储器内的数据位的操作的算法和符号表示已经呈现前面详细描述的某些部分。这些算法描述和表示是数据处理领域的技术人员用来最有效地向本领域其他技术人员传达其工作实质的方式。算法在这里并且通常被认为是导致期望结果的自相容操作序列。这些操作是需要对物理量进行物理操纵的那些操作。

然而,应当牢记的是,所有这些和类似术语均应与适当的物理量相关联,并且仅仅是应用于这些量的方便的标记。除非从上述讨论中另外明确指出,否则应理解的是,在整个说明书中,利用诸如所附权利要求书中阐述的术语的讨论是指计算机系统或类似电子计算设备的动作和过程,该计算机系统或类似电子计算设备将计算机系统寄存器和存储器内表示为物理(电子)量的数据操纵和转换为计算机系统存储器或寄存器或其他这样的信息存储、发送或显示设备内的类似地表示为物理量的其他数据。

本公开的实施例还涉及用于执行本文中的操作的装置。这种计算机程序存储在非暂时性计算机可读介质中。机器可读介质包括用于以机器(例如,计算机)可读的形式存储信息的任何机制。例如,机器可读(例如,计算机可读)介质包括机器(例如,计算机)可读存储介质(例如,只读存储器(“ROM”)、随机存取存储器(“RAM”)、磁盘存储介质、光存储介质、闪存设备)。

在前述附图中描绘的过程或方法可以由包括硬件(例如,电路、专用逻辑等)、软件(例如,体现在非暂时性计算机可读介质上)或两者组合的处理逻辑来执行。尽管以上根据一些顺序操作描述了过程或方法,但是应当理解的是,可以以不同的顺序执行所描述的一些操作。此外,一些操作可以并行地执行而不是顺序地执行。

本公开的实施例不是参考任何特别编程语言描述的。将理解的是,可以使用各种编程语言来实现如本文描述的本公开的实施例的教示。

在前述说明书中,已经参考本公开的具体示例性实施例描述了本公开的实施例。显然,在不背离如所附权利要求书中阐述的本公开的更宽的精神和范围的情况下,可以对其进行各种修改。因此,说明书和附图应被认为是说明性的而不是限制性的。

相关技术
  • 基于音频的紧急车辆检测与追踪
  • 融合紧急车辆音频和视觉检测的机器学习模型
技术分类

06120112765095