使用车载传感器检测天气条件的方法和系统

申请号 CN201480033640.0 申请日 2014-04-07 公开(公告)号 CN105324287A 公开(公告)日 2016-02-10
申请人 谷歌公司; 发明人 J.朱; D.多尔戈夫; D.弗格森;
摘要 提供了使用车载 传感器 检测天气条件的示例方法和系统。示例方法包括接收针对车辆的环境收集的激光数据,而且激光数据包括多个激光数据点。方法还包括由计算设备将多个激光数据点中的激光数据点与环境中的一个或多个对象相关联;以及将多个激光数据点中的、与环境中的一个或多个对象无关联的给定激光数据点确定为代表未追踪到的对象。方法还包括基于一个或多个未追踪到的对象被确定,由计算设备识别环境的天气条件的指示。
权利要求

1.一种方法,包括:
接收针对车辆的环境收集的激光数据,其中,激光数据包括多个激光数据点;
由计算设备将多个激光数据点中的激光数据点与环境中的一个或多个对象相关联;
将多个激光数据点中的、与环境中的一个或多个对象无关联的给定激光数据点确定为代表未追踪到的对象;以及
基于一个或多个未追踪到的对象被确定,由计算设备识别环境的天气条件的指示。
2.如权利要求1所述的方法,其中,接收针对车辆的环境收集的激光数据包括:接收通过执行对环境的一个或多个扫描所收集的激光数据,而且该方法还包括:
基于在对环境的一个或多个扫描中接收到的激光数据,当车辆移动通过环境时追踪环境中的一个或多个对象。
3.如权利要求1所述的方法,还包括:
对于对环境的第一扫描,由计算设备将多个激光数据点中的激光数据点与环境中的一个或多个对象相关联;
对于对环境的第二扫描,基于由激光数据点所代表的对象的位置来确定与一个或多个对象匹配的激光数据点;以及
基于第一扫描中缺乏与环境中的一个或多个对象的匹配,确定与一个或多个对象无关联的给定激光数据点。
4.如权利要求1所述的方法,其中,由计算设备识别环境的天气条件的指示包括:
确定与环境中的一个或多个对象无关联的给定激光数据点的数目高于阈值数目。
5.如权利要求1所述的方法,还包括:
从一个或多个附加传感器接收针对车辆的环境收集的附加数据,其中,附加数据指示车辆的环境中的一个或多个对象的存在;
确定多个激光数据点中的、与由附加数据所指示的环境中的一个或多个对象相关联的激光数据点;以及
基于激光数据点与由附加数据所指示的环境中的一个或多个对象无相关联,识别环境的天气条件的指示。
6.如权利要求1所述的方法,还包括:
接收针对车辆的环境收集的雷达数据,其中,雷达数据指示车辆的环境中的一个或多个对象的存在;
确定多个激光数据点中的、与由雷达数据所指示的环境中的一个或多个对象相关联的激光数据点;以及
基于激光数据点与由雷达数据所指示的环境中的一个或多个对象无关联,识别环境的天气条件的指示。
7.如权利要求1所述的方法,还包括:
接收从耦合到车辆的相机捕获的图像数据;以及
基于图像数据识别环境的天气条件的第二指示。
8.如权利要求1所述的方法,还包括:
通过网络从服务器接收针对车辆的位置的天气信息;以及
基于天气信息识别环境的天气条件的第二指示。
9.如权利要求1所述的方法,还包括:
通过网络从服务器接收针对车辆的位置的当前温度;以及
基于当前温度识别环境的天气条件的第二指示。
10.如权利要求1所述的方法,还包括:
从耦合到车辆的降雨传感器接收降雨数据;以及
基于降雨数据识别环境的天气条件的第二指示。
11.如权利要求1所述的方法,其中,所述车辆被配置为以自主模式操作,而且该方法还包括基于环境的天气条件的指示,确定车辆的驾驶决定。
12.如权利要求1所述的方法,还包括:
确定车辆的速度,并且
其中,由计算设备识别环境的天气条件的指示包括基于车辆的速度高于阈值识别车辆在其上行驶的表面是湿的。
13.如权利要求1所述的方法,还包括:
将与环境中的一个或多个对象无关联的给定激光数据点与所存储的代表由于雾引起的图案的激光数据点进行比较;以及
基于所述比较,由计算设备识别环境的天气条件包括雾的指示。
14.如权利要求1所述的方法,还包括:
将多个激光数据点中的、与环境中的一个或多个对象无关联的给定激光数据点确定为代表在相对于车辆的给定位置处的未追踪到的对象;
确定在车辆移动时未追踪到的对象保持在相对于车辆的基本相同的相对位置;以及由计算设备识别环境的天气条件为晴朗的指示。
15.如权利要求1所述的方法,还包括:
确定车辆的地理位置和一天中的时间;
基于车辆的地理位置和一天中的时间,确定太阳相对于车辆的近似位置;以及基于太阳相对于车辆的近似位置,由计算设备识别环境的天气条件的第二指示。
16.一种其中存储有指令的非暂态计算机可读介质,所述指令当被计算设备运行时导致计算设备执行功能,所述功能包括:
接收针对车辆的环境收集的激光数据,其中,激光数据包括多个激光数据点;
将多个激光数据点中的激光数据点与环境中的一个或多个对象相关联;
将多个激光数据点中的、与环境中的一个或多个对象无关联的给定激光数据点确定为代表未追踪到的对象;以及
基于一个或多个未追踪到的对象被确定,识别环境的天气条件的指示。
17.如权利要求16所述的非暂态计算机可读介质,其中,接收针对车辆的环境收集的激光数据包括接收通过执行对环境的一个或多个扫描所收集的激光数据,而且所述功能还包括:
基于在对环境的一个或多个扫描中接收到的激光数据,在车辆移动通过环境时追踪环境中的一个或多个对象。
18.如权利要求16所述的非暂态计算机可读介质,其中,所述功能还包括:
从一个或多个附加传感器接收针对车辆的环境收集的附加数据,其中,附加数据指示车辆的环境中的一个或多个对象的存在;
确定多个激光数据点中的、与由附加数据所指示的环境中的一个或多个对象相关联的激光数据点;以及
基于激光数据点与由附加数据所指示的环境中的一个或多个对象无相关联,识别环境的天气条件的指示。
19.一种系统,包括:
至少一个处理器;以及
数据存储装置,包括可由所述至少一个处理器运行以使得系统执行功能的指令,所述功能包括:
接收针对车辆的环境收集的激光数据,其中,激光数据包括多个激光数据点;
将多个激光数据点中的激光数据点与环境中的一个或多个对象相关联;
将多个激光数据点中的、与环境中的一个或多个对象无关联的给定激光数据点确定为代表未追踪到的对象;以及
基于一个或多个未追踪到的对象被确定,识别环境的天气条件的指示。
20.如权利要求19所述的系统,其中,所述车辆沿着道路行驶,而且所述功能还包括:
接收针对车辆的环境收集的雷达数据,其中,雷达数据指示车辆的环境中的一个或多个对象的存在;
确定多个激光数据点中的、与由雷达数据所指示的环境中的一个或多个对象相关联的激光数据点;以及
基于激光数据点与由雷达数据所指示的环境中的一个或多个对象无相关联,识别环境的天气条件的指示。

说明书全文

使用车载传感器检测天气条件的方法和系统

背景技术

[0001] 除非在本文中另有指示,否则本部分中描述的材料并不是本申请中的权利要求现有技术,并且也不因包括在本部分中而被承认是现有技术。
[0002] 自主车辆使用各种计算系统来帮助将乘客从一个位置运输到另一个位置。一些自主车辆可能需要来自操作者,例如,领航员、驾驶员或乘客,的最初输入或连续输入。其他自主系统,例如自动领航系统,可以当系统已被采用时使用,其允许操作员从手动模式(其中,操作者对于车辆的移动行使高度控制)切换到自主模式(其中,车辆基本自己驾驶)和介于两者之间的模式。
[0003] 这种车辆通常装备有各种类型的传感器以便检周遭中的对象。例如,自主车辆可包括激光、声纳、雷达(radar)、相机以及其它扫描和记录来自车辆的周遭的数据的设备。来自这些设备中的一个或多个的传感器数据可用于检测对象及其各自的特性(位置、形状、前进方向、速度等)。该检测和识别对自主车辆的安全操作是有用的。发明内容
[0004] 在示例中,提供了使用车载传感器检测包括湿的表面的天气条件的设备和方法。
[0005] 在一个示例中,提供的方法包括接收针对车辆的环境收集的激光数据,而且激光数据包括多个激光数据点。方法还包括由计算设备确定所述多个激光数据点中的、与环境中的一个或多个对象相关联的激光数据点。方法还包括基于与环境中的所述一个或多个对象无关联的激光数据点,由计算设备识别车辆在其上行驶的表面是湿的的指示。
[0006] 在另一示例中,提供了存储有指令的非暂态计算机可读存储介质,该指令当被计算设备运行时导致计算设备执行功能。功能包括接收针对车辆的环境收集的激光数据,而且激光数据包括多个激光数据点。功能还包括确定所述多个激光数据点中的、与环境中的一个或多个对象相关联的激光数据点, 以及基于与环境中的所述一个或多个对象无关联的激光数据点,识别车辆在其上行驶的表面是湿的的指示。
[0007] 在又一示例中,提供了系统,其包括至少一个处理器和数据存储装置,该数据存储装置包括可由所述至少一个处理器运行以使得系统执行功能的指令。功能包括接收针对车辆的环境收集的激光数据,而且激光数据包括多个激光数据点。功能还包括确定所述多个激光数据点中的、与环境中的一个或多个对象相关联的激光数据点,以及基于与环境中的所述一个或多个对象无关联的激光数据点,由计算设备识别车辆在其上行驶的表面是湿的的指示。
[0008] 在又一示例中,提供了设备,其包括用于接收针对车辆的环境收集的激光数据的装置,而且激光数据包括多个激光数据点。设备还包括用于确定所述多个激光数据点中的、与环境中的一个或多个对象相关联的激光数据点的装置。设备还包括用于基于与环境中的所述一个或多个对象无关联的激光数据点,识别车辆在其上行驶的表面是湿的的指示的装置。
[0009] 在其他示例中,提供了使用车载传感器检测包括雾的天气条件的设备和方法。
[0010] 例如,在另一示例中,提供的方法包括接收从对车辆的环境的扫描收集的激光数据,而且激光数据包括多个激光数据点。方法还包括由计算设备将所述多个激光数据点中的激光数据点与环境中的一个或多个对象相关联,并且将与环境中的一个或多个对象无关联的激光数据点与存储的代表由于雾引起的图案的激光数据点进行比较。方法还包括基于所述比较,由计算设备识别车辆的环境的天气条件包括雾的指示。
[0011] 在另一示例中,提供了存储有指令的非暂态计算机可读存储介质,该指令当被计算设备运行时导致计算设备执行功能。功能包括接收从对车辆的环境的扫描收集的激光数据,而且激光数据包括多个激光数据点。功能还包括将所述多个激光数据点中的激光数据点与环境中的一个或多个对象相关联,并且将与环境中的一个或多个对象无关联的激光数据点与存储的代表由于雾引起的图案的激光数据点进行比较。功能还包括基于所述比较,由计算设备识别车辆的环境的天气条件包括雾的指示。
[0012] 在又一示例中,提供了系统,其包括至少一个处理器和数据存储装置,该数据存储装置包括可由所述至少一个处理器运行以使得系统执行功能的指令。功能包括接收从对车辆的环境的扫描收集的激光数据,而且激光数据包 括多个激光数据点。功能还包括将所述多个激光数据点中的激光数据点与环境中的一个或多个对象相关联,并且将与环境中的一个或多个对象无关联的激光数据点与存储的代表由于雾引起的图案的激光数据点进行比较。功能还包括基于所述比较,由计算设备识别车辆的环境的天气条件包括雾的指示。
[0013] 在又一示例中,提供了设备,其包括用于接收针对车辆的环境收集的激光数据的装置,而且激光数据包括多个激光数据点。设备还包括用于确定所述多个激光数据点中的、与环境中的一个或多个对象相关联的激光数据点的装置。设备还包括用于基于与环境中的所述一个或多个对象无关联的激光数据点,由计算设备识别车辆的环境的天气条件包括雾的指示的装置。
[0014] 在又一些其他示例中,提供了使用车载传感器检测包括阳光的天气条件的设备和方法。
[0015] 例如,提供的方法包括接收针对车辆的环境收集的激光数据,而且激光数据包括多个激光数据点。方法还包括由计算设备将所述多个激光数据点中的激光数据点与环境中的一个或多个对象相关联,并且将所述多个激光数据点中的、与环境中的所述一个或多个对象无关联的给定激光数据点确定为代表在相对于车辆的给定位置处的未追踪到的对象。方法还包括当车辆移动时,确定未追踪到的对象保持在相对于车辆的大致相同的相对位置,以及由计算设备识别车辆的环境的天气条件为晴朗的指示。
[0016] 在另一示例中,提供了存储有指令的非暂态计算机可读存储介质,该指令当被计算设备运行时导致计算设备执行功能。功能包括接收针对车辆的环境收集的激光数据,其中激光数据包括多个激光数据点,而且将所述多个激光数据点中的激光数据点与环境中的一个或多个对象相关联。功能还包括将所述多个激光数据点中的、与环境中的所述一个或多个对象无关联的给定激光数据点确定为代表在相对于车辆的给定位置处的未追踪到的对象,而且当车辆移动时,确定未追踪到的对象保持在相对于车辆的大致相同的相对位置。功能还包括识别车辆的环境的天气条件为晴朗的指示。
[0017] 在又一示例中,提供了系统,其包括至少一个处理器和数据存储装置,该数据存储装置包括可由所述至少一个处理器运行以使得系统执行功能的指令。功能包括接收针对车辆的环境收集的激光数据,其中激光数据包括多个激光数据点,而且将所述多个激光数据点中的激光数据点与环境中的一个或多个对象相关联。功能还包括将所述多个激光数据点中的、与环境中的所述 一个或多个对象无关联的给定激光数据点确定为代表在相对于车辆的给定位置处的未追踪到的对象,而且当车辆移动时,确定未追踪到的对象保持在相对于车辆的大致相同的相对位置。功能还包括识别车辆的环境的天气条件为晴朗的指示。
[0018] 在又一示例中,提供了设备,其包括用于接收针对车辆的环境收集的激光数据的装置,而且激光数据包括多个激光数据点。设备还包括用于确定所述多个激光数据点中的、与环境中的一个或多个对象相关联的激光数据点的装置。设备还包括用于基于与环境中的所述一个或多个对象无关联的激光数据点,识别车辆的环境的天气条件为晴朗的指示的装置。
[0019] 在又一些其他示例中,提供了使用车载传感器检测一般天气条件的设备和方法。
[0020] 例如,在一个示例中,提供的方法包括接收针对车辆的环境收集的激光数据,而且激光数据包括多个激光数据点。方法还包括由计算设备将所述多个激光数据点中的激光数据点与环境中的一个或多个对象相关联。方法还包括将所述多个激光数据点中的、与环境中的所述一个或多个对象无关联的给定激光数据点确定为代表未追踪到的对象,而且基于一个或多个未追踪到的对象被确定,由计算设备识别环境的天气条件的指示。
[0021] 在另一示例中,提供了存储有指令的非暂态计算机可读存储介质,该指令当被计算设备运行时导致计算设备执行功能。功能包括接收针对车辆的环境收集的激光数据,而且激光数据包括多个激光数据点。功能还包括将所述多个激光数据点中的激光数据点与环境中的一个或多个对象相关联,并且将所述多个激光数据点中的、与环境中的所述一个或多个对象无关联的给定激光数据点确定为代表未追踪到的对象。功能还包括基于一个或多个未追踪到的对象被确定,识别环境的天气条件的指示。
[0022] 在又一示例中,提供了系统,其包括至少一个处理器和数据存储装置,该数据存储装置包括可由所述至少一个处理器运行以使得系统执行功能的指令。功能包括接收针对车辆的环境收集的激光数据,而且激光数据包括多个激光数据点,并且将所述多个激光数据点中的激光数据点与环境中的一个或多个对象相关联。功能还包括将所述多个激光数据点中的、与环境中的所述一个或多个对象无关联的给定激光数据点确定为代表未追踪到的对象,并且基于一个或多个未追踪到的对象被确定,识别环境的天气条件的指示。
[0023] 在又一示例中,提供了设备,其包括用于接收针对车辆的环境收集的激光数据的装置,而且激光数据包括多个激光数据点。设备还包括用于将所述多个激光数据点中的激光数据点与环境中的一个或多个对象相关联的装置。设备还包括用于将所述多个激光数据点中的、与环境中的所述一个或多个对象无关联的给定激光数据点确定为代表未追踪到的对象的装置,以及用于基于一个或多个未追踪到的对象被确定,由计算设备识别环境的天气条件的指示的装置。
[0024] 通过酌情参考附图阅读以下详细描述,本领域普通技术人员将清楚这些以及其它方面、优点和替换方案。

附图说明

[0025] 图1是描绘根据示例实施例的车辆的功能框图
[0026] 图2描绘了示例车辆,其可以包括结合参考图1的车辆所描述的所有或部分功能。
[0027] 图3是根据本文描述的至少一些实施例的利用车载车辆传感器来检测包括湿的表面的天气条件的示例方法的框图。
[0028] 图4是根据本文描述的至少一些实施例的利用车载车辆传感器来进一步确定包括湿的表面的天气条件的指示的示例方法的框图。
[0029] 图5是识别车辆在其上行驶的表面是湿的的指示的示例概念性侧视图。
[0030] 图6是识别车辆在其上行驶的表面是湿的的指示的另一示例概念性示图。
[0031] 图7是识别车辆在其上行驶的表面是湿的的指示的示例概念性俯视图。
[0032] 图8是根据本文描述的至少一些实施例的利用车载车辆传感器来检测包括雾的天气条件的示例方法的框图。
[0033] 图9是根据本文描述的至少一些实施例的利用车载车辆传感器来进一步确定包括雾的天气条件的指示的示例方法的框图。
[0034] 图10A是识别环境的天气条件包括雾的指示的示例概念性示图。
[0035] 图10B是由图10A中的车辆捕获的图像的示例概念性示图。
[0036] 图11A至图11B包括识别车辆的环境包括雾的指示的示例概念性侧视图。
[0037] 图12是根据本文描述的至少一些实施例的利用车载车辆传感器来检测 包括雾的天气条件的示例方法的框图。
[0038] 图13是根据本文描述的至少一些实施例的用于确定错误地识别环境中的对象的示例方法的框图。
[0039] 图14是根据本文描述的至少一些实施例的利用车载车辆传感器来进一步确定天气条件为晴朗的指示的示例方法的框图。
[0040] 图15A是基于相机图像识别环境的天气条件为晴朗的指示的示例概念性示图。
[0041] 图15B是由图15A中的车辆捕获的图像的示例概念性示图。
[0042] 图16包括识别车辆的环境为晴朗的指示的示例概念性侧视图。
[0043] 图17是根据本文描述的至少一些实施例的利用车载车辆传感器来检测天气条件的示例方法的框图。
[0044] 图18是根据本文描述的至少一些实施例的利用车载车辆传感器来进一步确定天气条件的指示的示例方法的框图。

具体实施方式

[0045] 以下详细描述参考附图对所公开的系统和方法的各种特征和功能进行了描述。在图中,除非上下文另外指出,否则相似的符号标识相似的组件,并且为了图示的目的,附图或附图中的组件可不一定是按比例绘制的。本文中所描述的说明性系统和方法实施例并非意图进行限制。可容易理解,所公开的系统和方法的某些方面可以按多种不同的配置进行布置和组合,所有这些都在本文中被设想到。
[0046] 在示例中,提供了使用车载传感器检测天气条件并且相应地修改车辆的行为的方法和系统。在一些示例中,自驾驶汽车或自主车辆在某些天气条件下,诸如暴雨、湿的道路、雾、直射阳光等,可以不驾驶或者也可以驾驶,因此,自主车辆的行为可以基于检测到的天气条件。
[0047] 在一个示例中,提供了一种方法,其包括接收针对辆的环境收集的激光数据。计算设备可以确定与环境中的任何对象相关联的激光数据点。基于与环境中的对象无关联的激光数据点,计算设备可以识别车辆在其上行驶的表面是湿的的指示。在其他示例中,基于与环境中的一个或多个对象无关联的激光数据点,计算设备可以识别车辆的环境的天气条件包括雾的指示。在又一些其他示例中,基于与环境中的一个或多个对象无关联的激光数据点,计 算设备可以识别车辆的环境的天气条件为晴朗的指示。在再一些示例中,基于一个或多个未追踪到的对象被确定,计算设备可以识别环境的一般天气条件的指示。
[0048] 在具体示例中,雷达传感器可能无法检测到雨,具体来说,诸如如下所述的雨/水:以一定速度行驶的车辆从表面上扬起的弓形水(例如,鸡尾状的水)。然而,激光传感器可以收集与这样的水条件有关的激光数据。因此,对于任何未追踪到的接收到的激光数据(例如,与接收到的雷达数据不匹配的激光数据),可以确定道路可能是湿的的指示。
[0049] 可以使用进一步的信息,诸如车辆的速度,来提供湿的道路条件的更高置信水平或确认。例如,如果车辆不在移动或缓慢移动,该车辆前方的车辆不太可能正在以足以使水从道路扬起并被激光传感器检测到的速度快速移动。可以使用的其他信息包括雨水检测器信息、来自服务器的关于天气的信息、或者来自耦合到传感器的相机的图像数据。
[0050] 在另一具体示例中,激光传感器可能无法穿过雾检测到对象,并且实际上,可能接收由雾反射的数据点。对于任何未追踪到的接收到的激光数据(例如,与环境中的追踪到的或已知的对象不匹配的激光数据),可以确定车辆在具有雾天气条件的环境中的指示。
[0051] 可以使用进一步的信息来提供天气条件是雾的更高置信水平或确认。例如,信息可以包括来自服务器的关于天气的信息、来自耦合到车辆的相机的图像数据、或者来自雷达传感器的数据,雷达传感器可以穿过雾看到并且检测到未被激光看到的对象。
[0052] 在又一具体示例中,阳光可以通过引起附加激光数据点或改变激光数据点的波长而污染激光数据。因此,一些收集的激光数据可能并不代表车辆的环境中的对象。通过与环境中的对象的数据(诸如使用激光或雷达数据追踪到的对象),那些被污染的激光数据点可以被识别,并且基于识别出这样的污染数据,可以得到晴朗天气条件。可以访问附加的细节,以进一步确认晴朗天气条件,诸如车辆的地理位置和一天中的时间、来自服务器的关于天气的信息、或者来自耦合到车辆的相机的图像数据。
[0053] 道路是湿的、天气条件是雾、天气条件晴朗、或者某个一般的天气条件的指示对于确定自主车辆的安全驾驶动作而言会是有用的。示例动作可以包括提供指示请求转换到手动模式的指令,或者如果保持在自主模式则切换到 特定于湿的道路的模式(即,以较慢的速度驾驶,从而允许更大的距离来完成制动等)。
[0054] 现在将更详细地描述本公开范围内的示例系统。通常,示例系统可以以汽车的形式实现或者可以采用汽车的形式。然而,示例系统还可以以其他车辆的形式实现或采取其它车辆的形式,诸如轿车、卡车、摩托车、公交车、船、飞机、直升机割草机、休旅车、游乐园车辆、农业设备、施工设备、有轨电车、高尔夫球车、火车和电车。其它车辆也是可能的。
[0055] 图1是描绘根据示例实施例的车辆100的功能框图。车辆100被配置为完全或部分地以自主模式操作,并且因此可以被称为“自主车辆”。例如,计算机系统112可以经由车辆100的控制系统106的控制指令来控制处于自主模式中的车辆100。计算机系统112可以接收来自传感器系统104的信息,而且在自动方式下基于接收到的信息进行一个或多个控制过程(诸如设置前进方向以避开检测到的障碍物)。
[0056] 车辆100可以是完全自主的或部分自主的。在部分自主车辆中,某些功能可以可选地在一些时间或全部时间内(例如,由驾驶员)手动控制。此外,部分自主车辆可以被配置为在完全手动操作模式和部分自主和/或完全自主操作模式之间切换。
[0057] 车辆100可以包括各种子系统,诸如推进系统102、传感器系统104、控制系统106、一个或多个外围设备108、以及电源110、计算机系统112和用户接口116。车辆100可以包括更多或更少的子系统,每个子系统可以包括多个元件。此外,车辆100的每个子系统和元件可以是相互连接的。因此,车辆100的所描述的功能中的一个或多个可以被划分成附加的功能或物理组件,或者被组合成更少的功能或物理组件。在另外一些例子中,附加功能和/或物理组件可以被添加到图1所示的例子中。
[0058] 推进系统102可以包括可操作以向车辆100提供动运动的组件。取决于实施例,推进系统102可以包括引擎/发动机118、能量源119、传动装置120和车轮/轮胎121。引擎/发动机118可以是内燃机电动机蒸汽机、斯特林发动机或其它类型的引擎和/或发动机的任意组合。在一些实施例中,推进系统102可以包括多种类型的引擎和/或发动机。例如,气电混合动力车辆可以包括汽油引擎和/或电动机。其它示例也是可能的。
[0059] 能量源119可以代表可以向引擎/发动机118提供全部或部分动力的能量 来源。也就是说,引擎/发动机118可以被配置为将能量源119转换为机械能以操作传动装置
120。能量源119的示例可以包括汽油、柴油、其它基于石油的燃料、丙烷、其它基于压缩气体的燃料、乙醇太阳能电池板、电池、电容器、飞轮再生制动系统和/或其它电功率源等。
能量源119也可以为汽车100的其它系统提供能量。
[0060] 传动装置120可以包括可操作以把机械动力从引擎/发动机118传送到车轮/轮胎121的元件。这样的元件可以包括变速箱、离合器差速器驱动轴和/或(一个或多个)轴,等等。传动装置120也可以包括其他元件。驱动轴可以包括可以耦合到一个或多个车轮/轮胎121的一个或多个轴。
[0061] 车轮/轮胎121可以被布置以稳定地支撑车辆100,同时提供与车辆100在其上移动的诸如道路的表面的摩擦牵引。因此,车辆100的车轮/轮胎121可以被配置为各种形式,包括单轮车、自行车/摩托车、三轮车或者轿车/卡车四轮形式。其它车轮/轮胎几何形状也是可能的,诸如包括六个或更多个车轮的那些。车辆100的车轮/轮胎121的任何组合可以可操作为相对于其它车轮/轮胎121差速地旋转。车轮/轮胎124可以代表固定地附着到传动装置120的至少一个车轮和可与行驶表面接触的耦合到车轮的边缘的至少一个轮胎。车轮/轮胎121可以包括金属和橡胶的任意组合,或者其它材料组合。
[0062] 传感器系统104通常包括被配置为检测关于车辆100周围的环境的信息的一个或多个传感器。例如,传感器系统104可以包括全球定位系统(GPS)122、降雨传感器123、惯性测量单元(IMU)124、RADAR(无线电检测和测距)单元126、激光测距仪和/或LIDAR(激光成像检测和测距)单元128、相机130和/或麦克131。传感器系统104也可包括被配置为监视车辆100的内部系统的传感器(例如,O2监视器、燃油量表、机油温度、车轮速度传感器,等等)。包括在传感器系统104中的传感器中的一个或多个可以被配置为单独和/或共同致动,以便修改一个或多个传感器的位置和/或朝向。
[0063] 传感器系统104中的传感器可以被配置为提供由计算机系统112实时处理的数据。例如,传感器可以不断地更新输出以反映在一段时间或在一段时间范围内感测的环境,并且连续地或按要求向计算机系统112提供更新的输出,以使得计算机系统112可以响应于所感测的环境来确定车辆当前的方向或速度是否应该被修改。
[0064] GPS 122可以是被配置为估计车辆100的地理位置的任何传感器。为此, GPS 122可以包括可操作以提供关于车辆100相对于地球的位置信息的收发器。
[0065] 降雨传感器123可以被安装在车辆100的挡风玻璃的下方或者可以并入车辆100的挡风玻璃。降雨传感器也可以安装在各种其它位置,诸如在前照灯的位置或者靠近前照灯的位置等。在一个示例中,降雨传感器123可以包括一个或多个红外发光二极管(LED)和诸如光电二极管的光检测器的集合。由LED发射的光可以通过挡风玻璃反射回光电二极管。光电二极管接收的光越少,可以指示车辆100外部的雨量越多。反射的光的量、或者检测到的降雨量的一些其他指示符可以被传递到计算机系统112。
[0066] IMU 124可以包括被配置为基于惯性加速度来感测车辆100的位置和朝向变化的传感器(例如,加速度计陀螺仪)的任意组合。
[0067] RADAR单元126可以代表利用无线电信号来感测车辆100的局部环境内的对象的系统。在一些实施例中,除了感测对象,RADAR单元126还可以附加地被配置为感测对象的速度和/或前进方向。
[0068] 类似地,激光测距仪或LIDAR单元128可以是被配置为使用激光来感测车辆100所位于的环境中的对象的任何传感器。取决于实施例,激光测距仪/LIDAR单元128可以包括一个或多个激光源、激光扫描仪和一个或多个检测器,等等。激光测距仪/LIDAR单元128可以被配置为以相干(例如,使用外差检测)或非相干检测模式来操作。
[0069] 相机130可以包括被配置为捕获车辆100周围的环境的多个图像的一个或多个设备。相机130可以是静态相机或视频相机。在一些实施例中,相机130可以可机械地移动,诸如通过旋转和/或倾斜安装有相机的平台来移动。这样,车辆100的控制处理可以被实现为控制相机130的移动。
[0070] 传感器系统104还可以包括麦克风131。麦克风131可以被配置为捕获来自车辆100周围的环境的声音。在一些情况下,多个麦克风可以被布置为麦克风阵列,或可能布置为多个麦克风阵列。
[0071] 控制系统106可以被配置为控制车辆100及其组件的(一个或多个)操作。因此,控制系统106可以包括各种元件,包括转向单元132、134、制动单元136、传感器融合算法138、计算机视觉系统140、导航/路线控制系统142和障碍物回避系统144等。
[0072] 转向单元132可以代表可以可操作为调整车辆100的前进方向的机构的 任意组合。例如,转向单元132可以调整一个或多个车轮/轮胎121的(一个或多个)轴,以影响车辆100的转弯。油门134可以被配置为控制例如引擎/发动机118的运行速度,并且进而控制车辆100的速度。制动单元136可以包括被配置为使车辆100减速的机构的任意组合。例如,制动单元136可以使用摩擦来减慢车轮/轮胎121。在其他实施例中,制动单元136通过将车轮/轮胎121的动能转换为电流的再生制动过程来使车轮/轮胎121感应地减速。制动单元136也可以采取其它形式。
[0073] 传感器融合算法138可以是被配置为接受来自传感器104的数据作为输入的算法(或存储算法的计算机程序产品)。所述数据可以包括例如表示在传感器系统104的传感器处感测到的信息的数据。传感器融合算法138可以包括或者被配置为使用例如卡尔曼滤波器贝叶斯网络或者其他算法来执行。传感器融合算法138可以基于来自传感器系统104的数据来提供各种评价。取决于实施例,评价可以包括对车辆100的环境中的个体对象和/或特征的评估、对具体情形的评估和/或基于具体情形对可能影响的评估。其它评价是可能的。
[0074] 计算机视觉系统140可以是可操作以处理和分析由相机130捕捉的图像以便识别车辆100的环境中的对象和/或特征的任何系统,所述对象和/或特征可以包括交通信号、道路边界、其它车辆、行人和/或障碍物等。计算机视觉系统140可以使用对象识别算法、运动恢复结构(Structure from Motion,SFM)算法、视频追踪和其它计算机视觉技术。在一些实施例中,计算机视觉系统140可以附加地被配置为对环境进行地图绘制、跟踪对象、估计对象的速度,等等。
[0075] 导航和路线控制系统142可以是被配置为确定车辆100的驾驶路线的任何系统。例如,导航和路线控制系统142可以确定一系列速度和前进方向,以便在总体上使车辆100沿着引导到最终目的地的基于车道的路线行进的同时,使车辆100沿着基本上避开所察觉到的障碍物的路线移动,例如,所述最终目的地可以根据经由用户接口116的用户输入来设置。导航和路线控制系统142可以附加地被配置为在车辆100处于操作中时动态地更新驾驶路线。在一些实施例中,导航和路线控制系统142可以被配置为合并来自传感器融合算法138、GPS 122和一个或多个预定地图的数据,以便确定车辆100的驾驶路线。
[0076] 障碍物回避系统144可以代表被配置为识别、评估和避免或者以其它方式越过车辆100的环境中的潜在障碍物的控制系统。例如,障碍物回避系统144可以通过操作控制系统106中的一个或多个子系统以进行转向(swerving)操纵、转弯操纵、制动操纵等,来实现车辆100的导航的改变。在一些实施例中,障碍物回避系统144被配置为基于周边交通模式、道路状况等自动确定可行的(“可用的”)障碍物避免操纵。例如,障碍物回避系统144可以被配置为当其它传感器系统在车辆100将要转向进入的邻近区域中检测到车辆、建筑障碍、其他障碍物等时,不进行转向操纵。在一些实施例中,障碍物回避系统144可以自动选择既可用又提供最大化车辆乘员安全性的操纵。例如,障碍物回避系统144可以选择被预测为引起车辆100的客舱的最少加速度量的回避操纵。
[0077] 控制系统106可以附加地或替换地包括除了所示和所描述的那些以外的组件。
[0078] 车辆100还包括被配置为允许车辆100与外部传感器、其它车辆、其他计算机系统和/或诸如车辆100的乘员的用户之间的交互的外围设备108。例如,用于从乘员、外部系统等接收信息的外围设备108可以包括无线通信系统146、触摸屏148、麦克风150和/或扬声器152。
[0079] 在一些实施例中,外围设备108用于接收车辆100的用户与用户接口116交互的输入。为此,触摸屏148能够既向车辆100的用户提供信息,又将用户经由触摸屏148指示的信息传送到用户接口116。触摸屏148可以被配置为经由电容感测、电阻感测、光学感测、表面声波处理等感测来自用户的手指(或手写笔等)的触摸位置和触摸手势两者。触摸屏148可以能够感测在与触摸屏表面平行或在其平面中的方向、在垂直于触摸屏表面的方向或在这两个方向的手指移动,并且也可以能够感测施加到触摸屏表面的压力的水平。车辆
100的乘员也可以利用语音命令接口。例如,麦克风150可以被配置为接收来自车辆100的乘员的音频(例如,语音命令或其他音频输入)。类似地,扬声器152可以被配置为将音频输出给车辆100的乘员。
[0080] 在一些实施例中,外围设备108用于允许车辆100与在它的周围环境内的诸如设备、传感器、其他车辆等的外部系统、和/或提供关于车辆的周围的有用信息(诸如交通信息、天气信息等)的在物理上远离车辆100的控制器、服务器等之间的通信。例如,无线通信系统146可以直接地或经由通信网络 与一个或多个设备无线通信。无线通信系统146可以可选地使用3G蜂窝通信,诸如CDMA、EVDO、GSM/GPRS和/或4G蜂窝通信,诸如WiMAX或LTE。附加地或可替换地,无线通信系统146可以例如使用WiFi与无线局域网络(WLAN)通信。在一些实施例中,无线通信系统146可以例如使用红外链路、短距离无线链路等与设备直接通信。无线通信系统146可以包括一个或多个专用短程通信(DSRC)设备,其可以包括车辆和/或路边站之间的公共和/或私有数据通信。用于发送和接收嵌入在信号中的信息的其他无线协议,诸如各种车用通信系统,也可以被本公开的上下文内的无线通信系统146采用。
[0081] 电源110可以将电力提供给车辆100的组件,诸如外围设备108、计算机系统112、传感器系统104等中的电子器件。电源110可以包括用于存储电能和向各个供电组件释放电能的可再充电锂离子或铅酸电池。在一些实施例中,一个或多个电池组可以被配置为提供电力。在一些实施例中,电源110和能量源119可以一起实现,如在一些全电动车中那样。
[0082] 车辆100的许多或所有功能可以经由计算机系统112来控制,该计算机系统112接收来自传感器系统104、外围设备108等的输入,并且将适当的控制信号通信给推进系统102、控制系统106、外围设备108等,以基于车辆100的周围环境来实现车辆100的自主操作。计算机系统112可以包括至少一个处理器113(其可以包括至少一个微处理器),其执行存储在诸如数据存储装置114的非暂态计算机可读介质上的指令115。计算机系统112还可以代表可以用来以分布方式控制车辆100的各个组件或子系统的多个计算设备。
[0083] 在一些实施例中,数据存储装置114可以包含指令115(例如,程序逻辑),指令115可由处理器113执行以执行各种汽车功能,包括以上结合图1所描述的那些功能。数据存储装置114还可以包含附加的指令,包括用于向/从推进系统102、传感器系统104、控制系统106和外围设备108中的一个或多个发送/接收数据,与它们交互和/或控制它们的指令。
[0084] 除了指令115,数据存储114还可以存储数据,诸如道路地图、路线信息和其他信息。这样的信息可以在车辆100以自主、半自主和/或手动模式操作期间被车辆100和计算机系统112使用。
[0085] 车辆100以及相关联的计算机系统112向车辆100的用户(诸如车辆100的客舱中的乘员)提供信息和/或接收来自车辆100的用户的输入。因此,车 辆100可以包括用户接口116,用于向车辆100的用户提供信息或从其接收输入。用户接口116可以控制或使能控制可以在触摸屏148上显示的交互图像的内容和/或布局。此外,用户接口116可以包括诸如无线通信系统146、触摸屏148、麦克风150和扬声器152的一组外围设备108内的一个或多个输入/输出设备。
[0086] 计算机系统112基于从各种子系统(例如,推进系统102、传感器系统104和/或控制系统106)接收到的指示车辆和/或环境条件的输入以及来自用户接口116的指示用户偏好的输入来控制车辆100的操作。例如,计算机系统112可以利用来自控制系统106的输入来控制转向单元132,以避开由传感器系统104和障碍物回避系统144检测到的障碍物。计算机系统112可以被配置为控制车辆100及其子系统的许多方面。然而,通常,规定手动优先自动控制器驾驶操作,诸如在紧急情况下,或者仅仅响应于用户激活的优先等。
[0087] 本文所描述的车辆100的组件可以被配置为以互连的方式与它们各自系统内或外的其它组件一起工作。例如,相机130可以在车辆100在自主模式下操作的时候,捕获表示关于车辆100的环境的信息的多个图像。环境可以包括其他车辆、交通灯、交通标志、道路标记、行人等。计算机视觉系统140可以基于预先存储在数据存储装置114中的对象识别模型和/或通过其他技术,与传感器融合算法138、计算机系统112等协同地分类和/或识别环境的各个方面。
[0088] 虽然图1示出了车辆100的各种组件,即,无线通信系统146、计算机系统112、数据存储装置114和用户接口116被集成到车辆100中,但是这些组件中的一个或多个可以被安装在车辆100上或分离地与车辆100相关联。例如,数据存储装置114可以部分地或全部地与车辆100分开存在。因此,车辆100可以以可以分离地或者一起放置的设备元件的形式提供。构成车辆100的设备元件通常可以以有线和/或无线的方式通信地耦合在一起。
[0089] 图2描绘了示例车辆200,其可以包括参考图1结合车辆100所描述的所有或一些功能。虽然出于图示的目的,示例车辆200在图2中被示出为四轮轿车型汽车,但是本公开不限于此。例如,示例车辆200可以代表任何类型的车辆。
[0090] 示例车辆200包括传感器单元202、无线通信系统204、LIDAR单元206、 激光测距单元208和相机210。此外,示例车辆200可以包括结合图1的车辆100所描述的任何组件。
[0091] 传感器单元202安装在示例车辆200的顶上,并且包括被配置为检测关于示例车辆200周围的环境的信息并且输出该信息的指示的一个或多个传感器。例如,传感器单元202可以包括相机、RADAR、LIDAR、测距仪和声学传感器的任意组合。传感器单元202可以包括一个或多个可移动支架,其可操作以调节传感器单元202中的一个或多个传感器的朝向。在一个实施例中,可移动支架可以包括旋转平台,其可以扫描传感器以便从示例车辆
200周围的每个方向获得信息。在另一个实施例中,传感器单元202的可移动支架可以在特定的度和/或方位范围内以扫描方式移动。例如,传感器单元202可以被安装在汽车的顶部的顶上,然而其他安装位置是可能的。另外,传感器单元202的传感器可以分布在不同的位置,而且不必配置在单个位置。一些可能的传感器类型和安装位置包括RADAR单元
206和激光测距单元208。此外,传感器单元202的每个传感器可以被配置为独立于传感器单元202的其它传感器来移动或扫描。
[0092] 如图2中所描绘的,无线通信系统204可以位于示例车辆200的车顶。可替换地,无线通信系统204可以全部或部分地位于其他地方。无线通信系统204可以包括无线发送器和接收器,其可以被配置为与示例车辆200的外部或内部的设备通信。具体而言,无线通信系统204可以包括被配置为与其他车辆和/或例如车用通信系统或路边站中的计算设备通信的收发器。这种车用通信系统的示例包括专用短程通信(DSRC)、射频识别(RFID)和针对智能运输系统的其他建议的通信标准。
[0093] 相机210可以是光敏感的仪器,诸如静态相机、视频相机等,其被配置为捕获示例车辆200的环境的多个图像。为此,相机210可以被配置为检测可见光,并且可以附加地或者替换地被配置为检测来自频谱的其他部分的光,例如红外光或紫外光。相机210可以是二维检测器,并且可以可选地具有三维空间距离的敏感度。在一些实施例中,相机210可以包括,例如,距离检测器,其被配置为生成指示从相机210到环境中的若干点的距离的二维图像。为此,相机210可以使用一个或多个距离检测技术。
[0094] 例如,相机210可以通过使用结构光技术来提供距离信息,其中示例车辆200利用预定光图案,诸如栅格或棋盘格图案,对环境中的对象进行照射, 并且使用相机210检测来自周边环境的预定光图案的反射。基于反射的光图案中的畸变,示例车辆200可以确定到对象上的点的距离。预定光图案可以包括红外光,或其他适合这样的测量的波长的辐射
[0095] 相机210可以被安装在示例车辆200的前挡风玻璃内部。具体地,相机210可以被定位为捕获相对于示例车辆200的朝向的前向视野的图像。也可以使用相机210的其它安装位置和视角,在示例车辆200的内部或在其外部。
[0096] 相机210可以具有相关联的光学器件,其可操作以提供可调整的视场。此外,相机210可以利用可移动的支架被安装到示例车辆200,以例如经由摇动/倾斜机构改变相机
210的指向角。
[0097] 图3是根据本文描述的至少一些实施例的利用车载车辆传感器来检测包括湿的表面的天气条件的示例方法的框图。图3中所示的方法300提出方法的实施例,例如,其可以由分别参考图1和图2示出和描述的车辆100和/或车辆200使用,或者由车辆100或车辆200的组件使用。例如,本文描述的过程可以由安装到自主车辆(例如,车辆200)上的、与计算机系统112、传感器融合算法138和/或计算机视觉系统140通信的RADAR单元126、LIDAR单元128或相机130来执行。方法300可以包括一个或多个操作、功能或动作,如由一个或多个方框302-306所示。虽然这些方框以先后顺序示出,但是在某些情况下这些方框可以并行执行,和/或以不同于本文所描述的顺序的顺序执行。而且,基于期望的实现方式,各个方框可以被组合成更少的方框,被划分为附加方框,和/或被删除。
[0098] 此外,对于方法300及本文公开的其他过程和方法,流程图示出了这些实施例的一个可能实现的功能和操作。在这点上,每个方框可以表示程序代码的模片段或部分,其包括可由处理器执行以用于实现过程中的特定逻辑功能或步骤的一个或多个指令(例如,机器可读代码)。程序代码可以被存储在任意类型的计算机可读介质中,诸如例如包括盘或硬盘驱动器的存储设备。计算机可读介质可以包括非暂态计算机可读介质,诸如例如像寄存器存储器、处理器缓存和随机访问存储器(RAM)那样短时间存储数据的计算机可读介质。计算机可读介质还可包括诸如次级或永久长期存储装置之类的非暂态介质,例如像只读存储器(ROM)、光盘或磁盘、致密盘只读存储器(CD-ROM)。计算机可读介质也可以是任何其它易失性或非易失性存储系统。计算机可读介质可以被看作例如计算机可读存储介质、有形存储设备、 计算机程序产品或者其它制品。
[0099] 非暂态计算机可读介质也可以分布在多个数据存储元件之间,这些数据存储元件的位置可以彼此远离。运行所存储指令中的一些或全部的计算设备可以是车辆,诸如图2中所示的示例车辆200。可替换地,运行所存储指令中的一些或全部的计算设备可以是其他计算设备,诸如服务器。
[0100] 此外,对于本文中公开的方法300以及其它过程和方法,图3中的每个方框可以代表被连线以执行过程中的特定逻辑功能的电路
[0101] 示例方法,诸如图3的方法300,可以全部或部分地由车辆及其子系统执行。因此,示例方法可以在本文中以示例的方式被描述为由车辆实现。然而,应当理解示例方法可以全部或部分地由车辆的其它计算设备或与车辆分离的其它计算设备实现。例如,示例方法可以全部或部分地由服务器系统实现,所述服务器系统从设备,诸如与车辆相关联的那些设备,接收数据。可实现示例方法的计算设备或计算设备的组合的其它示例是可能的。
[0102] 在方框302,方法300包括接收针对车辆的环境收集的激光数据。激光数据包括基于环境中的对象的多个激光数据点,所述对象由于反射或后向散射光而被感知为物理存在。车辆或车辆的组件,诸如计算设备或处理器,可以被配置为接收所收集的激光数据。
[0103] 作为一个示例,车辆可以具有LIDAR单元,其照射车辆的周围、周围环境、前方、后方、侧方或任何靠近或有关的区域,并检测反射光。在操作中,LIDAR单元旋转并(例如,周期性地)发射激光束。然后通过合适的传感器接收由环境中的对象对发射的激光束的反射。对反射信号的接收加时间戳允许将每个反射信号(如果接收到的话)与最近发射的激光脉冲相关联,并且测量激光脉冲的发射和反射光的接收之间的时间延迟。通过根据光在中间大气中的速度进行换算,时间延迟提供了到反射特征的距离的估计。将每个反射信号的距离信息与用于各个脉冲发射的LIDAR设备的朝向相结合允许在三维空间中确定反射特征的位置。为了说明的目的,可以结合用于估计位于x-y平面中的一系列点的位置的LIDAR设备的单次扫描,在二维x-y平面中描述环境场景。然而,应该指出的是,通过在其对场景的下一次扫描时调整光束转向光学器件以便将激光束从x-y平面向上或向下引导,或者通过提供专用于对x-y平面上方和下方的平面中的点位置进行采样的附加的激光器及其相关联的波束转向光学器件,或者通过这两种方式的组合,提供了更完整 的三维采样。
[0104] 在方框304中,方法300包括由计算设备确定多个激光数据点中的与环境中的一个或多个对象相关联的激光数据点。作为一个示例,追踪系统可以被用于追踪对象,而且可以确定与追踪到的对象相关联的激光数据点。
[0105] 在其他示例中,可以生成与环境中的对象相对应的点。点云中的每个点可以通过方位角(例如,当发射与该点相对应的脉冲时LIDAR设备的朝向,其由LIDAR的旋转角度镜(rotating angled mirror)的朝向来确定)和视线(LOS)距离(例如,通过脉冲发射和反射光接收之间的时间延迟指示的距离)来标记。对于不会导致返回反射信号的脉冲,点图中的距离可以可选地被设置为LIDAR设备的最大距离灵敏度。最大距离灵敏度可以根据相关联的光学传感器在每个脉冲发射之后等待返回反射信号的最大时间延迟来确定,该最大延迟本身可以根据在给定环境照明条件、发射脉冲的强度、环境特征的预测反射率等的情况下,反射信号在特定距离处的预期信号强度来设置。在一些示例中,最大距离可以大约为60米、80米、100米或150米,但是对于LIDAR设备和相关联的光学传感器的具体配置,其它示例也是可能的。
[0106] 在一些实施例中,图1中示出的传感器融合算法138、计算机视觉系统140和/或计算机系统112可以被配置为单独解释所收集的激光数据和/或结合另外的传感器指示的信息和/或基于存储器的模式匹配点云和/或环境的基线图来解释所收集的激光数据以便将点的群组分类或识别为对应于环境中的对象。
[0107] 此外,每个空间点可以与来自一组激光器中的相应激光器和相应的时间戳相关联。即,在LIDAR包括多个激光器的实施例中,每个相应的接收到的空间点可以与根据相应的接收到的空间点检测到的特定激光器相关联。此外,每个相应的空间点可以与相应的时间戳(例如,激光被发射或接收的时间)相关联。以这种方式,接收到的空间点可以基于空间(激光器标识)和/或时间(时间戳)被组织、识别或以其他方式排序。这样的排序可以通过允许将空间点数据组织为有意义的顺序来帮助或改进对空间点数据的分析。
[0108] 在一些示例中,结合示例LIDAR设备来提供对象检测。LIDAR设备可以被配置为使用一个或多个激光器来捕获激光点云图像。激光点云包括针对从LIDAR设备发射的每个脉冲的许多点;反射信号可以指示反射对象的实际位置,而未能接收到反射信号指示沿激光器的视线方向在特定距离内不存在 有效的反射对象。取决于各种因素,包括激光脉冲率、场景刷新率、由每个LIDAR设备采样的总立体角(或在只使用一个LIDAR设备的情况下,仅场景的总立体角),可以确定每个点云中的样本点的数目。一些实施例可以提供具有多达50000个激光指示的点、80000个激光指示的点、100000个激光指示的点等等的点云。通常,每个点云中的激光指示的点的数目在作为一个方面的角分辨率和作为另一方面的刷新率之间折衷。LIDAR设备被驱动为以与自主车辆的实时导航决定相关的足够高的刷新率来提供角分辨率。因此,LIDAR设备可以被配置为以预定的时间间隔,诸如100毫秒(以实现每秒10的刷新率)、33毫秒(以实现每秒30帧的刷新率)、1毫秒、1秒等,来捕获扫描区的一个或多个激光点云。
[0109] 参考图1,车辆100的计算机系统112的数据存储装置114可以存储对象检测器软件、代码或其他程序指令。这样的对象检测器软件可以包括以上所述的包括传感器融合算法138、计算机视觉系统140和/或障碍物回避系统144的控制系统106中的一个或多个,或者是它们的一部分。对象检测器可以是软件和/或硬件的任意配置,其被配置为通过基于由LIDAR 128捕获的激光点云和/或基于传感器系统104中的一个或多个传感器来对对象进行分类和/或识别,以感知环境场景中的特征。当激光点云是经由LIDAR 128捕获的时,指示所捕获的点云的数据被通信到对象检测器,对象检测器分析数据以确定在激光点云中是否存在对象。由点云指示的对象可以是,例如,车辆、行人、路标、交通灯、交通锥标等。
[0110] 为了确定在激光点云图像中是否存在对象,对象检测器软件和/或模块可以将激光指示的点的排列与图案匹配对象、环境特征和/或对象或特征的类别相关联。对象检测器可以被预先加载(或被动态指示)以根据与车辆100周围的环境中的物理对象/特征相对应的一个或多个参数来关联排列。例如,对象检测器可以被预先加载以指示行人的典型高度、典型汽车的长度、对怀疑对象进行分类的置信阈值等的信息。
[0111] 当对象检测器识别点云中的对象时,对象检测器可以定义包围该对象的边界盒。例如,边界盒可以对应于点云指示的对象的预测的外表面。当然,边界“盒”一般可以采取定义对象的预测的外边界的多面闭合形状的形式。
[0112] 对于每个捕获的点云,感知的对象的位置及其相应的边界限定与帧编号或帧时间相关联。因此,在对场景的连续扫描中出现在大致相似位置的相似 形状的对象可以被彼此关联,以便及时追踪对象。对于出现在多个点云帧(例如,扫描区的完全扫描)中的感知的对象,对于对象出现在其上的每个帧,对象可以与限定了感知的对象的维度范围的清晰边界形状相关联。
[0113] 当车辆100行驶通过其周围的环境时和/或当对象相对于车辆移动从而经过LIDAR设备128的扫描区时,可以追踪感知的对象。由此组合两个或更多个连续捕获的点云可以允许确定检测到的对象的移动信息。例如通过观察对象(诸如与车辆100一起沿着道路移动的汽车)的加速度和/或速度,可以针对具有特征化的运动轮廓的对象来做出将来位置的预测,以便在后续扫描中预测对象的位置。在一些实施例中,在空中移动的对象被假定为沿着受重力影响的轨迹移动。
[0114] 为了帮助提供对象识别,车辆100也可以与对象识别服务器通信(例如,经由无线通信系统146)。对象识别服务器可以验证由车辆100使用对象检测器检测到的对象和/或对其分类。此外,对象识别服务器可以促进基于来自其他类似系统的积累的数据、局部条件对对象检测器用来检测所捕获的激光点云中的对象的一个或多个参数进行优化。在一个实施例中,车辆100可以将对象边界以及它们相应的对象参数通信给对象识别服务器以用于验证所感知的对象被正确识别,诸如通过对正确识别的统计似然的评估来指示。
[0115] 返回参考图3,在方框306,方法300包括基于与环境中的一个或多个对象无关联的激光数据点,由计算设备识别车辆在其上行驶的表面是湿的的指示。在一个示例中,激光数据可以与表面上水的存在有关,而且水是车辆的追踪系统追踪不到的项目。然而,所收集的激光数据点可能是由于水所引起的。例如,对于检测并定位光学反射特征的LIDAR设备而言,道路表面上的水或由车辆扬起的水类似于反射云,因为光脉冲从诸如水滴的微粒反射。因此,对于任何未追踪到的接收到的激光数据(例如,与追踪到的对象不匹配的激光数据),可以确定表面或道路可能是湿的的指示。
[0116] 此外(或者可替换地),在方框306,方法300可以包括确定与环境中的一个或多个对象无关联的激光数据点的数目超过预定阈值,然后由计算设备识别车辆在其上行驶的表面是湿的的指示。例如,如果存在少数的与对象无关联的激光数据点,则这可能是由于许多因素引起的;然而,对于一定阈值数量的激光数据点而言,更高的可能性可以是,这些激光数据点是由于发射的激光束被水反射。
[0117] 在其它示例中,方法300还可以包括确定多个激光数据点中的与在车辆所行驶的表面的预期高度下方的位置相关联的激光数据点的数量,并且进一步基于激光数据点的数量高于阈值数量来识别车辆在其上行驶的表面是湿的的指示。例如,当道路是湿的时,道路的表面可以对激光束显现为镜面,从而导致反射的激光束显现为与在道路表面的高度下方的位置相关联。从而,一些水可以作为反射激光的镜面,同时一些激光可以穿过水并被道路表面反射。接收到的反射激光束的角度可以被确定,并且如果角度高于阈值(相对于LIDAR设备),则这样的接收到的激光数据可以被表示为在地平面“下方”。当收集到这样的激光数据时,计算设备可以使用这个激光数据的标识作为表面是湿的的指示。
[0118] 在示例中,考虑到通常会在比详细地图信息中的预期道路表面略高和略低处检测到数据点,因此可以使用距离阈值,诸如高于和低于表面15-20厘米,来将与干燥道路表面相关联的数据点的云和与水坑相关联的云区分开。因此,对于接近于(如从详细地图确定的)预期道路表面的激光数据点的云,将激光数据点与在位置上高于预期道路表面的第一阈值和在位置上低于预期道路表面的第二阈值进行比较。当云包括高于第一阈值的至少一个激光数据点和低于第二阈值的至少一个激光数据点时,可以得到道路是湿的的指示。
[0119] 在一个示例中,当车辆的一个或多个激光器向前移动时,车辆可以从若干方向和/或在不同的时间收集针对相同位置(点或区域)的包括范围和强度信息的数据点。例如,每个数据点可以包括指示激光器从其接收到光的对象的反射率的强度值以及位置信息。与高反射表面,例如车道标记,相关联的强度值可以高于低反射表面,诸如柏油路、水泥路或其它道路表面。类似地,与吸收更多光的深色对象(黑色、深蓝色、棕色等)相关联的强度值可以低于可以反射更多光的浅色对象(白色、米色、色等)。在这方面,当对象是湿的时,它可以变成更深色,并且因此,水可以降低对象的强度值,而不是增加强度值。
[0120] 在一些示例中,激光点数据的强度值可以被确定标度,例如,从0到250,其中0是暗而250是亮。因此,反射性更强、更亮的表面可以与更接近250的强度值相关联,而反射性更弱、更暗的表面可以与更接近0的强度值相关联。激光扫描数据可以被接收和处理以生成地理位置坐标。这些地理位置坐标可以包括具有高度分量(z)的GPS纬度和经度坐标(x,y),或可以与其 他坐标系相关联。这种处理的结果是一组数据点。这组数据点中的每个数据点可以包括指示激光器从其接收到光的对象的反射率的强度值、以及位置信息:(x,y,z)。
[0121] 道路的激光数据点的平均强度可以与阈值比较,以进一步识别道路是否是湿的的指示。例如,如上所述,覆盖道路的湿的或结区域的水可以降低在道路上收集的激光数据的强度。因此,湿的道路所具有的激光数据的平均强度值可以可以稍低于干燥道路(诸如水泥路、柏油路、砖路等)以及出现在地图信息中的其他预期道路特征,诸如车道标记等的激光数据的强度值。如果某个百分比的所检查的激光数据点具有低于一定阈值的强度值,则可以确定道路是湿的。例如,使用如上所述的0到250的标度,如果在道路上有1000个激光数据点而且这1000个点中的至少850个点(或这些激光数据点的至少85%)具有低于阈值10的强度,则道路是暗色的。如上所述,低强度值可以指示道路是湿的的高概率。也可以使用例如基于道路的预期强度或成分的其他阈值和百分比。
[0122] 在进一步的示例中,方法300可以包括确定车辆的位置,基于车辆的位置来确定针对在干燥条件下车辆在其上行驶的表面的激光数据的预期值的分布,并且将所确定的分布与针对车辆的环境所收集的激光数据进行比较。针对在干燥条件下车辆在其上行驶的表面的激光数据的预期值的分布可以例如基于车辆的位置,从数据存储装置检索或从服务器接收。可以针对干燥条件和湿的条件二者,来生成并存储按道路分布的激光数据的强度的地图。激光数据的预期值的分布可以基于表面的成分。基于所确定的分布和针对车辆的环境所收集的激光数据之间的差高于阈值,可以识别出车辆在其上行驶的表面是湿的的第二指示。例如,如果所述差很高,则该激光数据与预期针对干燥表面看到的激光数据不匹配。因此,这样的比较可以指示表面是湿的的另一指示。
[0123] 在更进一步的示例中,方法300可以包括例如通过对象检测技术或与地图数据进行比较来确定多个激光数据点中的指示车辆的环境中的车道标记的激光数据点,并且基于激光数据点所指示的车道标记的数目低于预期量,来由计算设备识别车辆在其上行驶的表面是湿的的第二指示。例如,道路表面通常包括车道标记或其它亮的标记,并且当道路表面是湿的时,反射激光束的强度可以低于当道路表面干燥时的强度。反射激光束的降低的强度可能无 法被处理为指示路面上的车道标记或亮的标记。在典型的道路上,车道标记的数目可以从所存储的数据来确定,而当识别出比预期少的车道标记时,这可以被用作表面是湿的的第二指示。示例的所存储的数据可以包括识别车道标记的位置、高度和形状的车道标记的详细地图信息。车道标记可以包括诸如实线的或不连续的双车道线或单车道线、实线的或不连续的车道线、反射物等。给定车道可以与左右车道线或限定车道的边界的其他车道标记相关联。因此,车道可以以一条车道线的左边缘和另一条车道线的右边缘为界。
[0124] 在示例中,使用方法300,车辆可以被配置为在自主模式下操作,并且可以利用车辆在其上行驶的表面是湿的的指示来确定车辆的驾驶决定。可能期望根据各种天气条件或道路条件以不同的方式控制车辆,因此,当道路是湿的时,车辆可以根据“湿的表面”驾驶技术(例如,允许更多的制动空间、降低速度等)来操作。车辆也可能无法在某些天气条件下操作,因此,在一些示例中,基于湿的表面的指示时,车辆可以提供指令以指示请求转换到手动模式,诸如通过向驾驶员提供警报以通过禁用自主模式来开始对车辆的操作。
[0125] 在进一步的示例中,可以基于无关联的激光数据点的数目来确定道路湿的程度。在道路很湿的实例中,可以存在大量的无关联的激光数据点以及在相机数据中看到的反射。车辆的操作模式可以进一步基于道路湿的程度,例如对于潮湿道路可以采用自主模式,而对于道路被认为非常湿的实例,车辆可以转换到手动操作模式或提供转换到手动操作模式的请求。
[0126] 除了做出驾驶决定以外,或者作为对做出驾驶决定的替换,道路天气条件和/或路面条件可以触发被发送给驾驶员的警报。警报可以请求驾驶员控制车辆,或者也可以简单地向驾驶员提供关于所述条件的警报。警报可以是听觉信号、视觉信号、触觉或感觉信号和/或获取驾驶员的注意的任何其他信号。在这个示例中,在警告驾驶员后,车辆可以从驾驶员接收输入,诸如转动方向盘、施加制动、施加加速器、按压紧急关闭等。
[0127] 在一些示例中,(除了与追踪到的对象无关联的激光数据点之外)附加数据可以被考虑以提供湿的表面的进一步指示,或提供表面是湿的(例如,无关联的激光数据点是由水引起的)的更高概率或置信。
[0128] 图4是根据本文描述的至少一些实施例的利用车载车辆传感器来进一步确定包括湿的表面的天气条件的指示的示例方法的框图。图4中所示的方法 400提出了方法的实施例,例如,其可以由分别参考图1和图2示出和描述的车辆100和/或车辆200使用(或者由车辆100或车辆200的组件使用),并且可以在图3所示的方法300之外附加地执行。方法400可以代表程序代码的模块、片段或部分,该程序代码包括可由处理器执行以用于实现过程中的特定逻辑功能或步骤的一个或多个指令(例如,机器可读代码)。
[0129] 如方框402中所示,方法400可以包括确定车辆的速度是否高于阈值,如果是这样,则方法400包括在框404中识别车辆在其上行驶的表面是湿的的指示。例如,接收到的激光数据可以是由于行驶在该车辆前方或侧方的车辆所扬起的水所导致的,而且这样的水可以在车辆以至少阈值速度行驶时被扬起。也可以接收到由于汽车的尾气所导致的激光数据,这通常发生在汽车的速度低于阈值时或空转时。因此,当车辆的速度高于阈值时,无关联的激光数据可以被认为是由于从汽车扬起的水所引起的,因为汽车正在以可以导致水被扬起的速度行驶。
[0130] 其速度被确定的车辆可以是被配置为自主操作并且具有用于收集激光数据的LIDAR单元的车辆。在其它示例中,可以确定在自主车辆前方(或基本上在车辆的前方,例如直接在自主车辆的前方或在其前方的相邻车道)的车辆的速度,以便确定“扬起水”的车辆的速度。当车辆的速度(或该车辆所跟随的汽车的速度)高于阈值时,针对基本上在车辆前方的环境的区域的无关联的激光数据点可以是被该车辆所跟随的汽车扬起的水的指示。
[0131] 如果车辆的速度不高于阈值,则方法400可以前进到方框406,其中方法400包括确定激光数据是否与RADAR数据一致。例如,自主车辆可以收集车辆的环境的RADAR数据,而且RADAR数据指示在车辆环境中存在对象。针对扬起的水,RADAR将不返回数据,然而,RADAR数据将识别在自主车辆的前方的汽车。激光数据还如上所述被用于追踪对象,当由RADAR数据所指示的对象的存在与由LIDAR数据所指示的对象的存在不一致时,LIDAR数据可以被认为是不正确的。由LIDAR数据指示、但是未由RADAR数据指示的任何额外的对象可以是路上的水、被汽车扬起的水等的指示。
[0132] 在一些示例中,由LIDAR数据追踪到的、但是在RADAR数据中未看到的任何对象可以被分类为是由于天气条件引起的。如方法400所示,由于RADAR数据和LIDAR数据不一致,可以得到车辆所行驶的表面是湿的的指示。
[0133] 方法400可以前进到方框408,其中方法400包括确定激光数据是否与相机数据一致。例如,自主车辆可以包括相机,并且可以接收针对车辆的环境所收集的图像数据。在大雨中,水可以积聚在路上,并且可以在图像中可见。此外,在图像中识别雨也是有可能的。可以采用对象检测技术来处理图像,例如,通过将图像提供给对象检测服务器并且接收指示图像中的对象的响应。
[0134] 在一些示例中,可以处理图像数据以识别湿的表面,并且当由相机所指示的对象与LIDAR数据所指示的对象不一致时,也可以得到车辆所行驶的表面是湿的的指示。
[0135] 在进一步的示例中,可以处理图像数据以确定包括在车辆的环境中的对象的反射的图像数据的量。例如,在下雨时,制动灯和道路上的其它对象提供图像内的反射。可以使用许多技术来检测图像中的反射,例如通过分析特征点的运动轨迹并将反射建模为包含彼此相对移动的两个不同层的区域。基于指示车辆的环境中的一个或多个对象的反射的图像数据的量高于阈值,可以得到车辆所行驶的表面是湿的的第二指示。
[0136] 方法400可以前进到方框410,其中方法400包括确定激光数据是否与其他传感器数据一致。例如,自主车辆可以具有降雨传感器或“雨水检测器”,并且当LIDAR数据指示湿的表面而且降雨传感器指示降雨的存在时,可以得到车辆所行驶的表面是湿的的第二指示。可能无法单靠降雨传感器的输出确定表面是否是湿的,因为在停止下雨后的一段时间内表面可以仍然是湿的,或者在不下雨时表面可以由于水坑或其它水积聚而是湿的。
[0137] 在进一步的示例中,处理由各种传感器提供的数据可以包括处理在先前时间点获得的并且预期持续存在于环境中的环境数据。例如,详细的地图信息(例如,识别道路的形状和高度、交叉路口、人行横道、速度限制、交通信号、建筑物、标牌、实时交通信息或其它这样的对象和信息的非常详细的地图)可以被提供或经由数据库访问,并且可以包括描述道路的不同路段的预期亮度或激光强度数据值的数据。当激光数据与预期亮度或激光强度数据值不匹配时,可以确定湿的表面的指示。
[0138] 方法400可以前进到方框412,其中方法400包括确定激光数据是否与天气数据一致。例如,车辆的位置的天气信息可以通过网络从服务器接收,并且当天气信息指示正在下雨或最近下过雨时,可以基于天气信息得到道路 是湿的的第二指示。
[0139] 方法400可以前进到方框414,其中方法400包括再处理激光数据以尝试将所识别的对象与由追踪系统识别的对象进行比较。例如,方法400还可以包括基于对由道路上的其他汽车所确定的信息的访问,来确认表面是否是湿的的确定。
[0140] 在这些示例中,方法400可以被执行以提供车辆所行驶的表面是湿的的进一步的指示。除了图3的方法300外,还可以可选地执行方法400。例如,无关联的激光点(例如,代表鸡尾状的水)可以相对于激光检测的车辆是无关联的或者可能相对于雷达检测的车辆是无关联的,并且用于识别表面是湿的的依据可以通过交叉参考其他传感器数据、天气信息等来验证。
[0141] 图5是识别车辆在其上行驶的表面是湿的的指示的示例概念性侧视图。在图5中,车辆502行驶在表面504上,而且另一车辆506行驶在车辆502的前方。车辆502可以包括LIDAR单元508,其被配置为接收针对车辆502的前方区域(例如,如图5中的箭头所示)收集的激光数据。车辆506可以行驶经过表面504上的水坑或其他积聚的液体/水,并且可以在车辆506的尾部510和/或在车辆506的侧方512扬起水。当激光束被水反射时,水可以被LIDAR单元508检测到。但是,水可不是车辆502的追踪系统追踪到的对象,因为其它传感器(例如,RADAR)可能无法检测到水或LIDAR单元508可能不会随着时间的推移一直追踪到水。当接收到的激光数据不匹配追踪到的对象时,无关联的激光数据可以被视为水的指示以及表面504是湿的的指示。激光数据可以与预定义的或存储的可由于在移动的对象后面扬起的水而产生的鸡尾状点云进行比较。例如,鸡尾状水可以被检测为激光反射,但是并不是环境中被追踪的对象。
[0142] 因此,车辆502可以通过经由处理从车辆506的尾部收集的无关联的或随机的激光点来检测水是否被车辆的轮胎扬起,从而识别表面504是湿的的指示。在这方面,车辆502可以检测在车辆506的后轮胎后面的一个或多个随机数据点云,并且作为水移动的结果,云内的数据点的位置和数量可以不断地变化。因此,来自水的数据点的云可以不具有明确的结构,而固体对象的一部分,诸如车辆的尾端,将与限定了清晰表面的数据点相关联。
类似的数据点云也可以在其他车辆的后方发现。这样的发现可以指示正在下雨或地面是湿的。
[0143] 图6是识别车辆在其上行驶的表面是湿的的指示的另一示例概念性示图。在图6中,车辆602行驶在表面604上,并且包括收集车辆602的周围区域的数据的传感器。传感器可以包括LIDAR单元,其能够接收从环境中的区域,诸如从区域606和608,反射的激光束。区域606可以被追踪并被认为是行驶在车辆602右前方的另一车辆610的指示。区域608可以被追踪并被认为是行驶在车辆602前方的车辆612的指示。针对区域608收集的激光数据也可以是由区域608中的其他项所引起的,例如表面604上由于车辆612行驶通过水而产生的水轨迹614。水轨迹614还可以在由车辆602的传感器所收集的图像数据内被看到。车辆602还可以包括雷达(radar)单元,以确定车辆612的存在和速度的测量。雷达可能无法检测到水轨迹614。因为雷达确定车辆612存在且速度高于阈值,所以现在激光数据是某一项目(例如,水轨迹614)的指示,从而车辆602可以得出结论:在车辆602前方的表面604基本上是湿的。然而,如果车辆612的速度较低,诸如每小时几英里,那么水可能不被扬起,或可能不产生水轨迹,因此与区域608中的其他对象无关联的激光数据可以被认为是虚假数据。
[0144] 图7是识别车辆在其上行驶的表面是湿的的指示的示例概念性俯视图。在图7中,车辆702行驶在表面704上,并且包括用于收集感兴趣区域708中的数据的传感器单元706,感兴趣区域708可以被定义为车辆702前方的区域。传感器单元706可以使用图3至图4中描述的方法,识别由于车辆712扬起的水或者车辆712的水轨迹所引起的水斑710。
传感器单元706还可以通过例如激光束的反射、在相机图像中可见的反射、或在图3至图4中描述的其它传感器融合方法,确定最近没有车辆行驶经过的其他水斑,诸如水斑714。车辆702可以接收来自传感器单元706的数据,以确定车辆702在其上行驶的表面704是否是湿的,或者车辆702前方的表面704是否是湿的。
[0145] 在其它示例中,图8是根据本文描述的至少一些实施例的利用车载车辆传感器来检测包括雾的天气条件的示例方法的框图。图8中所示的方法800提出方法的实施例,例如,其可以由分别参考图1和图2示出和描述的车辆100和/或车辆200使用,或者由车辆100或车辆200的组件使用。例如,本文描述的过程可以由安装到自主车辆(例如,车辆200)上的、与计算机系统112、传感器融合算法138和/或计算机视觉系统140通信的RADAR单元126、LIDAR单元128或相机130来执行。方法800可以包括一个或多个操 作、功能或动作,如由方框802-808中的一个或多个所示。虽然这些方框以先后顺序示出,但是在某些情况下这些方框可以并行执行,和/或以不同于本文所描述的顺序的顺序执行。而且,基于期望的实现方式,各个方框可以被组合成更少的方框,被划分为附加方框,和/或被删除。
[0146] 示例方法,诸如图8的方法800,可以全部或部分地由车辆及其子系统执行。因此,示例方法可以在本文中以示例的方式被描述为由车辆实现。
[0147] 在方框802,方法800包括接收从对车辆的环境的扫描收集的激光数据。激光数据包括基于环境中的对象的多个激光数据点,所述对象由于反射或后向散射光而被感知为物理存在。车辆或车辆的组件,诸如计算设备或处理器,可以被配置为接收所收集的激光数据。例如,激光数据可以以与上面参考图3描述的类似的方式接收。
[0148] 在方框804中,方法800包括由计算设备将多个激光数据点中的激光数据点与环境中的一个或多个对象相关联。作为示例,追踪系统可以被用于追踪对象,而且可以确定与追踪到的对象相关联的激光数据点。由于环境中的反射特征而接收到的激光数据可以被认为是由于环境中物理存在的对象(例如,使激光被反射的对象)所引起的。计算设备可以被配置为存储通过激光数据所看到的这样的对象的相关联的位置,而且存储激光数据和对象之间的关联。
[0149] 在一些示例中,可以生成与环境中的对象相对应的点云。点云中的每个点可以通过方位角(例如,当发射与该点相对应的脉冲时LIDAR设备的朝向,其由LIDAR的旋转角度镜的朝向来确定)和视线(LOS)距离(例如,脉冲发射和反射光接收之间的时间延迟指示的距离)来标记。对于不会导致返回反射信号的脉冲,点图中的距离可以可选地被设置为LIDAR设备的最大距离灵敏度。最大距离灵敏度可以根据相关联的光学传感器在每个脉冲发射之后等待返回反射信号的最大时间延迟来确定,该最大时间延迟本身可以根据在给定环境照明条件、发射脉冲的强度、环境特征的预测反射率等的情况下在特定距离处的反射信号的预期信号强度来设置。在一些示例中,最大距离可以大约为60米、80米、100米或150米,但是对于LIDAR设备和相关联的光学传感器的具体配置,其它示例也是可能的。
[0150] 在一些实施例中,图1中示出的传感器融合算法138、计算机视觉系统140和/或计算机系统112可以被配置为单独解释所收集的激光数据和/或结合 另外的传感器指示的信息和/或基于存储器的模式匹配点云和/或环境的基线图来解释所收集的激光数据,以便将点的群组分类或识别为对应于环境中的对象。
[0151] 此外,每个空间点可以与来自一组激光器中的相应激光器和相应的时间戳相关联。即,在LIDAR包括多个激光器的实施例中,每个相应的接收到的空间点可以与根据相应的接收到的空间点检测到的特定激光器相关联。此外,每个相应的空间点可以与相应的时间戳(例如,激光被发射或接收的时间)相关联。以这种方式,接收到的空间点可以基于空间(激光器标识)和/或时间(时间戳)被组织、识别或以其他方式排序。这样的排序可以通过允许将空间点数据组织为有意义的顺序来帮助或改善对空间点数据的分析。
[0152] 在一些示例中,结合示例LIDAR设备来提供对象检测。LIDAR设备可以被配置为使用一个或多个激光器来捕获激光点云图像。激光点云包括针对从LIDAR设备发射的每个脉冲的许多点;反射信号可以指示反射对象的实际位置,而未能接收到反射信号指示沿激光器的视线方向在特定距离内不存在有效的反射对象。取决于各种因素,包括激光脉冲率、场景刷新率、由每个LIDAR设备采样的总立体角(或在只使用一个LIDAR设备的情况下,仅场景的总立体角),可以确定每个点云中的样本点的数目。一些实施例可以提供具有多达50000个激光指示的点、80000个激光指示的点、100000个激光指示的点等等的点云。通常,每个点云中的激光指示的点的数目在作为一个方面的角分辨率和作为另一方面的刷新率之间折衷。LIDAR设备被驱动为以与自主车辆的实时导航决定相关的足够高的刷新率来提供角分辨率。因此,LIDAR设备可以被配置为以预定的时间间隔,诸如100毫秒(以实现每秒10帧的刷新率)、33毫秒(以实现每秒30帧的刷新率)、1毫秒、1秒等,来捕获扫描区的一个或多个激光点云。
[0153] 参考图1,车辆100的计算机系统112的数据存储装置114可以存储对象检测器软件、代码或其他程序指令。这样的对象检测器软件可以包括以上所述的包括传感器融合算法138、计算机视觉系统140和/或障碍物回避系统144的控制系统106中的一个或多个,或者是它们的一部分。对象检测器可以是软件和/或硬件的任意配置,其被配置为通过基于由LIDAR 128捕获的激光点云和/或基于传感器系统104中的一个或多个传感器来对对象进行分类和/或识别,以感知环境场景中的特征。当激光点云是经由LIDAR 128捕获的时, 指示所捕获的点云的数据被通信到对象检测器,对象检测器分析数据以确定在激光点云中是否存在对象。由点云指示的对象可以是,例如,车辆、行人、路标、交通灯、交通锥标等。
[0154] 为了确定在激光点云图像中是否存在对象,对象检测器软件和/或模块可以将激光指示的点的排列与图案匹配对象、环境特征和/或对象或特征的类别相关联。对象检测器可以被预先加载(或被动态指示)以根据与车辆100周围的环境中的物理对象/特征相对应的一个或多个参数来关联排列。例如,对象检测器可以被预先加载以指示行人的典型高度、典型汽车的长度、对怀疑对象进行分类的置信阈值等的信息。
[0155] 当对象检测器识别点云中的对象时,对象检测器可以定义包围该对象的边界盒。例如,边界盒可以对应于点云指示的对象的预测的外表面。当然,边界“盒”一般可以采取定义对象的预测的外边界的多面闭合形状的形式。
[0156] 对于每个捕获的点云,感知的对象的位置及其相应的边界限定与帧编号或帧时间相关联。因此,在对场景的连续扫描中出现在大致相似位置的相似形状的对象可以被彼此关联,以便及时追踪对象。对于出现在多个点云帧(例如,扫描区的完全扫描)中的感知的对象,对于对象出现在其上的每个帧,对象可以与限定了感知的对象的维度范围的清晰边界形状相关联。
[0157] 当车辆100行驶通过其周围的环境时和/或当对象相对于车辆移动从而经过LIDAR设备128的扫描区时,可以追踪感知的对象。由此组合两个或更多个连续捕获的点云可以允许确定检测到的对象的移动信息。例如通过观察对象(诸如与车辆100一起沿着道路移动的汽车)的加速度和/或速度,可以针对具有特征化的运动轮廓的对象来做出将来位置的预测,以便在后续扫描中预测对象的位置。在一些实施例中,在空中移动的对象被假定为沿着受重力影响的轨迹移动。
[0158] 为了帮助提供对象识别,车辆100也可以与对象识别服务器通信(例如,经由无线通信系统146)。对象识别服务器可以验证由车辆100使用对象检测器检测到的对象和/或对其分类。此外,对象识别服务器可以促进基于来自其他类似系统的积累的数据、局部条件对对象检测器用来检测所捕获的激光点云中的对象的一个或多个参数进行优化。在一个实施例中,车辆100可以将对象边界以及它们相应的对象参数通信给对象识别服务器以用于验证所感知的对象被正确识别,诸如通过对正确识别的统计似然的评估来指示。
[0159] 返回参考图8,在方框806,方法800包括将与环境中的一个或多个对象无关联的激光数据点与所存储的代表由于雾所引起的图案的激光数据点进行比较。在示例中,对于被认为代表对象的激光数据,激光数据可以与环境中的对象相关联,而剩余接收的或收集的激光数据可以被认为是与环境中的对象无关联的。
[0160] 在示例中,方法800可以被执行以确定对象被预期存在但是未被激光器检测到或者未预期的对象被检测到(即,激光测量由于雾而丢失或改变)的实例。如上所述,对于接收到的反射激光数据,可以确定对象存在从而导致激光被反射。但是,在有雾的条件下,雾可以引起反射,从而导致对对象的错误确定。为了确定何时的激光数据是基于存在于环境中的真实对象而不是基于导致激光发射的反射的雾,计算设备可以被配置为将激光数据与已知代表对象的激光数据和/或已知是由于雾反射引起的激光数据进行比较。因此,可以将接收到的激光数据与已知代表对象的激光数据的图案进行比较以识别可能是由于除了对象外的其他因素引起的激光数据。
[0161] 可以存储任何数目的激光数据的图案,并参考所述图案来比较无关联的激光数据,以便将无关联的激光数据分类为表示对象的激光数据或者由于天气条件(诸如雾)引起的激光数据。
[0162] 作为在由于对象所引起的激光数据和由于其它条件(例如,雾)所引起的激光数据之间进行区分的另一示例,计算设备可以被配置为追踪由激光数据表示的对象的移动。因此,可以将所有激光数据都当作代表移动对象的激光数据来进行追踪,并且可以认为被看到以奇怪方式移动的对象或者在短时间内出现和消失的对象是由于天气条件所导致的激光数据反射引起的错误对象。
[0163] 在示例中,方法800可以包括确定与环境中的一个或多个对象无关联的激光数据点。LIDAR可以被配置为执行对环境的第一扫描,并且将多个激光数据点中的激光数据点与环境中的一个或多个对象相关联。然后,LIDAR可以被配置为执行对环境的第二扫描,并且基于由激光数据点所表示的对象的位置来确定与一个或多个对象匹配的激光数据点。然后,基于与第一扫描中的一个或多个对象缺乏匹配,可以确定第二扫描中的与环境中的一个或多个对象无关联的激光数据点。在进一步的示例中,第二扫描可以代表在第一扫描之后或在多个扫描之后对环境的扫描,以使得对象追踪已发生了一段时间, 以便于比较第二扫描数据。
[0164] 在方框808,方法800包括基于该比较,由计算设备识别车辆的环境的天气条件包括雾的指示。在一个示例中,当无关联的激光数据匹配或基本上匹配由于雾所引起的激光数据的图案时,计算设备可以识别该激光数据是由于雾引起的。
[0165] 在一个示例中,激光数据可以与空气中存在水或通常有雾的多云条件相关,并且这样的水滴或云是车辆的追踪系统追踪不到的项目。例如,对于检测并定位光学反射特征的LIDAR设备而言,空气中的水滴或空气中的云特征类似于对象云,因为光脉冲从微粒反射。LIDAR设备可能无法穿透雾,因此,当存在雾时,许多激光点可以由于雾而返回。因此,对于任何未追踪到的接收到的激光数据(例如,与追踪到的对象不匹配的激光数据),可以确定车辆的环境的天气条件包括雾的指示。
[0166] 此外(或者可替换地),在方框806,方法800可以包括确定与环境中的一个或多个对象无关联的激光数据点的数目超过预定阈值,然后由计算设备识别车辆的环境的天气条件包括雾的指示。例如,如果存在少数的与对象无关联的激光数据点,则这可能是由于许多因素(例如,诸如虚假的反射激光)引起的;然而,对于一定阈值数量的激光数据点而言,更高的概率可以是,这些激光数据点是由于发射的激光束被空气中的水滴反射而引起的。
[0167] 在另一个示例中,当车辆的一个或多个激光器向前移动时,车辆可以从若干方向和/或在不同的时间收集针对相同位置(点或区域)的包括范围和强度信息的数据点。例如,每个数据点可以包括指示激光器从其接收到光的对象的反射率的强度值以及位置信息。与高反射表面相关联的强度值可以高于低反射表面。类似地,与吸收更多光的深色对象(黑色、深蓝色、棕色等)相关联的强度值可以低于可以反射更多光的浅色对象(白色、米色、银色等)。在这方面,云雾可以表示暗环境,并且因此,雾可以降低感知到的对象的强度值,而不是增加强度值。
[0168] 在一些示例中,激光数据点的强度值可以被确定标度,例如,从0到250,其中0是暗而250是亮。因此,反射性更强、更亮的表面可以与更接近250的强度值相关联,而反射性更弱、更暗的表面可以与更接近0的强度值相关联。激光扫描数据可以被接收和处理以生成地理位置坐标。这些地理位置坐标可以包括具有高度分量(z)的GPS纬度和经度坐标(x,y),或可以与其 他坐标系相关联。这种处理的结果是一组数据点。这组数据点中的每个数据点可以包括指示激光器从其接收到光的对象的反射率的强度值、以及位置信息:(x,y,z)。
[0169] 环境的激光数据点的平均强度可以与阈值比较,以进一步识别雾的指示。例如,如上所述,水滴可以降低收集的激光数据的强度。因此,有雾的环境具有的激光数据的平均强度值可以稍低于晴朗环境的激光数据的平均强度值。如果某个百分比的所检查的激光数据点具有低于一定阈值的强度值,则可以确定天气条件包括雾。例如,使用如上所述的0到250的标度,如果在道路上有1000个激光数据点而且这1000个点中的至少850个点(或这些激光数据点的至少85%)具有低于阈值10的强度,则环境是暗的。如上所述,低强度值可以指示雾存在的高概率。例如,也可以使用其他阈值和百分比。例如,代表晴朗环境的激光数据可以被存储和访问以用于比较。
[0170] 在进一步的示例中,方法800可以包括确定车辆的位置,确定车辆的位置的环境的激光数据的预期值的分布,并且将所确定的分布与针对车辆的环境所收集的激光数据进行比较。用于晴朗条件的位置的激光数据的预期值的分布可以例如基于车辆的位置从数据存储装置检索或从服务器接收。可以针对有雾条件和晴朗条件二者,来生成和存储按位置的激光数据的强度的地图。基于所确定的分布和针对车辆的环境所收集的激光数据之间的差高于阈值,可以识别天气条件包括雾的第二指示。例如,如果所述差很高,则该激光数据与预期在晴朗天气看到的激光数据不匹配。因此,这样的比较可以指示雾存在的另一指示。
[0171] 在更进一步的示例中,方法800还可以包括确定与环境中的一个或多个对象无关联的激光数据点的形状的形式。雾可以具有独特的形状,而且可以创建和存储由于一般的雾而产生的点云的形状和半径,并且随后将其与接收到的激光数据进行比较。当激光数据映射到存储的雾的形状时,可以得到雾的进一步指示。
[0172] 在示例中,使用方法800,车辆可以被配置为在自主模式下操作,并且可以利用车辆在其上行驶的表面是湿的的指示来确定车辆的驾驶决定。可能期望根据各种天气条件或道路条件以不同的方式控制车辆,因此,当雾存在时,车辆可以根据“雾”驾驶技术(例如,允许更多的制动空间、降低速度等)来操作。车辆也可能无法在某些天气条件下操作,因此,在一些示例中, 基于雾的指示,车辆可以提供指令以指示请求转换到手动模式,诸如通过向驾驶员提供警报以通过禁用自主模式来开始对车辆的操作。
[0173] 除了做出驾驶决定以外,或者作为对做出驾驶决定的替换,道路天气条件和/或路面条件可以触发被发送给驾驶员的警报。警报可以请求驾驶员控制车辆,或者也可以简单地向驾驶员提供关于所述条件的警报。警报可以是听觉信号、视觉信号、触觉或感觉信号和/或获取驾驶员的注意的任何其他信号。在这个示例中,在警告驾驶员后,车辆可以从驾驶员接收输入,诸如转动方向盘、施加制动、施加加速器、按压紧急关闭等。
[0174] 在一些示例中,(除了与追踪到的对象无关联的激光数据点之外的)附加数据可以被考虑以确定车辆所驻留的环境的天气条件包括雾,或者提供雾存在的更高概率或置信(例如,无关联的激光数据点是由空气中的水微粒而非追踪到的对象引起的)。
[0175] 图9是根据本文描述的至少一些实施例的利用车载车辆传感器来进一步确定包括雾的天气条件的指示的示例方法的框图。图9中所示的方法900提出的方法的实施例例如可以由分别参考图1和图2示出和描述的车辆100和/或车辆200使用(或者由车辆100或车辆200的组件使用),并且除了执行图8所示的方法800之外还可以执行图9中所示的方法900。方法900可以代表程序代码的模块、片段或部分,其包括可由处理器执行以用于实现过程中的特定逻辑功能或步骤的一个或多个指令(例如,机器可读代码)。
[0176] 如在方框902中所示,方法900可以包括确定激光数据是否与RADAR数据一致。例如,自主车辆可以收集车辆的环境的RADAR数据,而且RADAR数据指示在车辆环境中存在对象。然而,针对空气中存在的水微粒或者多云成分,雷达一般将不返回数据,RADAR数据可以通过云识别对象。激光数据还如上所述被用于追踪对象,并且当由RADAR数据所指示的对象的存在与由LIDAR数据所指示的对象的存在不一致时,LIDAR数据可以被认为是不正确的。由LIDAR数据指示、但是未由RADAR数据指示的任何附加对象可以是水微粒或由于雾引起的其他返回的激光数据的指示。在这样的示例中,当根据LIDAR数据看到在一定距离的对象并且在某一阈值时段检测到所述对象,但是根据RADAR未看到匹配的对象时,可以得到道路有雾的指示。
[0177] 在一些示例中,由LIDAR数据追踪到的、但是未在RADAR数据中看到的任何对象可以被分类为是由于天气条件引起的。如方法900所示,基于 RADAR数据和LIDAR数据不一致,在方框904,方法900包括确定激光数据的错误返回。在方框906,可以如上所述确定错误返回的数目是否高于阈值。例如,对于少量的错误返回,诸如虚假的反射激光数据或错误的反射激光数据,不采取进一步的动作或可以重新处理激光数据(如方框914所示)。然而,当错误返回的数目高于阈值时,方法900包括识别车辆的环境的天气条件包括雾的指示,如框908所示。
[0178] 在进一步的示例中,与RADAR指示的对象无关联的、且形成围绕由RADAR指示的对象的圆形形状的激光数据点可以被确定为是由于雾引起的。在一些示例中,雾的浓度也可以被估计。例如,环境中的与激光数据点无关联的对象(例如,雾)和由RADAR数据指示的(而且也可能与激光数据点相关联的)环境中的给定对象之间的距离可以被确定,并且可以基于该距离估计雾的浓度。使用两个传感器(LIDAR和RADAR),可以在一定范围内检测对象的存在,并且检测到雾的位置到对象所位于的位置之间的距离可以提供雾的能见度或浓度的测量。浓度可以被表述为能见度的距离,诸如例如小于5公里的能见度,而且该距离可以是检测到雾的位置和对象所位于的位置之间的距离所确定的。在更进一步的示例中,雾的浓度的确定可以基于无关联的激光数据点的数目。在重雾或浓雾存在的实例中,可以存在大量的无关联的激光数据点。
[0179] 方法900可以前进到方框910,其中方法900包括确定激光数据是否与相机数据一致。例如,自主车辆可以包括相机,并且可以接收针对车辆的环境所收集的图像数据。雾可以在图像中可见,因此,可以使用对象检测技术来处理图像,例如,通过将图像提供给对象检测服务器并且接收指示图像中的对象的响应来处理图像。
[0180] 图10A是识别环境的天气条件包括雾的指示的示例概念性示图。在图10A中,车辆1002在表面上行驶,并且包括收集车辆1002周围区域的数据的传感器。传感器可以包括LIDAR单元,其可以接收来自环境中的区域的反射激光束,并且可以包括相机,其可以被配置为收集环境的图像。另一车辆1004可以行驶在车辆1002的前方。相机可以捕获区域1006的图像。
[0181] 图10B是由图10A中的车辆1002捕获的图像的示例概念性示图。该图像示出了车辆的尾部的一部分被雾覆盖或遮蔽。该图像可以被处理以确定图像数据中颜色基本是灰色的像素的数目。基于颜色基本是灰色的像素的百分 比,可以得到有雾天气条件的第二指示。在图10B中,图像的大约40-45%被雾遮蔽,因此,阈值可以得到满足。也可以使用更低的百分比。然而,可以使用约40%或更高的百分比,以获得包括雾的图像的更高概率。
[0182] 在一些示例中,图像数据可以被处理以识别图像中的对象,并且当由相机图像所指示的对象与由LIDAR数据所指示的对象不一致时,也可以得到雾存在的指示。例如,图10B中的图像可以指示在覆盖坐标x1-xn的区域中存在的对象,而激光数据可以仅指示在覆盖坐标x2-xn的区域中存在的对象。因此,相机数据与激光数据不一致,并且这样的不一致可以被用作雾存在的指示。
[0183] 返回参考图9,基于相机数据和激光数据的不一致,可以得到车辆的环境包括雾的指示,如方框908所示。
[0184] 方法900可以前进到方框912,其中方法900包括确定激光数据是否与天气数据一致。例如,可以经由网络从服务器接收针对车辆的位置的天气信息,并且当天气信息指示可能有雾或者有雾条件时,可以得到雾存在的第二指示。替代地或附加地,可以从车载车辆传感器,诸如降雨传感器或“雨水检测器”接收天气数据,并且当LIDAR数据指示错误返回而降雨传感器指示降雨存在时,可以得到雾存在的第二指示。可能无法单靠降雨传感器的输出确定大气中是否包含足以导致雾的水分量,因此,传感器输出可以被用作辅助度量。
[0185] 在进一步的示例中,附加的天气数据,例如温度或露点,可以从车载车辆传感器确定或者通过与服务器通信确定,而且可以基于温度或露点来得到车辆的环境的天气条件包括雾的第二指示。例如,当温度和露点之间的差大约小于2.5摄氏度或4华氏度时,雾可以形成。雾通常发生在接近100%的相对湿度下,但是,雾可以在较低的湿度下形成,而且雾有时可以不在100%的相对湿度下形成。100%的相对湿度读数意味着空气不能再容纳额外的水分;如果额外的水分被加入,空气将变得过饱和。雾可以突然形成,并且同样可以迅速消散,这取决于温度在露点的哪一侧。
[0186] 在示例中,方法900可以被执行以提供车辆的环境包括雾的进一步指示。除了图8的方法800外,还可以可选地执行方法900。例如,无关联的激光点(例如,由于水滴、空气中的水分、或通常情况下的雾所生成的无关联的激光点)可以相对于激光检测的车辆是无关联的或者可能相对于雷达检测的车辆是无关联的,并且用于识别雾的依据可以通过交叉参考其他传感器数据、 天气信息等来验证。图9中描述的功能的任何组合可以与图3组合以提供雾存在的提高的置信水平。
[0187] 更进一步地,除了上述的传感器数据,来自车辆上的其他传感器的输入也可以被用于对天气条件做出额外确定。例如,这些传感器可以包括胎压传感器、引擎温度传感器、制动器热传感器、制动板状态传感器、轮胎胎面传感器、燃料传感器、油水平和质量传感器、空气质量传感器(用于检测温度、湿度或空气中的微粒)等。
[0188] 此外,车辆上的许多传感器提供被实时处理的数据,也就是说,传感器可以不断地更新输出以连续地或按要求反映在一定时间或在一定时间范围内感测的环境。
[0189] 图11A至图11B包括识别车辆的环境包括雾的指示的示例概念性侧视图。在图11A中,车辆1102在表面上行驶,而且另一车辆1104在车辆1102的前方行驶。车辆1102可以包括LIDAR单元1106,其被配置为接收针对车辆1102的前方区域(例如,如图11A中的箭头所示)收集的激光数据,而且激光数据可以指示车辆1104位于距车辆1102的距离为d1处。车辆1104可以行驶通过雾,如图11B所示。当激光束被水反射时,雾中的水可以被LIDAR单元1106检测到,并且由于雾,激光数据现在可以指示车辆1104与车辆1102相距距离d2。但是,水可不是车辆1102的追踪系统追踪到的对象,因为其它传感器(例如,雷达)可能无法检测到水或LIDAR单元1108可能不会随着时间的推移一直追踪到水。当接收到的激光数据不匹配追踪到的对象时,无关联的激光数据可以被视为空气中的水的指示,以及雾存在的指示。
[0190] 激光数据可以与预定义的或存储的可由雾产生的形状点云进行比较。例如,大致在RADAR数据所指示的追踪到的对象周围并且(当与存储的点云进行比较时)代表具有雾的半径的基本上呈圆形形状的对象的激光数据点,可以通过与存储的点云进行比较来处理以进一步对雾进行验证。对于与雷达数据指示的环境中的对象无关联且代表大致在追踪到的对象周围的对象的所有激光数据点,这样的激光数据点可以指示雾。在这方面,车辆1102可以检测在车辆1104尾部的一个或多个随机数据点的云,并且作为空气中的水移动的结果,云中的数据点的位置和数目可以不断变化。因此,来自雾的数据点的云可以不具有明确的结构,而固体对象的一部分,诸如车辆的尾端,将与限定了清晰表面的数据点相关联。在其他车辆的后方也可以发现类似的数据 点云。这样的发现可以指示雾存在。
[0191] 在其它示例中,图12是根据本文描述的至少一些实施例的利用车载车辆传感器来检测包括雾的天气条件的示例方法的框图。图12中所示的方法1200提出方法的实施例,例如,其可以由分别参考图1和图2示出和描述的车辆100和/或车辆200使用,或者由车辆100或车辆200的组件使用。例如,本文描述的过程可以由安装到自主车辆(例如,车辆200)上的、与计算机系统112、传感器融合算法138和/或计算机视觉系统140通信的RADAR单元126、LIDAR单元128或相机130来执行。方法1200可以包括一个或多个操作、功能或动作,如方框1202-1206中的一个或多个所示。虽然这些方框以先后顺序示出,但是在某些情况下这些方框可以并行执行,和/或以不同于本文所描述的顺序的顺序执行。而且,基于期望的实现方式,各个方框可以被组合成更少的方框、被划分为附加的方框和/或被删除。
[0192] 示例方法,诸如图12的方法1200,可以全部或部分地由车辆及其子系统执行。因此,示例方法可以在本文中以示例的方式被描述为由车辆实现。
[0193] 在方框1202,方法1200包括接收针对车辆的环境收集的激光数据。激光数据包括基于环境中的对象的多个激光数据点,所述对象由于反射或后向散射光而被感知为物理存在。车辆或车辆的组件,诸如计算设备或处理器,可以被配置为接收所收集的激光数据。
[0194] 在方框1204,方法1200包括由计算设备将多个激光数据点中的激光数据点与环境中的一个或多个对象相关联。作为示例,追踪系统可以被用于追踪对象,而且可以确定与追踪到的对象相关联的激光数据点。由于环境中的反射特征而接收到的激光数据可以被认为是由于环境中物理存在的对象(例如,使激光被反射的对象)所引起的。计算设备可以被配置为存储通过激光数据所看到的这样的对象的相关联的位置,而且存储激光数据和对象之间的关联。
[0195] 在其他示例中,可以生成与环境中的对象相对应的点云。点云中的每个点可以通过方位角(例如,当发射与该点相对应的脉冲时LIDAR设备的朝向,其由LIDAR的旋转角度镜的朝向来确定)和视线(LOS)距离(例如,脉冲发射和反射光接收之间的时间延迟指示的距离)来标记。对于不会导致返回反射信号的脉冲,点图中的距离可以可选地被设置为LIDAR设备的最大距离灵敏度。最大距离灵敏度可以根据相关联的光学传感器在每个脉冲发射之后 等待返回反射信号的最大时间延迟来确定,该最大时间延迟本身可以根据在给定环境照明条件、发射脉冲的强度、环境特征的预测反射率等的情况下在特定距离处的反射信号的预期信号强度来设置。在一些示例中,最大距离可以大约为60米、80米、100米或150米,但是对于LIDAR设备和相关联的光学传感器的具体配置,其它示例也是可能的。
[0196] 在一些实施例中,图1中示出的传感器融合算法138、计算机视觉系统140和/或计算机系统112可以被配置为单独解释所收集的激光数据和/或结合另外的传感器指示的信息和/或基于存储器的模式匹配点云和/或环境的基线图来解释所收集的激光数据,以便将点的群组分类或识别为对应于环境中的对象。
[0197] 此外,每个空间点可以与来自一组激光器中的相应激光器和相应的时间戳相关联。即,在LIDAR包括多个激光器的实施例中,每个相应的接收到的空间点可以与根据相应的接收到的空间点检测到的特定激光器相关联。此外,每个相应的空间点可以与相应的时间戳(例如,激光被发射或接收的时间)相关联。以这种方式,接收到的空间点可以基于空间(激光器标识)和/或时间(时间戳)被组织、识别或以其他方式排序。这样的排序可以通过允许将空间点数据组织为有意义的顺序来帮助或改善对空间点数据的分析。
[0198] 在一些示例中,结合示例LIDAR设备来提供对象检测。LIDAR设备可以被配置为使用一个或多个激光器来捕获激光点云图像。激光点云包括针对从LIDAR设备发射的每个脉冲的许多点;反射信号可以指示反射对象的实际位置,而未能接收到反射信号指示沿激光器的视线方向在特定距离内不存在有效的反射对象。取决于各种因素,包括激光脉冲率、场景刷新率、由每个LIDAR设备采样的总立体角(或在只使用一个LIDAR设备的情况下,仅场景的总立体角),可以确定每个点云中的样本点的数目。一些实施例可以提供具有多达50000个激光指示的点、80000个激光指示的点、100000个激光指示的点等等的点云。通常,每个点云中的激光指示的点的数目在作为一个方面的角分辨率和作为另一方面的刷新率之间折衷。LIDAR设备被驱动为以与自主车辆的实时导航决定相关的足够高的刷新率来提供角分辨率。因此,LIDAR设备可以被配置为以预定的时间间隔,诸如100毫秒(以实现每秒10帧的刷新率)、33毫秒(以实现每秒30帧的刷新率)、1毫秒、1秒等,来捕获扫描区的一个或多个激光点云。
[0199] 参考图1,车辆100的计算机系统112的数据存储装置114可以存储对象检测器软件、代码或其他程序指令。这样的对象检测器软件可以包括以上所述的包括传感器融合算法138、计算机视觉系统140和/或障碍物回避系统144的控制系统106中的一个或多个,或者是它们的一部分。对象检测器可以是软件和/或硬件的任意配置,其被配置为通过基于由LIDAR 128捕获的激光点云和/或基于传感器系统104中的一个或多个传感器来对对象进行分类和/或识别,以感知环境场景中的特征。当激光点云是经由LIDAR 128捕获的时,指示所捕获的点云的数据被通信到对象检测器,对象检测器分析数据以确定在激光点云中是否存在对象。由点云指示的对象可以是,例如,车辆、行人、路标、交通灯、交通锥标等。
[0200] 为了确定在激光点云图像中是否存在对象,对象检测器软件和/或模块可以将激光指示的点的排列与图案匹配对象、环境特征和/或对象或特征的类别相关联。对象检测器可以被预先加载(或被动态指示)以根据与车辆100周围的环境中的物理对象/特征相对应的一个或多个参数来关联排列。例如,对象检测器可以被预先加载以指示行人的典型高度、典型汽车的长度、对怀疑对象进行分类的置信阈值等的信息。
[0201] 当对象检测器识别点云中的对象时,对象检测器可以定义包围该对象的边界盒。例如,边界盒可以对应于点云指示的对象的预测的外表面。当然,边界“盒”一般可以采取定义对象的预测的外边界的多面闭合形状的形式。
[0202] 对于每个捕获的点云,感知的对象的位置及其相应的边界限定与帧编号或帧时间相关联。因此,在对场景的连续扫描中出现在大致相似位置的相似形状的对象可以被彼此关联,以便及时追踪对象。对于出现在多个点云帧(例如,扫描区的完全扫描)中的感知的对象,对于对象出现在其上的每个帧,对象可以与限定了感知的对象的维度范围的清晰边界形状相关联。
[0203] 当车辆100行驶通过其周围的环境时和/或当对象相对于车辆移动从而经过LIDAR设备128的扫描区时,可以追踪感知的对象。由此组合两个或更多个连续捕获的点云可以允许确定检测到的对象的移动信息。例如通过观察对象(诸如与车辆100一起沿着道路移动的汽车)的加速度和/或速度,可以针对具有特征化的运动轮廓的对象来做出将来位置的预测,以便在后续扫描中预测对象的位置。在一些实施例中,在空中移动的对象被假定为沿着受重力影响的轨迹移动。
[0204] 为了帮助提供对象识别,车辆100也可以与对象识别服务器通信(例如,经由无线通信系统146)。对象识别服务器可以验证由车辆100使用对象检测器检测到的对象和/或对其分类。此外,对象识别服务器可以促进基于来自其他类似系统的积累的数据、局部条件对对象检测器用来检测所捕获的激光点云中的对象的一个或多个参数进行优化。在一个实施例中,车辆100可以将对象边界以及它们相应的对象参数通信给对象识别服务器以用于验证所感知的对象被正确识别,诸如通过对正确识别的统计似然的评估来指示。
[0205] 返回参考图12,在方框1206,方法1200包括将多个激光数据点中的与环境中的一个或多个对象无关联的给定激光数据点确定为代表在相对于车辆的给定位置处的未追踪到的对象。
[0206] 在示例中,对于被认为代表对象的激光数据,激光数据可以与环境中的对象相关联,而剩余的接收的或收集的激光数据可以被认为是与环境中的对象无关联的,因此代表未追踪到的对象。
[0207] 在示例中,方法1200可以被执行以确定对象被预期存在但是未被激光器检测到或者未预期的对象被检测到(即,激光测量由于阳光而丢失或改变)的实例。如上所述,对于接收到的反射激光数据,可以确定对象存在从而导致激光被反射。但是,在晴朗的条件下,阳光可以引起反射,从而导致对对象的错误确定。为了确定何时激光数据是基于存在于环境中的真实对象而不是基于导致反射或生成错误激光发射的阳光,计算设备可以被配置为将激光数据与已知代表对象的激光数据和/或已知由于阳光反射引起的激光数据进行比较。因此,可以将接收到的激光数据与已知代表对象的激光数据的图案进行比较以识别可能是由于除了对象外的其他因素引起的激光数据。
[0208] 可以存储任何数目的激光数据的图案,并参考所述图案来比较无关联的激光数据,以便将无关联的激光数据分类为表示对象的激光数据或者由于天气条件引起的激光数据。
[0209] 作为在由于对象所引起的激光数据和由于其它天气条件所引起的激光数据之间进行区分的另一示例,计算设备可以被配置为追踪由激光数据表示的对象的移动。因此,可以将所有激光数据都当作代表移动对象来进行追踪,并且可以认为被看到以奇怪方式移动的对象或者在短时间内出现和消失的对象是由于天气条件所导致的激光数据反射引起的错误对象。
[0210] 在示例中,方法1200可以包括确定与环境中的一个或多个对象无关联、 从而表示未跟踪到的对象的激光数据点。LIDAR可以被配置为执行对环境的第一扫描,并且将多个激光数据点中的激光数据点与环境中的一个或多个对象相关联。然后,LIDAR可以被配置为执行对环境的第二扫描,并且基于由激光数据点所表示的对象的位置来确定与一个或多个对象匹配的激光数据点。然后,基于与第一扫描中的一个或多个对象缺乏匹配,可以确定第二扫描中的与环境中的一个或多个对象无关联的激光数据点。在进一步的示例中,第二扫描可以代表在第一扫描之后或在多个扫描之后对环境的扫描,以使得对象追踪已发生了一段时间,以便于比较第二扫描数据。
[0211] 在方框1208,方法1200包括当车辆移动时,确定未追踪到的对象保持在相对于车辆的基本相同的相对位置。在一个示例中,可以随时间确定未追踪到的对象的坐标位置,并且可以确定到车辆的距离以及相对于车辆的角度。当车辆移动时,停留在距车辆相同距离处的对象将被认为也在移动。另外,当车辆移动时,相对于车辆保持在相同角度的对象也将被认为也在移动。然而,当对象的角度高于45度或更大时,对象可以被认为是由于阳光反射所引起的。在其它示例中,被认为基本上与车辆相同地移动的对象可以被确定为是由于阳光所引起的,其在晴朗天气条件下保持基本上恒定。
[0212] 在方框1210,方法1200包括由计算设备识别车辆的环境的天气条件为晴朗的指示。例如,LIDAR设备使用激光来照射目标,然后分析反射,而且反射目标所反射的阳光可使LIDAR设备饱和或产生无效的或不太准确的读数。对于检测并定位光学反射特征的LIDAR设备而言,可以生成由于阳光直接照射所引起的激光伪影。阳光可以与激光波长重叠,而且LIDAR设备可以接收阳光并且将阳光解释为创建伪影的返回的激光。因此,对于任何未追踪到的接收到的激光数据(例如,与追踪到的对象不匹配的激光数据),可以确定车辆的环境的天气条件为晴朗的指示。
[0213] 此外(或者可替换地),在方框1206,方法1200可以包括确定与环境中的一个或多个对象无关联的激光数据点的数目超过预定阈值,然后由计算设备识别车辆的环境的天气条件为晴朗的指示。例如,如果存在少数的与对象无关联的激光数据点,则这可以是由于许多因素(例如,诸如虚假的反射激光)引起的;然而,对于一定阈值数量的激光数据点而言,更高的概率可以是,这些激光数据点是由于接收到的阳光而引起的。
[0214] 在示例中,方法1200可以被执行以确定对象被预期存在但是未被激光器 检测到或者未预期的附加对象被激光器检测到(即,激光测量由于阳光而丢失或改变)的实例。在示例中,当车辆的一个或多个激光器向前移动时,车辆可以从若干方向和/或在不同的时间收集针对相同位置(点或区域)的包括范围和强度信息的数据点。例如,每个数据点可以包括指示激光器从其接收到光的对象的反射率的强度值以及位置信息。与高反射表面相关联的强度值可以高于较低反射表面。类似地,与吸收更多光的深色对象(黑色、深蓝色、棕色等)相关联的强度值可以低于可以反射更多光的较浅色对象(白色、米色、银色等)。在这方面,阳光可以表示较浅色的环境,并且因此,可以增加感知到的对象的强度值。
[0215] 在一些示例中,激光数据点的强度值可以被确定标度,例如,从0到250,其中0是暗而250是亮。因此,反射性更强、更亮的表面可以与更接近250的强度值相关联,而反射性更弱、更暗的表面可以与更接近0的强度值相关联。激光扫描数据可以被接收和处理以生成地理位置坐标。这些地理位置坐标可以包括具有高度分量(z)的GPS纬度和经度坐标(x,y),或可以与其他坐标系相关联。这种处理的结果是一组数据点。这组数据点中的每个数据点可以包括指示激光器从其接收到光的对象的反射率的强度值、以及位置信息:(x,y,z)。
[0216] 环境的激光数据点的平均强度可以与阈值比较,以进一步识别晴朗条件的指示。例如,如上所述,有雾的环境具有的激光数据的平均强度值可以稍低于晴朗环境的激光数据的平均强度值。如果某个百分比的所检查的激光数据点具有高于一定阈值的强度值,则可以确定天气条件为晴朗。例如,使用如上所述的0到250的标度,如果在道路上有1000个激光数据点而且这1000个点中的至少850个点(或这些激光数据点的至少85%)具有高于阈值200的强度,则可认为环境是亮的。如上所述,较高的强度值可以指示晴朗的高概率。例如,也可以使用其他阈值和百分比。例如,代表晴朗环境或暗环境的激光数据可以被存储和访问以用于比较。
[0217] 在进一步的示例中,方法1200可以包括确定车辆的位置,确定车辆的位置的环境的激光数据的预期值的分布,并且将所确定的分布与针对车辆的环境所收集的激光数据进行比较。用于晴朗条件的位置的激光数据的预期值的分布可以例如基于车辆的位置从数据存储装置检索或从服务器接收。可以许多不同的天气条件来生成和存储按位置的激光数据的强度的地图。基于所确 定的分布和针对车辆的环境所收集的激光数据之间的比较高于阈值,可以识别天气条件为晴朗的第二指示。例如,如果所述差很高,则该激光数据与预期看到的激光数据不匹配。
[0218] 在示例中,使用方法1200,车辆可以被配置为在自主模式下操作,并且可以利用车辆的环境的指示来确定车辆的驾驶决定。可能期望根据各种天气条件或道路条件以不同的方式控制车辆,因此,当天气晴朗时,车辆可以根据“晴朗”驾驶技术(例如,允许更多的制动空间、降低速度等)来操作。车辆也可能无法在特定天气条件下操作,或者驾驶员可以在不同的天气条件下不同地操作,因此,在一些示例中,基于晴朗的指示,车辆可以提供指令以指示请求转换到手动模式,诸如通过向驾驶员提供警报以通过禁用自主模式来开始对车辆的操作。
[0219] 除了做出驾驶决定以外,或者作为对做出驾驶决定的替换,天气条件还可以触发被发送给驾驶员的警报。警报可以请求驾驶员控制车辆,或者也可以简单地向驾驶员提供关于所述条件的警报。警报可以是听觉信号、视觉信号、触觉或感觉信号和/或获取驾驶员的注意的任何其他信号。在这个示例中,在警告驾驶员后,车辆可以从驾驶员接收输入,诸如转动方向盘、施加制动、施加加速器、按压紧急关闭等。
[0220] 除了做出驾驶决定以外,或者作为对做出驾驶决定的替换,天气条件还可以导致改变车辆的传感器的设置。例如,相机的曝光设置可以基于车辆的环境的天气条件为晴朗的指示而被更改,或者LIDAR单元的设置可以被更改以降低曝光时间。也可以基于该识别来采取其他动作,诸如部署遮护板或遮阳板。
[0221] 在其它示例中,使用方法1200,车辆可以被配置为在自主模式下操作,并且方法1200的功能可以有助于确定环境中被错误识别的对象,被错误识别的对象本身可以触发车辆的环境的天气条件为晴朗的指示。
[0222] 图13是根据本文描述的至少一些实施例的用于确定错误地识别的环境中的对象的示例方法的框图。图13所示方法1300提出了方法的实施例,例如,其可以由分别参考图1和图2示出和描述的车辆100和/或车辆200使用(或者由车辆100或车辆200的组件使用),并且可以在图12所示的方法1200之外附加地执行。方法1300可以代表程序代码的模块、片段或部分,其包括可由处理器执行以用于实现过程中的特定逻辑功能或步骤的一个或多个指令 (例如,机器可读代码)。
[0223] 在方框1302,方法1300包括接收针对车辆的环境收集的激光数据,其可以类似于在图12的方法1200中描述的功能。
[0224] 在方框1304,方法1300包括由计算设备确定多个激光数据点中的代表当车辆移动时保持在相对于车辆的基本相同的给定位置处的对象的激光数据点。例如,可以随时间接收激光数据,而且计算设备可以接收激光数据的坐标位置,并且比较坐标位置以确定诸如当车辆移动时由激光数据代表的对象是否相对车辆保持在相同的相对位置的信息。在一般情况下,例如,这种情况可以在激光数据点代表自主车辆正在跟随的汽车或其它对象,并且汽车和自主车辆中的每一个保持相同速度的时候发生。然而,在其它示例中,这可以在激光数据点代表太阳光斑或者是由于基于阳光的反射所引起的时候发生。
[0225] 在方框1306,方法1300包括确定激光数据点随着时间持续不变。方法1300可以包括确定与环境中的一个或多个对象无关联的激光数据点是否随着时间持续不变。对于与环境中的相对于车辆的位置随着时间改变的对象(诸如自主车辆前方的汽车)相关联激光数据点,所述激光数据点可以被认为是有效的。
[0226] 在一些示例中,对于随着时间持续不变并且当汽车移动时保持在相对于汽车基本上相同的位置处的激光数据点,在方框1308,方法1300可以包括由计算设备识别给定的激光数据点代表环境中的错误对象。
[0227] 在一些示例中,代表环境中的错误对象的激光数据点可以是由于LIDAR单元的过度曝光误差引起,例如,当接收车辆反射的太阳眩光与LIDAR单元发送的信号的返回相比是更强或更高强度的反射信号而且LIDAR单元正在寻找它自己发射的光束的最强返回反射以用于处理时。红外光是阳光的正常光谱的一部分,并且天越亮,散射的红外光越多,LIDAR单元可以接收所述红外光并且将其解释为环境中物理存在的对象。
[0228] 因此,在代表当车辆移动时保持在相对于车辆的相同位置处的对象的激光数据点随着时间持续不变,并且该激光数据点与正在被追踪的对象无关联的实例中,激光数据点可以被识别为代表错误对象的坏激光数据。
[0229] 在方框1310,方法1300包括确定代表环境中的错误对象的激光数据点是否高于阈值。基于代表环境中错误对象的激光数据点低于阈值,在方框 1312,方法1300可选地包括重新处理激光数据。
[0230] 然而,基于代表环境中错误对象的激光数据点高于阈值,在方框1314,方法1300包括由计算设备识别车辆的环境的天气条件为晴朗的第二指示。例如,当存在很多错误激光数据时,这可以是导致接收到错误激光数据的环境晴朗的另一指示。
[0231] 在进一步的示例中,方法1300还可以包括确定如方框1304所述的由激光数据所代表的对象的位置,而且基于对象处于预定位置或者在预定位置内来识别车辆的环境为晴朗。例如,当激光数据代表相对于车辆以一定高度或角度悬挂的对象或障碍物,诸如45度角和在车辆上方5-20英尺处,而且这样的对象继续被随时间推移所收集的激光数据所代表时,计算设备可以确定激光数据不代表真实对象或障碍物。而是,激光数据可以是由于在相对于车辆的固定位置处的虚假观察或者从阳光接收到的激光返回所引起的。因此,基于代表非预期的区域中的对象的激光数据,这可以是当识别环境为晴朗时要考虑的附加因素。
[0232] 在进一步的示例中,利用自主车辆或其他车辆,可以确定一天中的时间和地理位置(例如,使用GPS),并且使用该信息,可以确定太阳的近似位置。根据太阳相对于车辆的位置,可以将代表预定区域内的对象的激光数据识别为是由于来自太阳的反射或光线所引起的。例如,代表基本上直接朝向太阳的近似位置的对象(诸如在相对于车辆45度角处的对象)的激光数据可以被确定为是错误对象。
[0233] 在一些示例中,还可以考虑(除了激光数据中的与被追踪对象无关联的激光数据点以外的)附加数据,以确定车辆所在的环境的天气条件为晴朗,或提供天气晴朗的更高概率或置信(例如,无关联的激光数据点是由于太阳光线或太阳反射引起的,而不是由于追踪对象引起的)。
[0234] 图14是根据本文描述的至少一些实施例的利用车载车辆传感器来进一步确定天气条件晴朗的指示的示例方法的框图。图14中所示的方法1400提出了方法的实施例,例如,其可以由分别参考图1和图2示出和描述的车辆100和/或车辆200使用(或者由车辆100或车辆200的组件使用)。方法1400可以代表程序代码的模块、片段或部分,其包括可由处理器执行以用于实现过程中的特定逻辑功能或步骤的一个或多个指令(例如,机器可读代码)。
[0235] 如方框1402所示,方法1400包括确定激光数据是否与RADAR数据一 致。例如,自主车辆可以收集车辆的环境的RADAR数据,而且RADAR数据指示在车辆环境中的对象的存在。针对由于太阳引起的反射,雷达将不返回数据,然而,RADAR数据可以识别晴朗条件下的对象。激光数据也如上所述被用于追踪对象,并且当由RADAR数据所指示的对象的存在与由LIDAR数据所指示的对象的存在不一致时,LIDAR数据可以被认为是不正确的。由LIDAR数据指示、但是未由RADAR数据指示的任何附加对象可以是太阳光斑或者由于太阳反射所引起的其他返回的激光数据的指示。在这样的示例中,当根据LIDAR数据看到在一定距离的对象并且在某一阈值时段内检测到所述对象,但是根据RADAR未看到匹配的对象时,可以得到环境晴朗的指示。
[0236] 在一些示例中,由LIDAR数据追踪到的、但是未在RADAR数据中看到的任何对象可以被分类为是由于天气条件引起的。如方法1400所示,基于RADAR数据和LIDAR数据不一致,方法1400可以包括识别车辆的环境的天气条件是晴朗的指示,如方框1404所示。
[0237] 方法1400可以前进到方框1406,其中方法1400包括确定激光数据是否与相机数据一致。例如,自主车辆可以包括相机,并且可以接收针对车辆的环境所收集的图像数据。晴朗环境、太阳光线、太阳光斑、太阳或其他因素可以存在于图像中或者在图像中可见,并且图像可以采用对象检测技术来处理,例如,通过提供图像给对象检测服务器并且接收指示图像中的对象的响应。
[0238] 图15A是基于相机图像识别环境的天气条件为晴朗的指示的示例概念性示图。在图15A中,车辆1502在表面上行驶,并且包括收集车辆1502周围区域的数据的传感器。传感器可以包括LIDAR单元,其可以接收来自环境中的区域的反射激光束,并且包括相机,其可以被配置为收集环境的图像。另一车辆1504可以行驶在车辆1502的前方。相机可以捕获区域1506的图像。
[0239] 图15B是由图15A中的车辆1502捕获的图像的示例概念性示图。该图像示出了车辆的尾部的一部分被太阳光线覆盖或遮蔽。该图像可以被处理以确定图像数据中的多个像素的颜色基本上比其他像素更亮,或者确定由太阳光线遮蔽的多个像素的颜色基本上比阈值更亮。基于基本高于预定颜色的像素的百分比,可以得到晴朗天气条件的第二指示。在图15B中,图像的大约50-55%包括太阳光线,并且因此,阈值可以得到满足。也可以使用更低的百 分比。
[0240] 因此,返回参考图14,根据相机数据与LIDAR数据一致(例如,两者都确定了晴朗条件),可以得到环境晴朗的第二指示。
[0241] 在其它示例中,图像数据可以被处理以识别图像中的对象,并且当由相机图像所指示的对象与由LIDAR数据所指示的对象不一致时,也可以得到晴朗的指示。例如,图15B中的图像可以包括太阳光斑1508,其是由于包括在相机中散射的光的相机的镜头眩光所引起的,导致图像中的可见伪影或模糊。这样的太阳光斑1508可能无法被任何LIDAR数据检测或表示,因此,相机数据与激光数据不一致。这样的不一致可以被用作晴朗环境的指示。
[0242] 返回参考图14,方法1400可以前进到方框1408,其中方法1400包括确定激光数据是否与天气数据一致。例如,针对车辆的位置的天气信息可以经由网络从服务器接收,并且当天气信息指示高温、低云或晴朗条件时,可以得到环境晴朗的第二指示。天气数据可以替代地或附加地从车载车辆传感器,诸如降雨传感器或“雨水检测器”、光检测器或其他感测系统接收,并且当LIDAR数据指示错误返回并且来自天气传感器的输出指示阳光存在时,可以得到环境晴朗的第二指示。
[0243] 在示例中,方法1400可以被执行以提供车辆的环境晴朗的进一步指示。除了图12的方法1200和图13的方法1300外,还可以可选地执行方法1400。例如,无关联的激光点(例如,由太阳光线生成的)可以相对于激光检测的车辆是无关联的或者可能相对于雷达检测的车辆是无关联的,并且用于识别环境晴朗的依据可以通过交叉参考其他传感器数据、天气信息等来验证。图14中描述的功能的任何组合可以与图12和/或图13中的功能组合以提供环境晴朗的提高的置信水平。
[0244] 更进一步地,除了上述的传感器数据,来自车辆上的其他传感器的输入也可以被用于对天气条件的额外确定。例如,这些传感器可以包括胎压传感器、发动机温度传感器、制动器热传感器、制动片状态传感器、轮胎胎面传感器、燃料传感器、油水平和质量传感器、空气质量传感器(用于检测温度、湿度、或空气中的微粒)等。
[0245] 此外,车辆上的许多传感器提供被实时处理的数据,也就是说,传感器可以不断地更新输出以连续地或按要求反映在一定时间或在一定时间范围内感测的环境。
[0246] 图16包括识别车辆的环境为晴朗的指示的示例概念性侧视图。在图16中,车辆1602在表面上行驶,而且另一车辆1604在车辆1602的前方行驶。车辆1602可以包括LIDAR单元1606,其被配置为接收针对车辆1602的前方的区域(例如,如图16中的箭头所示)收集的激光数据,而且激光数据可以指示车辆1604与车辆1602相距距离d1。环境可以是晴朗的,如图16所示,而且LIDAR单元1606可以接收由于太阳引起的反射。这样的反射可以代表环境中的错误对象,诸如图16所示的对象1608。然而,对象1608可能不是车辆1602的追踪系统追踪到的对象,因为其它传感器(例如,RADAR)可能无法检测到对象1608或LIDAR单元1608可能不会随着时间的推移一直追踪到对象1608。当接收到的激光数据不匹配追踪到的对象时,无关联的激光数据可以被视为是由于太阳反射引起,导致车辆的环境为晴朗的指示。
[0247] 收集的激光数据的位置可以与预定义的或存储的可以代表由于太阳反射引起的对象的位置进行比较。作为示例,大致在RADAR数据所指示的追踪到的对象上方并且(当与存储的点云进行比较时)代表基本上呈圆形形状的对象的激光数据点,可以通过与存储的点云进行比较来处理以进一步对由于太阳反射所引起的对象进行验证。在这方面,车辆1602可以检测在车辆1604周围的一个或多个云,并且云内的数据点的位置和数目可以不断变化。因此,由于太阳反射引起的数据点的云可以不具有明确的结构,而固体对象的一部分,诸如车辆的尾端,将与限定了清晰表面的数据点相关联。类似的数据点云也可以在其他车辆的后方发现。这样的发现可以指示环境晴朗。
[0248] 在更进一步的示例中,图17是根据本文描述的至少一些实施例的利用车载车辆传感器来检测天气条件的示例方法的框图。图17中所示的方法1700提出方法的实施例,例如,其可以由分别参考图1和图2示出和描述的车辆100和/或车辆200使用,或者由车辆100或车辆200的组件使用。方法1700可以是可以与本文所描述的任意方法分离地实施或者组合实施的一般方法。
[0249] 在方框1702,方法1700包括接收针对车辆的环境收集的激光数据。激光数据包括基于环境中的对象的多个激光数据点,所述对象由于反射或后向散射光而被感知为物理存在。车辆或车辆的组件,诸如计算设备或处理器,可以被配置为接收所收集的数据激光。
[0250] 在方框1704中,方法1700包括由计算设备将多个激光数据点中的激光数据点与环境中的一个或多个对象相关联。作为一个示例,追踪系统可以被 用于追踪对象,而且可以确定与追踪到的对象相关联的激光数据点。
[0251] 在方框1706,方法1700包括将多个激光数据点中的、与环境中的一个或多个对象无关联的给定激光数据点确定为代表未追踪到的对象。在示例中,对于被认为代表对象的激光数据,激光数据可以与环境中的对象相关联,而剩余的接收的或收集的激光数据可以被认为是与环境中的对象无关联的。
[0252] 在示例中,方法1700可以被执行以确定对象被预期存在但是未被激光器检测到或者未预期的对象被检测到(即,激光测量由于阳光而丢失或改变)的实例。如上所述,对于接收到的反射激光数据,可以确定对象存在从而导致激光被反射。但是,在特定天气条件下,例如有雾条件下,雾可以引起反射,从而导致对对象的错误确定。为了确定何时激光数据是基于存在于环境中的真实对象而不是基于导致激光发射的反射的天气相关条件,计算设备可以被配置为将激光数据与已知代表对象的激光数据和/或已知是由于天气相关反射引起的激光数据进行比较。因此,可以将接收到的激光数据与已知代表对象的激光数据的图案进行比较以识别可能是由于除了对象外的其他因素引起的激光数据。
[0253] 可以存储任何数目的激光数据的图案,并参考所述图案来比较无关联的激光数据,以便将无关联的激光数据分类为表示对象的激光数据或者由于天气条件(例如雾)引起的激光数据。
[0254] 作为在由于对象所引起的激光数据和由于其它条件(例如雾)所引起的激光数据之间进行区分的另一示例,计算设备可以被配置为追踪由激光数据表示的对象的移动。因此,可以将所有激光数据都当作代表移动的对象来进行追踪,并且可以认为被看到以奇怪方式移动的对象或者在短时间内出现和消失的对象是由于天气条件所导致的激光数据反射引起的错误对象。
[0255] 在一些示例中,针对车辆的环境收集的激光数据可以通过当车辆行驶时随时间执行对环境的扫描来收集。当车辆移动通过环境时,可以基于由于接收到的激光数据而被确定为存在对象来追踪环境中的对象。然后可以识别与追踪到的对象不匹配的激光数据。
[0256] 在一个示例中,激光数据可以与空气中存在水或通常有雾的多云条件相关,并且这样的水滴或云是车辆的追踪系统追踪不到的项目。例如,对于检测并定位光学反射特征的LIDAR设备而言,空气中的水滴或空气中的云特征类似于对象云,因为光脉冲从微粒反射。LIDAR设备可能无法穿透雾,因此, 当存在雾时,许多激光点可以由于雾而返回。因此,对于任何未追踪到的接收到的激光数据(例如,与追踪到的对象不匹配的激光数据),可以确定未追踪到的对象。
[0257] 在示例中,方法1700可以包括确定与环境中的一个或多个对象无关联的激光数据点。LIDAR可以被配置为执行对环境的第一扫描,并且将多个激光数据点中的激光数据点与环境中的一个或多个对象相关联。然后,LIDAR可以被配置为执行对环境的第二扫描,并且基于由激光数据点所表示的对象的位置来确定与一个或多个对象匹配的激光数据点。然后,基于与第一扫描中的一个或多个对象缺乏匹配,可以确定第二扫描中的与环境中的一个或多个对象无关联的激光数据点。在进一步的示例中,第二扫描可以代表在第一扫描之后或在多个扫描之后对环境的扫描,以使得对象追踪已发生了一段时间,以便于比较第二扫描数据。
[0258] 在方框1708,方法1700包括基于一个或多个未追踪到的对象被确定,由计算设备识别环境的天气条件的指示。在一些示例中,可以基于确定存在多个未追踪到的对象来进行识别。
[0259] 此外(或者可替换地),在方框1706,方法1700可以包括确定与环境中的一个或多个对象无关联的激光数据点的数目超过预定阈值,然后由计算设备识别天气条件的指示。例如,如果存在少数的与对象无关联的激光数据点,则这可能是由于许多因素引起的;然而,对于一定阈值数量的激光数据点而言,更高的概率可以是,这些激光数据点是由于发射的激光束被水反射、由于阳光、由于雾、或者由于其他一些天气条件引起。
[0260] 方法1700还可以包括确定具体天气条件。例如,为了确定晴朗天气条件,方法可以包括确定当车辆移动时未追踪到的对象保持在相对于车辆的大致相同的相对位置。在一个示例中,可以随时间确定未追踪到的对象的坐标位置,并且可以确定到车辆的距离以及相对于车辆的角度。当车辆移动时,停留在距车辆相同距离处的对象将被认为也在移动。另外,当车辆移动时,相对于车辆保持相同角度的对象将被认为也在移动。然而,当对象的角度大于45度或更大时,对象可以被认为是由于阳光反射所引起。在其它示例中,被认为基本上与车辆相同地移动的对象可以被确定为由于阳光所引起,其在晴朗天气条件下保持基本上恒定。
[0261] 在示例中,使用方法1700,车辆可以被配置为在自主模式下操作,并且 可以利用天气条件的指示来确定车辆的驾驶决定。可能期望根据各种天气条件或道路条件以不同的方式控制车辆,因此,当道路湿时,车辆可以根据“湿的表面”驾驶技术(例如,允许更多的制动空间、降低速度等)来操作。车辆也可能无法在某些天气条件下操作,因此,在一些示例中,车辆可以提供指令以指示请求转换到手动模式,诸如通过向驾驶员提供警报以通过禁用自主模式来开始对车辆的操作。
[0262] 除了做出驾驶决定以外,或者作为对做出驾驶决定的替换,道路天气条件和/或路面条件可以触发被发送给驾驶员的警报。警报可以请求驾驶员控制车辆,或者也可以简单地向驾驶员提供关于所述条件的警报。警报可以是听觉信号、视觉信号、触觉或感觉信号和/或获取驾驶员的注意的任何其他信号。在这个示例中,在警告驾驶员后,车辆可以从驾驶员接收输入,诸如转动方向盘、施加制动、施加加速器、按压紧急关闭等。
[0263] 在进一步的示例中,可以基于存在多少无关联的激光数据点来确定道路湿的程度、雾天气的程度或者天空晴朗的程度。在道路很湿的实例中,可存在大量的无关联的激光数据点。车辆操作的模式可以进一步基于道路湿的程度,例如对于潮湿道路可以采用自主模式,而对于道路被认为非常湿的实例,车辆可以转换到手动操作模式或提供转换到手动操作模式的请求。
[0264] 除了做出驾驶决定以外,或者作为对做出驾驶决定的替换,天气条件还可以导致改变车辆的传感器的设置。例如,相机的曝光设置可以基于车辆的环境的天气条件为晴朗的指示而被更改,或者LIDAR单元的设置可以被更改以降低曝光时间。也可以基于该识别来采取其他动作,诸如部署遮护板或遮阳板。
[0265] 在一些示例中,(除了与追踪到的对象无关联的激光数据点之外的)附加数据可以被考虑以提供天气条件的进一步指示,或提供具体天气条件的更高概率或置信(例如,由于水引起的无关联的激光数据点)。
[0266] 图18是根据本文描述的至少一些实施例的利用车载车辆传感器来进一步确定天气条件的指示的示例方法的框图。
[0267] 如在方框1802中所示,方法1800可以包括确定激光数据是否与RADAR数据一致,而且如果不一致,则方法1800包括在方框1804识别天气条件的指示。例如,自主车辆可以收集车辆的环境的RADAR数据,而且RADAR数据指示在车辆环境中的对象的存在。针对扬起的水、或雾或阳光,雷达将 不返回数据,然而,RADAR数据将识别自主车辆前方的汽车。激光数据还如上所述被用于追踪对象,并且当由RADAR数据所指示的对象的存在与由LIDAR数据所指示的对象的存在不一致时,LIDAR数据可以被认为是不正确的。由LIDAR数据指示、但是未由RADAR数据指示的任何附加对象可以是某些天气条件的指示,而且为了确定具体天气条件,可以执行方法400的进一步处理。
[0268] 在一些示例中,由LIDAR数据追踪到的、但是未在RADAR数据中看到的任何对象可以被分类为是由于天气条件引起的。如方法1800所示,基于RADAR数据和LIDAR数据不一致,可以得到天气条件的指示。方法1800还可以包括确定错误匹配的数目是否高于阈值。例如,对于少量的错误返回,诸如虚假的或错误的反射激光数据,可不采取进一步的动作或可以重新处理激光数据(如方框1812所示)。然而,当错误返回的数目高于阈值时,方法可以包括识别天气条件。
[0269] 在进一步的示例中,与RADAR指示的对象无关联的、且形成围绕由RADAR指示的对象的圆形形状的激光数据点可以被确定为是由于雾引起的。在一些示例中,雾的浓度也可以被估计。例如,环境中的与激光数据点无关联的对象(例如,雾)和由RADAR数据指示的(而且也可能与激光数据点相关联的)环境中的给定对象之间的距离可以被确定,并且可以基于该距离估计雾的浓度。使用两个传感器(LIDAR和RADAR),可以在一定范围内检测对象的存在,并且检测到雾的位置到对象所位于的位置之间的距离可以提供雾的能见度或浓度的测量。浓度可以被表述为能见度的距离,诸如例如小于5公里的能见度,而且该距离可以是检测到雾的位置和对象所位于的位置之间的距离所确定的。在更进一步的示例中,雾的浓度的确定可以基于无关联的激光数据点的数目。在重雾或浓雾存在的实例中,可以存在大量的无关联的激光数据点。
[0270] 方法1800可以前进到方框1806,其中方法1800包括确定激光数据是否与相机数据一致。例如,自主车辆可以包括相机,并且可以接收针对车辆的环境所收集的图像数据。在大雨中,水可以在道路上聚集,并且可以在图像中可见。此外,也可以在图像中识别下雨。
图像可以采用对象检测技术来处理,例如,通过提供图像给对象检测服务器并且接收指示图像中的对象的响应。因此,在一些示例中,图像数据可以被处理以识别湿的表面,并且当由 相机所指示的对象与由LIDAR数据所指示的对象不一致时,也可以得到车辆在其上行驶的表面是湿的的指示。
[0271] 在进一步的示例中,图像数据可以被处理以确定包括在车辆的环境中的对象的反射的图像数据的量。例如,在下雨时,制动灯和道路上的其它对象提供图像内的反射。可以使用许多技术来检测图像中的反射,诸如例如通过分析特征点的运动轨迹和将反射建模为包含彼此相对移动的两个不同层的区域。基于指示车辆的环境中的一个或多个对象的反射的图像数据的量高于阈值,可以得到车辆在其上行驶的表面是湿的的第二指示。对于其他天气条件,诸如雾,雾可以在图像中可见,因此,可以使用对象检测技术来处理图像,例如,通过将图像提供给对象检测服务器并且接收指示图像中的对象的响应。
[0272] 方法1800可以前进到方框1808,其中方法1800包括确定激光数据是否与其他传感器数据一致。例如,自主车辆可以具有降雨传感器或“雨水检测器”,并且当LIDAR数据指示湿的表面而且降雨传感器指示降雨的存在时,可以得到车辆所行驶的表面是湿的或者天气为下雨的第二指示。可能无法单靠降雨传感器的输出确定表面是否是湿的,因为在停止下雨后的一段时间内表面可以仍然是湿的,或者当不下雨时表面可以由于水坑或其它水积聚而是湿的。
[0273] 在进一步的示例中,处理由各种传感器提供的数据可以包括处理在先前时间点获得的并且预期持续存在于环境中的环境数据。例如,详细的地图信息(例如,识别道路的形状和高度、交叉路口、人行横道、速度限制、交通信号、建筑物、标牌、实时交通信息或其它这样的对象和信息的非常详细的地图)可以被提供或经由数据库访问,并且可以包括描述道路的不同路段的预期亮度或激光强度数据值的数据。当激光数据与预期亮度或激光强度数据值不匹配时,可以确定湿的表面的指示。
[0274] 方法1800可以前进到方框1810,其中方法1800包括确定激光数据是否与天气数据一致。例如,可以经由网络从服务器接收针对车辆的位置的天气信息,并且当天气信息指示正在下雨或最近下过雨时,可以基于天气信息得到道路是湿的的第二指示。当天气信息指示高温、低云或晴朗条件时,可以得到环境晴朗的第二指示。当天气信息指示可能有雾或者有雾条件时,可以得到雾存在的第二指示。在进一步的示例中,附加的天气数据,例如温度或露点,可以从车载车辆传感器确定或者通过与服务器通信确定,而且可以基 于温度或露点来得到车辆的环境的天气条件包括雾的第二指示。例如,当温度和露点之间的差大约小于2.5摄氏度或4华氏度时,雾可以形成。雾通常发生在接近100%的相对湿度下,但是,雾可以在较低的湿度下形成,而且雾有时可以不在100%的相对湿度下形成。100%的相对湿度读数意味着空气不能再容纳额外的水分;如果额外的水分被加入,空气将变得过饱和。雾可以突然形成,并且同样可以迅速消散,这取决于温度在露点的哪一侧。
[0275] 方法1800可以前进到方框1812,其中方法1800包括再处理激光数据以尝试将所识别的对象与由追踪系统所识别的对象进行比较。例如,方法1800还可以包括基于对由道路上的其他汽车所确定的信息的访问,来确认天气条件的确定。
[0276] 应当理解,本文中描述的布置仅用于示例的目的。因而,本领域技术人员将会理解,可以代替地使用其它布置和其它元件(例如机器、接口、功能、顺序和功能的分组等),而且根据期望的结果可以将一些元件一同省略。另外,描述的许多元件是功能实体,其可以按任何适当的组合和位置实现为分立或分布式的组件或与其它组件结合,或者被描述为独立结构的其他结构元件可以被结合。
[0277] 尽管本文已公开了各种方面和实施例,但是其它方面和实施例对于本领域技术人员而言将是明显的。本文公开的各种方面和实施例是为了说明的目的,而不意在进行限制,真实的范围应当由所附权利要求以及这样的权利要求有权享有的等效物的全部范围指示。还要理解,本文中使用的术语仅是为了描述特定实施例的目的,而不意在进行限制。
QQ群二维码
意见反馈