首页 / 专利库 / 轴承类 / 导轨 / 用传感器导轨选择性捕获自主车传感器数据的系统和方法

传感器导轨选择性捕获自主车传感器数据的系统和方法

阅读:145发布:2023-01-04

专利汇可以提供传感器导轨选择性捕获自主车传感器数据的系统和方法专利检索,专利查询,专利分析的服务。并且本 发明 涉及用 传感器 导轨 选择性捕获自主车 传感器数据 的系统和方法。获得自主车辆的一个或多个参数,所述参数包括自主车辆的 位置 、路径和/或速度中的任一者。基于一个或多个参数来从自主车辆周围的多个区域中识别感兴趣区域。基于感兴趣区域控制安装在传感器导轨上的一个或多个传感器,以沿自主车辆的至少一部分移动传感器,并捕获感兴趣区域的传感器数据,而不捕获自主车辆周围的多个区域中的一个或多个其他区域的传感器数据,传感器导轨安装在自主车辆的表面上。捕获的传感器数据被提供给处理器,该处理器能够基于捕获的感兴趣区域的传感器数据来促进一个或多个自主车辆驾驶动作。,下面是传感器导轨选择性捕获自主车传感器数据的系统和方法专利的具体信息内容。

1.一种自主车辆多区域传感器系统,包括:
传感器导轨,其能够安装在自主车辆的表面上,所述传感器导轨被配置为沿所述自主车辆的至少一部分移动一个或多个传感器,所述一个或多个传感器能够捕获所述自主车辆周围的多个区域的传感器数据
感兴趣区域确定引擎,其被配置为:
获得自主车辆的一个或多个参数,所述参数包括自主车辆的位置、自主车辆的路径和自主车辆的速度中的任一者;并且
基于所述自主车辆的所述一个或多个参数来从自主车辆周围的多个区域中识别感兴趣区域;
多区域传感器控制引擎,其被配置为:
基于所述感兴趣区域来控制安装在所述传感器导轨上的一个或多个传感器,以沿所述自主车辆的至少一部分移动所述一个或多个传感器,并捕获所述感兴趣区域的传感器数据,并且不捕获所述自主车辆周围的所述多个区域中的一个或多个其他区域的传感器数据;
多区域传感器通信引擎,其被配置为:
将捕获的传感器数据提供给自主车辆传感器数据处理系统,所述自主车辆传感器数据处理系统在逻辑上和物理上与所述自主车辆多区域传感器系统分离,所述自主车辆传感器数据处理系统能够基于捕获的传感器数据来促进一个或多个自主车辆驾驶动作。
2.根据权利要求1所述的系统,其中,所述自主车辆周围的所述多个区域包括与自主车辆前方的区域对应的前方区域、与自主车辆左侧的区域对应的左侧区域、与自主车辆右侧的区域对应的右侧区域以及与自主车辆后方的区域对应的后方区域。
3.根据权利要求2所述的系统,其中,所述一个或多个传感器包括可旋转激光扫描系统和一个或多个相机。
4.根据权利要求3所述的系统,其中,所述多区域传感器控制引擎被配置为当所述自主车辆正在沿直线路径移动时关闭所述一个或多个传感器的特定部分,所述一个或多个传感器的所述特定部分包括与所述自主车辆的所述左侧区域、所述右侧区域和所述后方区域中的任一者相关联的传感器。
5.根据权利要求4所述的系统,其中,所述多区域传感器控制引擎被配置为控制所述可旋转激光扫描系统以在所述可旋转激光扫描系统面向所述感兴趣区域时捕获传感器数据,并且被配置为控制所述可旋转激光扫描系统以在所述可旋转激光扫描系统不面向所述感兴趣区域时不捕获传感器数据。
6.一种方法,包括:
获得自主车辆的一个或多个参数,所述参数包括自主车辆的位置、自主车辆的路径和自主车辆的速度中的任一者;
基于所述自主车辆的所述一个或多个参数来从所述自主车辆周围的多个区域中识别感兴趣区域;
基于所述感兴趣区域来控制安装在传感器导轨上的一个或多个传感器,以沿所述自主车辆的至少一部分移动所述一个或多个传感器,并捕获所述感兴趣区域的传感器数据,并且不捕获所述自主车辆周围的所述多个区域中的一个或多个其他区域的传感器数据,所述传感器导轨安装在所述自主车辆的表面上;以及
将捕获的传感器数据提供给处理器,所述处理器能够基于捕获的感兴趣区域的传感器数据来促进一个或多个自主车辆驾驶动作。
7.根据权利要求6所述的方法,其中,所述自主车辆周围的所述多个区域包括与自主车辆前方的区域对应的前方区域、与自主车辆左侧的区域对应的左侧区域、与自主车辆右侧的区域对应的右侧区域以及与自主车辆后方的区域对应的后方区域。
8.根据权利要求7所述的方法,其中,所述一个或多个传感器包括可旋转激光扫描系统和一个或多个相机。
9.根据权利要求7所述的方法,其中,所述控制包括当所述自主车辆正在沿直线路径移动时关闭所述一个或多个传感器的特定部分,所述一个或多个传感器的所述特定部分包括与所述自主车辆的所述左侧区域、所述右侧区域和所述后方区域中的任一者相关联的传感器。
10.根据权利要求8所述的方法,其中,所述控制包括控制所述可旋转激光扫描系统以在所述可旋转激光扫描系统面向所述感兴趣区域时捕获传感器数据,并且被配置为控制所述可旋转激光扫描系统以在所述可旋转激光扫描系统不面向所述感兴趣区域时不捕获传感器数据。
11.一种系统,包括:
自主车辆多区域传感器系统,其包括能够安装在自主车辆的表面上的传感器导轨,所述传感器导轨被配置为沿所述自主车辆的至少一部分移动一个或多个传感器,所述一个或多个传感器能够捕获所述自主车辆周围的多个区域的传感器数据;
自主车辆传感器数据过滤系统,其被配置为:
基于所述自主车辆的一个或多个参数来从所述自主车辆周围的多个区域中识别感兴趣区域;
过滤所述传感器数据以仅包括所述感兴趣区域的传感器数据;并且
将过滤后的传感器数据提供给自主车辆传感器数据处理系统,所述自主车辆传感器数据处理系统被配置为基于过滤后的传感器数据来促进一个或多个自主车辆驾驶动作的执行。
12.根据权利要求11所述的系统,其中,所述自主车辆传感器数据过滤系统在设置于所述自主车辆多区域传感器系统和所述自主车辆传感器数据处理系统之间的可编程板上实现。
13.根据权利要求11所述的系统,其中,所述自主车辆周围的所述多个区域包括与自主车辆前方的区域对应的前方区域、与自主车辆左侧的区域对应的左侧区域、与自主车辆右侧的区域对应的右侧区域以及与自主车辆后方的区域对应的后方区域。
14.根据权利要求13所述的系统,其中,所述一个或多个传感器包括可旋转激光扫描系统和一个或多个相机。
15.根据权利要求12所述的系统,其中,所述自主车辆多区域传感器系统被配置为当所述自主车辆正在沿直线路径移动时关闭所述一个或多个传感器的特定部分,所述一个或多个传感器的所述特定部分包括与所述自主车辆的所述左侧区域、所述右侧区域和所述后方区域中的任一者相关联的传感器。
16.根据权利要求13所述的系统,其中,所述自主车辆多区域传感器系统被配置为控制所述可旋转激光扫描系统以在所述可旋转激光扫描系统面向所述感兴趣区域时捕获传感器数据,并且被配置为控制所述可旋转激光扫描系统以在所述可旋转激光扫描系统不面向所述感兴趣区域时不捕获传感器数据。
17.根据权利要求13所述的系统,其中,所捕获的传感器数据包括与所述感兴趣区域对应的第一图像数据以及与所述自主车辆周围的所述多个区域中的一个或多个其他区域对应的第二图像数据,并且所述自主车辆传感器数据过滤系统被配置为从所述传感器数据中去除所述第二图像数据。
18.一种方法,包括:
使用安装在传感器导轨上的一个或多个传感器捕获自主车辆周围的多个区域的传感器数据,所述传感器导轨安装在所述自主车辆的表面上,在沿所述传感器导轨的多个不同点处捕获所述传感器数据;
获得自主车辆的一个或多个参数,所述参数包括自主车辆的位置、自主车辆的路径和自主车辆的速度中的任一者;
基于所述自主车辆的所述一个或多个参数来从所述自主车辆周围的所述多个区域中识别感兴趣区域;
响应于识别到所述感兴趣区域,过滤捕获的传感器数据以仅包括所述感兴趣区域的传感器数据;并且
响应于过滤,将过滤后的数据提供给处理器,所述处理器能够基于过滤后的数据来促进一个或多个自主车辆驾驶动作。
19.根据权利要求18所述的方法,其中,所述一个或多个传感器包括可旋转激光扫描系统和一个或多个相机。
20.根据权利要求19所述的方法,其中,还包括控制所述可旋转激光扫描系统以在所述可旋转激光扫描系统面向所述感兴趣区域时捕获传感器数据,并且控制所述可旋转激光扫描系统以在所述可旋转激光扫描系统不面向所述感兴趣区域时不捕获传感器数据。
21.根据权利要求18所述的方法,其中,所捕获的传感器数据包括与所述感兴趣区域对应的第一图像数据以及与所述自主车辆周围的所述多个区域中的一个或多个其他区域对应的第二图像数据,并且所述过滤包括从所述传感器数据中去除所述第二图像数据。

说明书全文

传感器导轨选择性捕获自主车传感器数据的系统和方法

技术领域

[0001] 本公开总体涉及自主车辆(无人自动驾驶车辆),并且特别地,一些实施例涉及使用传感器导轨选择性地捕获自主车辆的传感器数据。

背景技术

[0002] 在传统方法中,自主车辆的传感器系统收集大量传感器数据。通常,传感器系统连续地从自主车辆周围收集传感器数据,而不管车辆的行为(例如,自主车辆的定向路径)如何。传感器数据可以包括相机图像、反射激光信息等。这会给传感器系统以及自主车辆的其他系统带来很大的计算负担。例如,通常必须将所有传感器数据发送到自主车辆的中央计算系统,并且中央计算系统必须处理所有传感器数据。发明内容
[0003] 一种源于计算机技术的主张解决方案克服了计算机技术领域中特别出现的问题。在各种实施方式中,系统被配置为选择性地捕获和/或过滤自主车辆的传感器数据(例如,在传感器数据被发送到自主车辆的中央计算系统之前)。在一些实施例中,传感器导轨安装在自主车辆上(例如,自主车辆的顶部、自主车辆的侧部、自主车辆的前部、自主车辆的后部和/或自主车辆的底部)。可以使用传感器导轨围绕自主车辆移动一个或多个传感器,以选择性地捕获传感器数据。例如,系统可以控制传感器导轨和/或自主车辆的各传感器仅捕获一个或多个感兴趣区域(例如,当自主车辆正在沿直线定向路径移动时自主车辆前方的区域)内的传感器数据。在另一示例中,系统可以在发送传感器数据(例如,发送到中央计算系统)之前过滤传感器数据,以仅包括一个或多个感兴趣区域内的传感器数据。因此,系统可以减少捕获的传感器数据的量,减少发送的传感器数据的量,和/或减少由自主车辆的中央计算系统(和/或自主车辆的其他系统)处理的传感器数据的量。
[0004] 本公开的各种实施例包括自主车辆多区域传感器系统,其包括能够安装在自主车辆的表面上的传感器导轨,该传感器导轨被配置为沿自主车辆的至少一部分移动一个或多个传感器,所述一个或多个传感器能够捕获自主车辆周围的多个区域的传感器数据。感兴趣区域确定引擎被配置为获得自主车辆的一个或多个参数,所述参数包括自主车辆的位置、自主车辆的路径和自主车辆的速度中的任一者。感兴趣区域确定引擎还被配置为基于自主车辆的一个或多个参数来从自主车辆周围的多个区域中识别感兴趣区域;多区域传感器控制引擎被配置为基于感兴趣区域控制安装在传感器导轨上的一个或多个传感器,以沿自主车辆的至少一部分移动一个或多个传感器,并捕获感兴趣区域的传感器数据,并且不捕获自主车辆周围的多个区域中的一个或多个其他区域的传感器数据。多区域传感器通信引擎被配置为将捕获的传感器数据提供给自主车辆传感器数据处理系统,所述自主车辆传感器数据处理系统在逻辑上和物理上与自主车辆多区域传感器系统分离,所述自主车辆传感器数据处理系统能够基于捕获的传感器数据来促进一个或多个自主车辆驾驶动作。
[0005] 本公开的各种实施例包括方法,该方法包括获得自主车辆的一个或多个参数,所述参数包括自主车辆的位置、自主车辆的路径和自主车辆的速度中的任一者。该方法还包括基于自主车辆的一个或多个参数来从自主车辆周围的多个区域中识别感兴趣区域。该方法还包括基于感兴趣区域控制安装在传感器导轨上的一个或多个传感器,以沿自主车辆的至少一部分移动一个或多个传感器,并捕获感兴趣区域的传感器数据,并且不捕获自主车辆周围的多个区域中的一个或多个其他区域的传感器数据,所述传感器导轨安装在自主车辆的表面上。该方法还包括将捕获的传感器数据提供给处理器,该处理器能够基于捕获的感兴趣区域的传感器数据来促进一个或多个自主车辆驾驶动作。
[0006] 本公开的各种实施例包括系统,该系统包括自主车辆多区域传感器系统,其包括能够安装在自主车辆的表面上的传感器导轨,该传感器导轨被配置为沿自主车辆的至少一部分移动一个或多个传感器,所述一个或多个传感器能够捕获自主车辆周围的多个区域的传感器数据。自主车辆传感器数据过滤系统被配置为基于自主车辆的一个或多个参数来从自主车辆周围的多个区域中识别感兴趣区域。自主车辆传感器数据过滤系统还被配置为过滤传感器数据以仅包括感兴趣区域的传感器数据,并且将过滤后的传感器数据提供给自主车辆传感器数据处理系统,该自主车辆传感器数据处理系统被配置为基于过滤后的传感器数据来促进一个或多个自主车辆驾驶动作的执行。
[0007] 本公开的各种实施例包括方法,该方法包括:使用安装在传感器导轨上的一个或多个传感器捕获自主车辆周围的多个区域的传感器数据,该传感器导轨安装在自主车辆的表面上,在沿传感器导轨的多个不同点处捕获传感器数据;获得自主车辆的一个或多个参数,所述参数包括自主车辆的位置、自主车辆的路径和自主车辆的速度中的任一者;基于自主车辆的一个或多个参数来从自主车辆周围的多个区域中识别感兴趣区域;响应于识别到感兴趣区域,过滤捕获的传感器数据以仅包括感兴趣区域的传感器数据;响应于过滤,将过滤后的数据提供给处理器,所述处理器能够基于过滤后的数据来促进一个或多个自主车辆驾驶动作。
[0008] 一种源于计算机技术的主张解决方案克服了计算机技术领域中特别出现的问题。在各种实施方式中,系统被配置为选择性地捕获自主车辆的传感器数据和/或在传感器数据被发送到自主车辆的中央计算系统之前过滤传感器数据。例如,系统可以控制自主车辆的各传感器仅捕获一个或多个感兴趣区域(例如,当自主车辆正在沿直线定向路径移动时,自主车辆前方的区域)内的传感器数据。在另一示例中,系统可以在发送传感器数据(例如,发送到中央计算系统)之前过滤传感器数据,以仅包括一个或多个感兴趣区域内的传感器数据。因此,系统可以减少捕获的传感器数据的量,减少发送的传感器数据的量,和/或减少由自主车辆的中央计算系统(和/或自主车辆的其他系统)处理的传感器数据的量。
[0009] 本公开的各种实施例包括自主车辆多区域传感器系统,其包括安装在自主车辆的表面上的一个或多个传感器,所述一个或多个传感器能够捕获自主车辆周围的多个区域的传感器数据。感兴趣区域确定引擎被配置为获得自主车辆的一个或多个参数,所述参数包括自主车辆的位置、自主车辆的路径和自主车辆的速度中的任一者。感兴趣区域确定引擎还被配置为基于自主车辆的一个或多个参数来从自主车辆周围的多个区域中识别感兴趣区域;多区域传感器控制引擎被配置为基于感兴趣区域控制安装在自主车辆的表面上的一个或多个传感器,以捕获感兴趣区域的传感器数据,并且不捕获自主车辆周围的多个区域中的一个或多个其他区域的传感器数据。多区域传感器通信引擎被配置为将捕获的传感器数据提供给自主车辆传感器数据处理系统,所述自主车辆传感器数据处理系统在逻辑上和物理上与自主车辆多区域传感器系统分离,所述自主车辆传感器数据处理系统能够基于捕获的传感器数据来促进一个或多个自主车辆驾驶动作。
[0010] 在一些实施例中,自主车辆周围的多个区域包括与自主车辆前方的区域对应的前方区域、与自主车辆左侧的区域对应的左侧区域、与自主车辆右侧的区域对应的右侧区域以及与自主车辆后方的区域对应的后方区域。
[0011] 在一些实施例中,一个或多个传感器包括可旋转激光扫描系统和一个或多个相机。
[0012] 在一些实施例中,多区域传感器控制引擎被配置为当自主车辆正在沿直线路径移动时关闭一个或多个传感器的特定部分,所述一个或多个传感器的特定部分包括与自主车辆的左侧区域、右侧区域和后方区域中的任一者相关联的传感器。
[0013] 在一些实施例中,多区域传感器控制引擎被配置为控制可旋转激光扫描系统以在其面向感兴趣区域时捕获传感器数据,并且被配置为控制可旋转激光扫描系统以在其不面向感兴趣区域时不捕获传感器数据。
[0014] 本公开的各种实施例包括方法,该方法包括获得自主车辆的一个或多个参数,所述参数包括自主车辆的位置、自主车辆的路径和自主车辆的速度中的任一者。该方法还包括基于自主车辆的一个或多个参数来从自主车辆周围的多个区域中识别感兴趣区域。该方法还包括基于感兴趣区域控制安装在自主车辆的表面上的一个或多个传感器,以捕获感兴趣区域的传感器数据,并且不捕获自主车辆周围的多个区域中的一个或多个其他区域的传感器数据。该方法还包括将捕获的传感器数据提供给处理器,该处理器能够基于捕获的感兴趣区域的传感器数据来促进一个或多个自主车辆驾驶动作。
[0015] 在一些实施例中,自主车辆周围的多个区域包括与自主车辆前方的区域对应的前方区域、与自主车辆左侧的区域对应的左侧区域、与自主车辆右侧的区域对应的右侧区域以及与自主车辆后方的区域对应的后方区域。
[0016] 在一些实施例中,一个或多个传感器包括可旋转激光扫描系统和一个或多个相机。
[0017] 在一些实施例中,控制包括控制可旋转激光扫描系统以在其面向感兴趣区域时捕获传感器数据,并且被配置为控制可旋转激光扫描系统以在其不面向感兴趣区域时不捕获传感器数据。
[0018] 本公开的各种实施例包括系统,该系统包括自主车辆多区域传感器系统,其包括安装在自主车辆的表面上的一个或多个传感器,所述一个或多个传感器能够捕获自主车辆周围的多个区域的传感器数据。自主车辆传感器数据过滤系统被配置为基于自主车辆的一个或多个参数来从自主车辆周围的多个区域中识别感兴趣区域。自主车辆传感器数据过滤系统还被配置为过滤传感器数据以仅包括感兴趣区域的传感器数据,并且将过滤后的传感器数据提供给自主车辆传感器数据处理系统,该自主车辆传感器数据处理系统被配置为基于过滤后的传感器数据来促进一个或多个自主车辆驾驶动作的执行。
[0019] 在一些实施例中,自主车辆传感器数据过滤系统在设置于自主车辆多区域传感器系统和自主车辆传感器数据处理系统之间的可编程板上实现。
[0020] 在一些实施例中,自主车辆周围的多个区域包括与自主车辆前方的区域对应的前方区域、与自主车辆左侧的区域对应的左侧区域、与自主车辆右侧的区域对应的右侧区域以及与自主车辆后方的区域对应的后方区域。
[0021] 在一些实施例中,一个或多个传感器包括可旋转激光扫描系统和一个或多个相机。
[0022] 在一些实施例中,自主车辆多区域传感器系统被配置为当自主车辆正在沿直线路径移动时关闭一个或多个传感器的特定部分,所述一个或多个传感器的特定部分包括与自主车辆的左侧区域、右侧区域和后方区域中的任一者相关联的传感器。
[0023] 在一些实施例中,自主车辆多区域传感器系统被配置为控制可旋转激光扫描系统以在其面向感兴趣区域时捕获传感器数据,并且被配置为控制可旋转激光扫描系统以在其不面向感兴趣区域时不捕获传感器数据。
[0024] 在一些实施例中,捕获的传感器数据包括与感兴趣区域对应的第一图像数据以及与自主车辆周围的多个区域中的一个或多个其他区域对应的第二图像数据,并且自主车辆传感器数据过滤系统被配置为从传感器数据中去除第二图像数据。
[0025] 本公开的各种实施例包括方法,该方法包括:使用安装在自主车辆的表面上的一个或多个传感器捕获自主车辆周围的多个区域的传感器数据;获得自主车辆的一个或多个参数,所述参数包括自主车辆的位置、自主车辆的路径和自主车辆的速度中的任一者;基于自主车辆的一个或多个参数来从自主车辆周围的多个区域中识别感兴趣区域;响应于识别到感兴趣区域,过滤捕获的传感器数据以仅包括感兴趣区域的传感器数据;响应于过滤,将过滤后的数据提供给处理器,所述处理器能够基于过滤后的数据来促进一个或多个自主车辆驾驶动作。
[0026] 在一些实施例中,一个或多个传感器包括可旋转激光扫描系统和一个或多个相机。
[0027] 在一些实施例中,该方法还包括控制可旋转激光扫描系统以在其面向感兴趣区域时捕获传感器数据,并且控制可旋转激光扫描系统以在其不面向感兴趣区域时不捕获传感器数据。
[0028] 在一些实施例中,捕获的传感器数据包括与感兴趣区域对应的第一图像数据以及与自主车辆周围的多个区域中的一个或多个其他区域对应的第二图像数据,并且过滤包括从传感器数据中去除第二图像数据。
[0029] 通过以下结合附图的详细描述,所公开技术的这些和其他特征和方面将变得显而易见,附图通过示例的方式示出了根据所公开技术的实施例的特征。发明内容并非旨在限制本文描述的任何发明的范围,这些发明仅由所附权利要求限定。

附图说明

[0030] 图1示出根据一些实施例的用于选择性地捕获和/或过滤一个或多个感兴趣区域的自主车辆传感器数据的示例系统的示图。
[0031] 图2示出根据一些实施例的自主车辆多区域传感器系统的示例的示图。
[0032] 图3示出根据一些实施例的自主车辆传感器数据过滤系统的示例的示图。
[0033] 图4示出根据一些实施例的选择性地捕获一个或多个感兴趣区域的自主车辆传感器数据的方法的示例的流程图
[0034] 图5示出根据一些实施例的选择性地过滤一个或多个感兴趣区域的自主车辆传感器数据的方法的示例的流程图。
[0035] 图6A至图6C示出根据一些实施例的包括传感器导轨的自主车辆的示例的示图。
[0036] 图7是用于实现本文公开的特征的示例计算机系统的示图。

具体实施方式

[0037] 一种源于计算机技术的主张解决方案克服了计算机技术领域中特别出现的问题。在各种实施方式中,系统被配置为选择性地捕获和/或过滤自主车辆的传感器数据(例如,在传感器数据被发送到自主车辆的中央计算系统之前)。在一些实施例中,传感器导轨安装在自主车辆上(例如,自主车辆的顶部、自主车辆的侧部、自主车辆的前部、自主车辆的后部和/或自主车辆的底部)。可以使用传感器导轨围绕自主车辆移动一个或多个传感器,以选择性地捕获传感器数据。例如,系统可以控制传感器导轨和/或自主车辆的各传感器仅捕获一个或多个感兴趣区域(例如,当自主车辆正在沿直线定向路径移动时,自主车辆前方的区域)内的传感器数据。在另一示例中,系统可以在发送传感器数据(例如,发送到中央计算系统)之前过滤传感器数据,以仅包括一个或多个感兴趣区域内的传感器数据。因此,系统可以减少捕获的传感器数据的量,减少发送的传感器数据的量,和/或减少由自主车辆的中央计算系统(和/或自主车辆的其他系统)处理的传感器数据的量。
[0038] 图1示出根据一些实施例的用于选择性地捕获和/或过滤一个或多个感兴趣区域的自主车辆传感器数据的示例系统的示图100。在图1的示例中,该系统包括自主车辆102、自主车辆多区域传感器系统104、自主车辆传感器数据过滤系统106、自主车辆传感器数据处理系统108和通信网络110。在各种实施例中,系统104-108和通信网络110被实现为自主车辆102的一部分。自主车辆102可以能够感测其环境和/或利用有限的人为输入或在没有人为输入的情况下进行导航。本文中讨论的“车辆”通常包括在地面上行驶的车辆(例如,汽车卡车、公共汽车),但也可以包括在空中行驶的车辆(例如,无人驾驶飞机、直升机、飞机等)、在上行驶的车辆(例如,船)等。本文中讨论的“车辆”可以或可能在其中容纳一个或多个乘客。
[0039] 自主车辆多区域传感器系统104可以用于选择性地捕获一个或多个感兴趣区域的传感器数据。自主车辆多区域传感器系统104可以安装在自主车辆的一个或多个部分(例如,外表面、内表面)上,并且可以包括一个或多个传感器。如这里所使用的,传感器可以包括激光扫描系统(例如,激光雷达系统)、雷达系统、相机等。自主车辆多区域传感器系统104可以基于自主车辆的一个或多个参数来确定感兴趣区域。参数可以包括例如自主车辆的定向路径、自主车辆的位置、自主车辆的速度等。
[0040] 在一些实施例中,自主车辆多区域传感器系统104包括安装在自主车辆102上的传感器导轨(例如,如图6所示)。例如,传感器导轨可以安装在自主车辆102的一个或多个部分上(例如,自主车辆的顶部、自主车辆的侧部、自主车辆的前部、自主车辆的后部和/或自主车辆的底部)。
[0041] 在一些实施例中,自主车辆多区域传感器系统104可以控制一些或所有传感器以仅捕获感兴趣区域的传感器数据,而不捕获其他区域的传感器数据。例如,自主车辆可以与不同区域(例如,自主车辆周围的区域)相关联。区域可以包括与自主车辆前方的区域对应的前方区域、与自主车辆左侧的区域对应的左侧区域、与自主车辆右侧的区域对应的右侧区域以及与自主车辆后方的区域对应的后方区域等。可以根据x、y和/或z轴来定义区域。相对于自主车辆的区域大小和/或位置可以变化,如本文其他地方所讨论的。
[0042] 自主车辆多区域传感器系统104可以控制可以旋转的激光扫描仪传感器,以仅在传感器面向感兴趣区域(例如,当车辆正在直线移动时的前方区域)时捕获传感器数据,并且在传感器面向后方区域和/或侧方区域时不捕获传感器数据。类似地,在一些实施例中,自主车辆多区域传感器系统104可以控制面向感兴趣区域的相机来捕获传感器数据(例如,图像数据),而不面向感兴趣区域的相机被控制为不捕获传感器数据。
[0043] 自主车辆传感器数据过滤系统106可以用于接收传感器数据、选择性地过滤感兴趣区域的传感器数据和/或发送过滤后的传感器数据。在一些实施例中,自主车辆传感器数据过滤系统106从自主车辆多区域传感器系统104接收传感器数据,过滤传感器数据,并且将过滤后的传感器数据发送到自主车辆传感器数据处理系统108。例如,这可以减少自主车辆传感器数据处理系统108接收和/或处理的传感器数据的量。在一些实施例中,自主车辆传感器数据过滤系统106被实现为在自主车辆多区域传感器系统104和自主车辆传感器数据处理系统108之间逻辑地和/或物理地设置的一个或多个可编程板(例如,可编程电路板)。例如,对于每种类型的传感器可以存在一个或多个可编程板(例如,用于过滤相机传感器数据的可编程板、用于过滤激光扫描系统传感器数据的可编程板等),或者可以存在用于所有传感器的单个可编程板。
[0044] 自主车辆传感器数据处理系统108可以用于处理传感器数据以感测自主车辆周围的环境和/或使自主车辆执行一个或多个自主车辆驾驶动作(或简称为“驾驶动作”)。例如,自主车辆传感器数据处理系统108可以分析传感器数据以识别自主车辆周围的一个或多个区域中的对象(例如,交通信号、道路标志、其他车辆、行人和障碍物)。如这里所使用的,驾驶动作可以包括没有实时人为输入的情况下的控制制动加速和/或转向。此外,如本文所使用的,“实时人为输入”旨在表示同时控制非自主车辆的车轮移动所需的人为输入,诸如换档、转向控制、制动踏板控制、加速踏板控制、离合器踏板控制等。自主车辆传感器数据处理系统108可以实现为自主车辆的中央计算系统。
[0045] 在各种实施例中,自主车辆传感器数据处理系统108可以不包括过滤功能。这可以允许例如自主车辆传感器数据处理系统108使用功率较小的部件(例如,较慢的处理器、较少的存储器等)来实现,并且仍然实现自主车辆的所有功能。
[0046] 通信网络110可以表示一个或多个计算机网络(例如,LAN、WAN、总线等)或其他传输介质。通信网络110可以提供自主车辆102、系统104-108和/或本文描述的其他系统/引擎之间的通信。在一些实施例中,通信网络110包括一个或多个计算设备、路由器、电缆、总线和/或其他网络拓扑(例如,网格等)。在一些实施例中,通信网络110可以是有线和/或无线的。在各种实施例中,通信网络110可以包括因特网、一个或多个广域网(WAN)或局域网(LAN)、可以是公共的、私有的、基于IP的、基于非IP的一个或多个网络等。
[0047] 图2示出根据一些实施例的自主车辆多区域传感器系统104的示例的示图200。在图2的示例中,自主车辆多区域传感器系统104包括多区域传感器引擎202、感兴趣区域确定引擎204、多区域传感器控制引擎206、多区域传感器通信引擎208和多区域传感器系统数据存储210。
[0048] 多区域传感器引擎202可以用于在自主车辆周围的一个或多个区域中捕获传感器数据。多区域传感器引擎202可以包括一个或多个传感器。传感器可以包括一个或多个激光扫描系统、雷达系统、相机等。
[0049] 在一些实施例中,传感器可以包括可旋转激光扫描系统。可旋转激光扫描系统可以包括激光器、扫描仪和光学器件、光电探测器和接收机电子器件以及位置和导航系统。可旋转激光扫描系统可以在自主车辆(例如,安装有可旋转激光扫描系统的自主车辆)周围的区域上投射光(例如,脉冲激光),并测量反射脉冲。反射脉冲可以用于生成自主车辆周围区域的表示(例如,3D表示)。可旋转激光扫描系统可以旋转360度,以捕获自主车辆周围区域的传感器数据。
[0050] 在一些实施例中,相机可以安装在自主车辆上以捕获自主车辆周围区域的图像(或图像数据)。例如,相机可以捕获自主车辆前方、自主车辆侧方、自主车辆上方、自主车辆下方和/或自主车辆后方的图像。
[0051] 感兴趣区域确定引擎204可以用于确定一个或多个感兴趣区域。可以基于一个或多个参数和/或一个或多个感兴趣区域规则来确定一个或多个感兴趣区域。参数可以包括自主车辆的位置、自主车辆的路径以及自主车辆的速度。位置可以是绝对位置(例如,导航坐标位置)和/或相对位置(例如,相对于一个或多个对象(诸如其他车辆、道路状况)的位置)。路径可以是当前路径(例如,当前直行)和/或预测路径(例如,道路在50米内向右弯曲,因此预测路径在50米内向右转)。
[0052] 感兴趣区域规则可以是预定的和/或可定制的。例如,感兴趣区域规则可以包括以下一些或全部:
[0053] ·当自主车辆正在直行时,前方区域是感兴趣区域
[0054] ·当自主车辆正在转弯(例如,右转)时,前方区域和侧方区域(例如,右侧区域)是感兴趣区域
[0055] ·感兴趣区域的大小(例如,由x、y和/或z轴确定)可以基于自主车辆的一个或多个参数。例如,当低于阈值速度(例如,25mph)移动时,感兴趣区域的大小减小。类似地,感兴趣区域的大小可以基于自主车辆的一个或多个参数而缩放。
[0056] ·感兴趣区域的地点/位置可以基于自主车辆的一个或多个参数。例如,在较低速度下,感兴趣区域可以直接与自主车辆相邻,而在增大的速度下,感兴趣区域可以在远离车辆的一定距离处(例如,在自主车辆前方5m处)开始。
[0057] 多区域传感器控制引擎206可以用于控制多区域传感器引擎202。更具体地,多区域传感器控制引擎206可以用于控制多区域传感器引擎202的一个或多个传感器和/或其部件。在一些实施例中,多区域传感器控制引擎206可以控制可旋转激光扫描仪系统以仅在其面向感兴趣区域时捕获传感器数据,并且控制可旋转激光扫描仪系统以在其不面向感兴趣区域时不捕获传感器数据。例如,当激光扫描仪系统旋转时,可以控制激光扫描仪系统仅在其面向感兴趣区域时投射光。类似地,多区域传感器控制引擎206可以控制激光跟踪系统的其他部件(例如,扫描仪和光学器件等),以便仅在面向感兴趣区域时捕获传感器数据。例如,可旋转激光扫描系统在其不面向感兴趣区域时继续投射光,但是可以控制(例如,旋转/移动)光学器件,使得不投射和/或接收光以便捕获传感器数据。
[0058] 类似地,多区域传感器控制引擎206可以用于控制面向感兴趣区域的一个或多个相机以捕获感兴趣区域的传感器数据,并且控制不面向感兴趣区域的相机以不捕获传感器数据。例如,可以关闭相机,控制相机以不捕获图像,进行控制以删除和/或不存储捕获的图像等。
[0059] 在一些实施例中,多区域传感器控制引擎206可以用于基于一个或多个传感器控制规则来控制一个或多个传感器。例如,传感器控制规则可能包括以下一些或全部:
[0060] ·当自主车辆正在直行时,关闭侧部的传感器
[0061] ·当自主车辆转向时,关闭相反侧的传感器(或使其进入待机模式)
[0062] ·当自主车辆正在缓慢移动时,关闭朝向自主车辆前部远方(例如,预定值)和/或远距离(例如,预定值)变焦的传感器
[0063] ·当自主车辆正在以增加的速度(例如,巡航速度)移动时,仅保持朝向远距离(例如,预定值)的传感器
[0064] ·前置传感器始终打开(例如,始终捕获传感器数据)
[0065] 在一些实施例中,多区域传感器控制引擎206可以用于控制传感器导轨和/或安装在其上的一个或多个传感器(例如,基于一个或多个传感器控制规则)。多区域传感器控制引擎206可以控制传感器导轨和/或一个或多个传感器以沿传感器导轨(例如,安装在自主车辆的一个或多个部分上的传感器导轨)连续地和/或间歇地移动一个或多个传感器。可以相对于当前和/或预测的速度和/或其他自主车辆参数移动传感器。例如,传感器可以在较高的自主车辆速度下沿传感器导轨较快地移动,和/或传感器可以在较慢的自主车辆速度下沿传感器导轨较慢地移动。传感器导轨可以允许系统104有效地捕获感兴趣区域的传感器数据(例如,同时不捕获一个或多个其他区域的传感器数据)。
[0066] 多区域传感器通信引擎208可以用于发送请求,发送和接收通信,和/或以其他方式提供与一个或多个系统的通信。在一些实施例中,多区域传感器通信引擎208用于加密和解密通信。多区域传感器通信引擎208可以用于通过网络或网络的一部分向一个或多个系统发送请求和从一个或多个系统接收数据。取决于实施方式特定的考虑因素,多区域传感器通信引擎208可以通过连接发送请求和接收数据,该连接的全部或部分可以是无线连接。多区域传感器通信引擎208可以请求和接收来自相关系统的消息和/或其他通信。通信可以至少临时(例如,高速缓存和/或持久地)存储在数据存储210中。
[0067] 图3示出根据一些实施例的自主车辆传感器数据过滤系统106的示例的示图300。在图3的示例中,自主车辆传感器数据过滤系统106包括传感器数据过滤引擎302和过滤系统通信引擎304。
[0068] 传感器数据过滤引擎302可以用于基于一个或多个感兴趣区域来过滤传感器数据。例如,传感器数据过滤引擎302可以去除与感兴趣区域以外的区域对应的一些或所有传感器数据。在一些实施例中,传感器数据过滤引擎302可以裁剪与感兴趣区域之外的区域对应的图像数据,当自主车辆正在沿直线路径移动时去除与自主车辆后方的后方区域对应的激光跟踪系统传感器数据,等等。
[0069] 过滤系统通信引擎304可以用于发送请求,发送和接收通信,和/或以其他方式提供与一个或多个系统的通信。在一些实施例中,过滤系统通信引擎304用于加密和解密通信。过滤系统通信引擎304可以用于通过网络或网络的一部分向一个或多个系统发送请求和从一个或多个系统接收数据。取决于实施方式特定的考虑因素,过滤系统通信引擎304可以通过连接发送请求和接收数据,该连接的全部或部分可以是无线连接。过滤系统通信引擎304可以请求和接收来自相关系统的消息和/或其他通信。可以从一个或多个其他系统中截获通信。
[0070] 在一些实施例中,过滤系统通信引擎304可以拦截从自主车辆多区域传感器系统发送的传感器数据。例如,多区域传感器系统可以意图将传感器数据发送到预期目的地(例如,自主车辆传感器数据处理系统),并且过滤系统通信引擎304可以在传感器数据到达预期目的地之前拦截传感器数据。
[0071] 图4示出根据一些实施例的选择性地捕获感兴趣区域的自主车辆传感器数据的方法的示例的流程图400。在该流程图和其他流程图中,流程图400通过示例的方式示出了一系列步骤。应当理解,可以重新组织步骤以用于并行执行,或者如果适用的话重新排序。此外,为了清楚起见,可能已经删除了可能已经包括的一些步骤以避免提供太多信息,并且可以去除包括的一些步骤,但是为了说明清楚起见可能已经包括这些步骤。
[0072] 在步骤402中,自主车辆多区域传感器系统(例如,自主车辆多区域传感器系统104)获得自主车辆(例如,自主车辆102)的一个或多个参数。参数可以包括自主车辆的位置、自主车辆的路径和/或自主车辆的速度。在一些实施例中,感兴趣区域确定引擎(例如,感兴趣区域确定引擎204)获得该参数。
[0073] 在步骤404中,自主车辆多区域传感器系统从自主车辆周围的多个区域中识别感兴趣区域。识别可以基于自主车辆的一个或多个参数。在一些实施例中,感兴趣区域确定引擎识别感兴趣区域。
[0074] 在步骤406中,自主车辆多区域传感器系统基于感兴趣区域来控制安装在传感器导轨(例如,传感器导轨603)上的一个或多个传感器,以沿自主车辆的至少一部分移动一个或多个传感器,并且捕获感兴趣区域的传感器数据,而不捕获自主车辆周围的多个区域中的一个或多个其他区域的传感器数据。一个或多个传感器可以可移动和/或可旋转地联接到传感器导轨。在一些实施例中,多区域传感器控制引擎(例如,多区域传感器控制引擎206)控制一个或多个传感器和/或传感器导轨。
[0075] 在一些实施例中,当自主车辆正在沿直线路径移动时,自主车辆多区域传感器系统控制一个或多个传感器关闭一个或多个传感器的特定部分。一个或多个传感器的特定部分可以包括与自主车辆的左侧区域、右侧区域和后方区域中的任一者相关联的传感器。
[0076] 在一些实施例中,自主车辆多区域传感器系统控制一个或多个传感器的可旋转激光扫描系统,以在其面向感兴趣区域时捕获传感器数据,并且被配置为控制可旋转激光扫描系统以在其不面向感兴趣区域时不捕获传感器数据。
[0077] 在步骤408中,自主车辆多区域传感器系统将捕获的传感器数据提供给处理器(例如,自主车辆传感器数据处理系统108),该处理器能够基于所捕获的感兴趣区域的传感器数据来促进一个或多个自主车辆驾驶动作。在一些实施例中,多区域传感器通信引擎(例如,多区域传感器通信引擎208)提供捕获的传感器数据。
[0078] 在步骤410中,处理器促进一个或多个自主车辆驾驶动作。例如,处理器可以使自主车辆加速、制动、转向等。
[0079] 图5示出根据一些实施例的选择性地过滤感兴趣区域的自主车辆传感器数据的方法的示例的流程图500。
[0080] 在步骤502中,自主车辆多区域传感器系统(例如,自主车辆多区域传感器系统104)使用安装在传感器导轨上的一个或多个传感器来捕获自主车辆周围的多个区域的传感器数据。传感器导轨可以安装在自主车辆(例如,自主车辆102)的一个或多个部分上。可以沿传感器导轨在多个不同点处捕获传感器数据。在一些实施例中,多区域传感器引擎(例如,多区域传感器引擎202)捕获传感器数据。
[0081] 在步骤504中,自主车辆多区域传感器系统获得自主车辆(例如,自主车辆102)的一个或多个参数。参数可以包括自主车辆的位置、自主车辆的路径和/或自主车辆的速度。在一些实施例中,感兴趣区域确定引擎(例如,感兴趣区域确定引擎204)获得该参数。
[0082] 在步骤506中,自主车辆多区域传感器系统从自主车辆周围的多个区域中识别感兴趣区域。识别可以基于自主车辆的一个或多个参数。在一些实施例中,感兴趣区域确定引擎识别感兴趣区域。
[0083] 在步骤508中,自主车辆传感器数据过滤系统(例如,自主车辆传感器数据过滤系统106)过滤捕获的传感器数据以仅包括感兴趣区域的传感器数据。可以响应于感兴趣区域的识别来执行过滤。在一些实施例中,传感器数据由过滤系统通信引擎(例如,过滤系统通信引擎304)从自主车辆多区域传感器系统的多区域传感器通信引擎(例如,多区域传感器通信引擎208)接收。
[0084] 在一些实施例中,过滤可以包括去除(例如,裁剪)感兴趣区域外的图像数据,和/或去除感兴趣区域外的其他传感器数据(例如,激光扫描系统传感器数据)。
[0085] 在步骤510中,自主车辆传感器数据过滤系统将过滤后的传感器数据提供给处理器(例如,自主车辆传感器数据处理系统108)。可以响应于过滤来提供传感器数据。在一些实施例中,过滤系统通信引擎提供过滤后的传感器数据。
[0086] 在步骤512中,处理器促进一个或多个自主车辆驾驶动作。例如,处理器可以使自主车辆加速、制动、转向等。处理器可能不需要执行任何过滤,并且实际上可能不包括过滤功能,因为由处理器接收的传感器数据已经为过滤后的。
[0087] 图6A至图6C示出根据一些实施例的包括传感器导轨603的自主车辆602的示例的示图600和650。传感器导轨603包括一个或多个传感器604。例如,一个或多个传感器604可以安装在传感器导轨603和/或自主车辆602上。可以控制传感器导轨603以沿和/或围绕自主车辆602的各个部分移动传感器604,以捕获感兴趣区域的传感器数据(例如,同时不捕获其他区域的传感器数据)。例如,如图所示,自主车辆602可以与多个区域606-612相关联。区域606是前方区域,区域608和612是侧方区域,区域610是后方区域。如图6A所示,左侧区域612是感兴趣区域,并且一个或多个传感器604正在捕获该感兴趣区域612的传感器数据(例如,并且不捕获其他区域的传感器数据)。如图6B所示,前方区域606是感兴趣区域,并且一个或多个传感器604正在捕获该感兴趣区域606的传感器数据。区域608和610可以不是感兴趣区域(例如,因为自主车辆正在沿直线路径移动)。因此,如图6C所示,当一个或多个传感器604面向后方区域610时(如虚线所示),一个或多个传感器604不捕获后方区域610的传感器数据。
[0088] 如图6A所示,传感器导轨603可以安装在自主车辆602的顶部(例如,车顶)上。如图6B至图6C所示,传感器导轨603可以沿自主车辆的前部、侧部和/或后部安装在自主车辆周围。应当理解,可以包括一个或多个传感器导轨603以用于单个自主车辆602,如图所示和/或以其他方式安装(例如,在自主车辆602的底部)。
[0089] 硬件实施方式
[0090] 本文描述的技术由一个或多个专用计算设备实现。专用计算设备可以是硬连线的以执行该技术,或者可以包括电路或数字电子设备,诸如一个或多个专用集成电路(ASIC)或现场可编程阵列(FPGA),其被持久地编程为执行该技术,或者可以包括一个或多个硬件处理器,该硬件处理器被编程为根据固件、存储器、其他存储装置或组合中的程序指令来执行该技术。这种专用计算设备还可以将定制的硬连线逻辑、ASIC或FPGA与定制编程相结合以实现该技术。专用计算设备可以是台式计算机系统、服务器计算机系统、便携式计算机系统、手持设备、网络设备或包含硬连线和/或程序逻辑以实现该技术的任何其他设备或设备的组合。
[0091] 计算设备通常由操作系统软件控制和协调,诸如iOS、Android、Chrome OS、Windows XP、Windows Vista、Windows 7、Windows 8、Windows Server、Windows CE、Unix、Linux、SunOS、Solaris、iOS、Blackberry OS、VxWorks或其他兼容操作系统。在其他实施例中,计算设备可以由专有操作系统控制。传统的操作系统控制和调度用于执行的计算机进程,执行存储器管理,提供文件系统、网络、I/O服务,以及提供用户界面功能,诸如图形用户界面(“GUI”)等。
[0092] 图7是示出可以在其上实现本文描述的任何实施例的计算机系统700的框图。计算机系统700包括总线702或用于传送信息的其他通信机构、与总线702耦合以处理信息的一个或多个硬件处理器704。硬件处理器704可以例如是一个或多个通用微处理器
[0093] 计算机系统700还包括主存储器706,诸如随机存取存储器(RAM)、高速缓存和/或其他动态存储设备,其耦合到总线702以用于存储要由处理器704执行的信息和指令。存储器706还可以用于在执行要由处理器704执行的指令期间存储临时变量或其他中间信息。当存储在处理器704可访问的存储介质中时,这些指令使计算机系统700进入专用机器,即自定义以执行指令中指定的操作。
[0094] 计算机系统700还包括耦合到总线702的只读存储器(ROM)708或其他静态存储设备,用于存储处理器704的静态信息和指令。存储设备710(诸如磁盘、光盘或USB拇指驱动器(闪存驱动器)等)被提供并耦合到总线702以存储信息和指令。
[0095] 计算机系统700可以经由总线702耦合到输出设备712,诸如阴极射线管(CRT)或LCD显示器(或触摸屏),以用于向计算机用户显示信息。包括字母数字键和其他键的输入设备714耦合到总线702,以用于将信息和命令选择传送到处理器704。另一种类型的用户输入设备是光标控制716,诸如鼠标轨迹球或光标方向键,以用于将方向信息和命令选择传送到处理器704并用于控制显示器712上的光标移动。该输入设备通常在两个轴上具有两个自由度,第一轴(例如,x)和第二轴(例如,y),其允许设备指定平面中的位置。在一些实施例中,可以通过在没有光标的情况下接收触摸屏上的触摸来实现与光标控制相同的方向信息和命令选择。
[0096] 计算系统700可以包括用户界面模,用于实现GUI,该GUI可以作为由计算设备执行的可执行软件代码存储在大容量存储设备中。举例来说,该模块和其他模块可以包括:部件,例如软件部件、面对对象的软件部件、类部件和任务部件;工艺;功能;属性;过程;子程序;程序代码段;驱动器;固件;微代码;电路;数据;数据库;数据结构;表格;阵列;以及变量。
[0097] 通常,这里使用的词语“模块”指代以硬件或固件实现的逻辑,或者指代以编程语言(例如,Java、C或C++)编写的可能具有入口和出口点的软件指令的集合。软件模块可以被编译并链接到可执行程序中,安装在动态链接库中,或者可以用解译编程语言(例如BASIC、Perl或Python)编写。应当理解,软件模块可以从其他模块或从它们自己调用,和/或可以响应于检测到的事件或中断而被调用。被配置为用于在计算设备上执行的软件模块可以提供在计算机可读介质上,诸如光盘、数字视频盘、闪存驱动器、磁盘或任何其他有形介质,或者作为数字下载(并且可以最初以在执行之前需要安装、解压缩或解密的压缩或可安装格式存储)。这些软件代码可以部分或全部存储在执行计算设备的存储器设备上,以供计算设备执行。软件指令可以嵌入固件中,诸如EPROM。还应当理解,硬件模块可以包括连接的逻辑单元,诸如门和触发器,和/或可以包括可编程单元,诸如可编程门阵列或处理器。这里描述的模块或计算设备功能优选地实现为软件模块,但是可以用硬件或固件表示。通常,这里描述的模块指代逻辑模块,其可以不管它们的物理组织或存储而与其他模块组合或被分成子模块。
[0098] 计算机系统700可以使用定制的硬连线逻辑、一个或多个ASIC或FPGA、固件和/或程序逻辑来实现本文所述的技术,其与计算机系统组合使计算机系统700成为或被编成为特殊用途机器。根据一个实施例,这里的技术由计算机系统700响应于处理器704执行包含在主存储器706中的一个或多个指令的一个或多个序列来执行。这些指令可以从另一个存储器(诸如存储设备710)读入主存储器706中。包括在主存储器706中的指令序列的执行使得处理器704执行本文所述的处理步骤。在替代实施例中,可以使用硬连线电路代替软件指令或与软件指令组合。
[0099] 这里使用的术语“非暂时性介质”和类似术语指代存储使机器以特定方式操作的数据和/或指令的任何介质。这种非暂时性介质可以包括非易失性介质和/或易失性介质。非易失性介质包括例如光盘或磁盘,诸如存储设备710。易失性介质包括动态存储器,诸如主存储器606。常规形式的非暂时性介质包括例如软盘、可折叠盘、硬盘、固态驱动器、磁带或任何其他磁数据存储介质、CD-ROM、任何其他光学数据存储介质、任何具有孔图案的物理介质、RAM、PROM和EPROM、FLASH-EPROM、NVRAM、任何其他存储器芯片或盒式磁带以及相同的网络版本。
[0100] 非暂时性介质不同于但可以与传输介质结合使用。传输介质参与非暂时性介质之间的信息传递。例如,传输介质包括同轴电缆、线和光纤,包括包含总线702的导线。传输介质也可以采用声波或光波的形式,诸如在无线电波和红外数据通信期间产生的声波或光波。
[0101] 在将一个或多个指令的一个或多个序列传送到处理器704以供执行时可以涉及各种形式的介质。例如,指令最初可以承载在远程计算机的磁盘或固态驱动器上。远程计算机可以将指令加载到其动态存储器中,并使用调制解调器通过电话线发送指令。计算机系统700本地的调制解调器可以在电话线上接收数据并使用红外发射机将数据转换成红外信号。红外检测器可以接收红外信号中携带的数据,并且适当的电路可以将数据放置在总线
702上。总线702将数据传送到主存储器706,处理器704从中检索并执行指令。主存储器706接收的指令可以检索并执行指令。主存储器706接收的指令可以可选地在由处理器704执行之前或之后存储在存储设备710上。
[0102] 计算机系统700还包括耦合到总线702的通信接口718。通信接口718提供耦合到连接到一个或多个本地网络的一个或多个网络链路的双向数据通信。例如,通信接口718可以是综服务务数字网(ISDN)卡、电缆调制解调器、卫星调制解调器或调制解调器,以提供与对应类型的电话线的数据通信连接。作为另一示例,通信接口718可以是局域网(LAN)卡,以提供与兼容LAN(或与WAN通信的WAN部件)的数据通信连接。还可以实现无线链路。在任何这样的实施方式中,通信接口718发送和接收携带表示各种类型信息的数字数据流的电信号、电磁信号或光信号
[0103] 网络链路通常通过一个或多个网络向其他数据设备提供数据通信。例如,网络链路可以提供通过本地网络到主计算机或由因特网服务提供商(ISP)操作的数据设备的连接。ISP又通过现在通常称为“因特网”的全球分组数据通信网络提供数据通信服务。本地网络和因特网都使用携带数字数据流的电信号、电磁信号或光信号。通过各种网络的信号和网络链路上的信号以及通过通信接口718(其将数字数据传送到计算机系统700和从计算机系统600传送数字数据)是传输介质的示例形式。
[0104] 计算机系统700可以通过网络、网络链路和通信接口718发送消息和接收数据,包括程序代码。在因特网示例中,服务器可以通过因特网、ISP、本地网络和通信接口718发送应用程序的请求代码。
[0105] 所接收的代码可以在其被接收时由处理器704执行,和/或存储在存储设备710或其他非易失性存储器中以供稍后执行。
[0106] 前面部分中描述的每个过程、方法和算法可以由包括计算机硬件的一个或多个计算机系统或计算机处理器执行的代码模块实现,并且完全或部分自动化。过程和算法可以部分或全部地在专用电路中实现。
[0107] 上述各种特征和过程可以彼此独立地使用,或者可以以各种方式组合。所有可能的组合和子组合都旨在落入本公开的范围内。另外,在一些实施方式中可以省略某些方法或过程框。本文描述的方法和过程也不限于任何特定序列,并且与其相关的框或状态可以以适当的其他序列执行。例如,所描述的框或状态可以以不同于具体公开的顺序执行,或者多个框或状态可以组合为单个框或状态。示例框或状态可以以串行、并行或以某种其他方式执行。可以向所公开的示例实施例添加框或状态或从其中移除框或状态。这里描述的示例系统和部件可以与所描述的不同地配置。例如,与所公开的示例实施例相比,可以添加、移除或重新布置元件。
[0108] 除非另有说明,或者在所使用的上下文中以其他方式理解,否则条件性语言,诸如“可以”、“可”、“有可能”或“可能”通常旨在表达特定实施例包括而其他实施例不包括特定特征、元素和/或步骤。因此,这种条件性语言通常不旨在暗示一个或多个实施方式以任何方式需要特征、元素和/或步骤,或者一个或多个实施例必须包括用于在有或没有用户输入或提示的情况下决定在任何特定实施例中是否包括或要实现这些特征、元素和/或步骤的逻辑。
[0109] 本文描述和/或附图中描绘的流程图中的任何过程描述、元素或框应被理解为潜在地表示包括用于实现过程中的特定逻辑功能或步骤的一个或多个可执行指令的代码的模块、片段或部分。替代实施方式包括在本文描述的实施方案的范围内,其中可以删除元素或功能,从所示或讨论的顺序执行,包括基本上同时或以相反的顺序,取决于所涉及的功能,如本领域技术人员将理解的。
[0110] 应该强调的是,可以对上述实施例进行许多变化和修改,其中的元素应被理解为是其他可接受的示例。所有这些修改和变化旨在包括在本公开的范围内。前面的描述详述了本发明的某些实施例。然而,应当理解,无论前述内容在文本中如何详细,本发明都可以以多种方式实施。如上所述,应当注意,在描述本发明的某些特征或方面时使用特定术语不应被视为意味着术语在本文中被重新定义为限于包括与术语相关的本发明的特征或方面的任何特定特征。因此,本发明的范围应根据所附权利要求及其任何等同物来解释。
[0111] 引擎、部件和逻辑
[0112] 本文将某些实施例描述为包括逻辑或多个部件、引擎或机构。引擎可以构成软件引擎(例如,在机器可读介质上体现的代码)或硬件引擎。“硬件引擎”是能够执行某些操作的有形单元,并且可以以某种物理方式配置或布置。在各种示例实施例中,一个或多个计算机系统(例如,独立计算机系统、客户端计算机系统或服务器计算机系统)或计算机系统的一个或多个硬件引擎(例如,处理器或一组处理器)可以由软件(例如,应用或应用部分)配置为可以执行如本文所述的某些操作的硬件引擎。
[0113] 在一些实施例中,硬件引擎可以机械地、电子地或其任何合适的组合来实现。例如,硬件引擎可以包括永久配置为执行某些操作的专用电路或逻辑。例如,硬件引擎可以是专用处理器,诸如现场可编程门阵列(FPGA)或专用集成电路(ASIC)。硬件引擎还可以包括由软件临时配置以执行某些操作的可编程逻辑或电路。例如,硬件引擎可以包括由通用处理器或其他可编程处理器执行的软件。一旦由这样的软件配置,硬件引擎就变成专门定制的特定机器(或机器的特定部件)以执行配置的功能,而不再是通用处理器。应当理解,在专用和永久配置的电路中或在临时配置的电路(例如,由软件配置)中机械地实现硬件引擎的决定可以由成本和时间考虑来驱动。
[0114] 因此,短语“硬件引擎”应该被理解为包含有形实体,即物理构造、永久配置(例如,硬连线)或临时配置(例如,编程)以按照特定方式操作或执行本文所述的某些操作的实体。如这里所使用的,“硬件实现的引擎”指代硬件引擎。考虑其中临时配置(例如,编程)硬件引擎的实施例,不需要在任何一个时刻配置或实例化每个硬件引擎。例如,在硬件引擎包括由软件配置成为专用处理器的通用处理器的情况下,通用处理器可以在不同时间被配置为分别不同的专用处理器(例如,包括不同的硬件引擎)。软件相应地配置特定的一个或多个处理器,例如,在一个时刻构成特定的硬件引擎,并在不同的时刻构成不同的硬件引擎。
[0115] 硬件引擎可以向其他硬件引擎提供信息并从其接收信息。因此,所描述的硬件引擎可以被视为通信地耦合。在同时存在多个硬件引擎的情况下,可以通过在两个或更多个硬件引擎之间或之中的信号传输(例如,通过适当的电路和总线)来实现通信。在其中在不同时间配置或实例化多个硬件引擎的实施例中,可以例如通过存储和检索多个硬件引擎可访问的存储器结构中的信息来实现这些硬件引擎之间的通信。例如,一个硬件引擎可以执行操作并将该操作的输出存储在与其通信耦合的存储器设备中。然后,另一硬件引擎可以稍后访问存储器设备以检索和处理存储的输出。硬件引擎还可以发起与输入或输出设备的通信,并且可以在资源(例如,信息集合)上操作。
[0116] 本文描述的示例方法的各种操作可以至少部分地由临时配置(例如,通过软件)或永久配置为执行相关操作的一个或多个处理器来执行。无论是临时配置还是永久配置,这样的处理器可以构成处理器实现的引擎,其用于执行本文描述的一个或多个操作或功能。如这里所使用的,“处理器实现的引擎”指代使用一个或多个处理器实现的硬件引擎。
[0117] 类似地,这里描述的方法可以至少部分地由处理器实现,其中特定处理器是硬件的示例。例如,方法的至少一些操作可以由一个或多个处理器或处理器实现的引擎执行。此外,一个或多个处理器还可以操作以支持“计算”环境中的相关操作的性能或“软件即服务”(SaaS)。例如,至少一些操作可以由一组计算机(作为包括处理器的机器的示例)执行,这些操作可以经由网络(例如,因特网)并且经由一个或多个适当的接口(例如,应用程序接口(API)来访问。
[0118] 某些操作的性能可以在处理器之间分配,不仅驻留在单个机器内,而且部署在多个机器上。在一些示例实施例中,处理器或处理器实现的引擎可以位于单个地理位置(例如,在家庭环境、办公室环境或服务器群内)。在其他示例实施例中,处理器或处理器实现的引擎可以分布在多个地理位置。
[0119] 语言
[0120] 在整个说明书中,多个实例可以实现被描述为单个实例的部件、操作或结构。尽管一个或多个方法的各个操作被示出并描述为单独的操作,但是可以同时执行一个或多个单独的操作,并且不需要以所示的顺序执行操作。在示例配置中作为单独部件呈现的结构和功能可以实现为组合结构或部件。类似地,作为单个部件呈现的结构和功能可以实现为单独的部件。这些和其他变化、修改、添加和改进都落入本文主题的范围内。
[0121] 尽管已经参考特定示例实施例描述了主题的概述,但是在不脱离本公开的实施例的更宽范围的情况下,可以对这些实施例进行各种修改和改变。本文的主题的这些实施例可以单独地或共同地由词语“本发明”来引用,仅是为了方便,并且在事实上公开了多个发明概念的情况下,不打算主动地将本申请的范围限制为任何单个发明或概念。
[0122] 足够详细地描述本文示出的实施例以使本领域的技术人员能够实践公开教导。可以利用并从中导出其他实施例,使得可以在不脱离本公开的范围的情况下进行结构和逻辑替换和改变。因此,该详细描述不应被视为具有限制意义,并且各种实施例的范围仅由所附权利要求以及这些权利要求所享有的等同物的全部范围来限定。
[0123] 应当理解,“引擎”、“系统”、“数据存储”和/或“数据库”可以包括软件、硬件、固件和/或电路。在一个示例中,包括能够由处理器执行的指令的一个或多个软件程序可以执行本文描述的引擎、数据存储、数据库或系统的一个或多个功能。在另一示例中,电路可以执行相同或类似的功能。替代实施例可以包括更多、更少或功能上等同的引擎、系统、数据存储或数据库,并且仍然在本实施例的范围内。例如,各种系统、引擎、数据存储和/或数据库的功能可以不同地组合或划分。
[0124] “开源”软件在此定义为允许作为源代码和编译形式进行分发的源代码,具有获得源的广为人知和索引的方法,可选地具有允许修改和衍生物许可
[0125] 这里描述的数据存储可以是任何合适的结构(例如,活动数据库、关系数据库、自引用数据库、表、矩阵、阵列、平面文件、面向文档的存储系统、非关系型No-SQL系统等),可以是基于云的或其他方式。
[0126] 如本文所使用的,词语“或”可以以包含性或排他性的含义来解释。此外,可以为在此描述为单个实例的资源、操作或结构提供多个实例。另外,各种资源、操作、引擎、引擎和数据存储之间的边界在某种程度上是任意的,并且在特定说明性配置的上下文中示出了特定操作。设想了其他功能分配,并且可以落入本公开的各种实施例的范围内。通常,在示例配置中作为单独资源呈现的结构和功能可以实现为组合结构或资源。类似地,作为单个资源呈现的结构和功能可以实现为单独的资源。这些和其他变化、修改、添加和改进落入由所附权利要求表示的本公开的实施例的范围内。因此,说明书和附图被认为是说明性的而不是限制性的。
[0127] 除非另有说明,或者在所使用的上下文中以其他方式理解,否则条件性语言,诸如“可以”、“可”、“有可能”或“可能”通常旨在表达特定实施例包括而其他实施例不包括特定特征、元素和/或步骤。因此,这种条件性语言通常不旨在暗示一个或多个实施方式以任何方式需要特征、元素和/或步骤,或者一个或多个实施例必须包括用于在有或没有用户输入或提示的情况下决定在任何特定实施例中是否包括或要实现这些特征、元素和/或步骤的逻辑。
[0128] 尽管为了说明的目的已经基于当前被认为是最实用和优选的实施方式详细描述了本发明,但是应该理解,这样的细节仅用于该目的并且本发明不是本发明的实施例仅限于所公开的实施方式,而是相反,旨在覆盖在所附权利要求的精神和范围内的修改和等同布置。例如,应该理解,本发明设想,在可能的范围内,任何实施例的一个或多个特征可以与任何其他实施例的一个或多个特征组合。
[0129] 为了说明和描述的目的提供了本发明的前述描述。其并非旨在穷举或将本发明限制所公开的确切形式。本发明的广度和范围不应受任何上述示例性实施例的限制。许多修改和变化对于本领域技术人员来说是显而易见的。修改和变化包括所公开特征的任何相关组合。选择和描述实施例是为了最好地解释本发明的原理及其实际应用,从而使得本领域其他技术人员能够理解本发明的各种实施例并且具有适合于预期的特定用途的各种修改。本发明的范围旨在由所附权利要求及其等同物限定。
相关专利内容
标题 发布/更新时间 阅读量
翻转导轨 2020-05-13 676
一种导轨 2020-05-13 573
导轨 2020-05-11 578
导轨 2020-05-11 799
一种电梯导轨 2020-05-11 353
导轨 2020-05-11 881
导轨设备 2020-05-13 216
槽钢导轨 2020-05-13 832
导轨 2020-05-11 98
一种电梯导轨自动钻孔机 2020-05-13 857
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈