确定汽车位置的制作方法

文档序号:16851192发布日期:2019-02-12 22:45阅读:237来源:国知局
确定汽车位置的制作方法

正在利用像传感器、照相机、自动驾驶能力等等的越来越尖端的技术来制造汽车。这些传感器富集汽车(sensor-richcar)与可能还没有嵌入传感器、照相机,和/或其他尖端技术的传统汽车共用道路。通过可用于汽车的不同技术能力,为道路上的所有汽车实现高效行驶环境可能是困难的。

附图说明

以下具体实施方式参考附图,其中:

图1是描绘其中各个示例可以被实施为确定汽车位置的系统的示例环境的框图。

图1a是描绘用于确定汽车位置的示例边缘设备的框图。

图1b是描绘用于确定汽车位置的示例边缘设备的框图。

图2a是描绘用于确定汽车位置的示例边缘设备的框图。

图2b是描绘用于确定汽车位置的示例边缘设备的框图。

图3是描绘用于确定汽车位置的示例方法的流程图。

图4是描绘用于确定汽车位置的示例方法的流程图。

具体实施方式

以下具体实施方式参考附图。只要可能,在附图和以下描述中使用相同的附图标记来指代相同的或类似的部分。然而,将明确理解,附图仅仅为了图示和描述的目的。尽管在本文档中描述了若干示例,但修改、适配和其他实施方式是可能的。因此,以下具体实施方式并未限制所公开的示例。相反,可以通过所附权利要求来限定所公开的示例的适当的范围。

在本文使用的术语仅用于描述各个实施例目的,并不意图进行限制。如在本文所使用的,单数形式“一”和“该”也意图包括复数形式,除非上下文清楚地另外指出其他。如在本文所使用的,术语“多个”被定义为两个,或超过两个。如本文所使用的,术语“另一个”被定义为至少第二个或更多个。如在本文所使用的,术语“被耦接”被定义为被连接,无论是在没有任何中间元件的情况下直接地被连接还是利用至少一个中间元件间接地被连接,除非另外指出其他。能够将两个元件机械地、电学地耦接或通过通信信道、路径、网络,或系统将两个元件通信地连结。如在本文所使用的,术语“和/或”指的是并且包含一个或多个相关联的所列项的任何和所有可能的组合。也将理解,尽管在本文可以使用术语第一、第二、第三,等等来描述各个元素,但这些元素不应当被这些术语所限制,因为这些术语仅用于将一个元素与另一个相区分,除非另外被陈述或上下文指出其他。如在本文使用的,术语“包括”意指包括但不限于。术语“基于”意指至少部分地基于。

上文公开描述许多用于确定汽车位置的示例实施方式。所公开的示例可以包括用于确定汽车位置的系统、设备、计算机可读存储介质,以及方法。为了解释的目的,参考图1至4中图示出的部件来描述某些示例。然而,所图示的部件的功能可以重叠,并且可以存在于较少或较多数量的元件和部件中。

此外,所说明的元件的功能的所有或一部分可以与若干地理上地散布的位置共同存在或者分布在若干地理上地散布的位置。而且,可以在各种环境中实施所公开的示例,并且所公开的示例不局限于所图示的示例。此外,与图3至4结合描述的操作的序列是示例并且并不意图进行限制。在不背离所公开的示例的范围的情况下,可以使用附加的或较少的操作、或可以使用或改变操作的组合。此外,按照所公开的示例的实施方式不需要以任何特定次序执行操作的序列。因此,本公开仅仅阐述实施方式的可能的示例,并且可以对所描述的示例作出许多变化和修改。所有此类修改和变化意图被包括在本公开的范围内,并且由所附权利要求来保护。

正在利用像传感器、照相机、自动驾驶能力等等的越来越尖端的技术来制造汽车。这些传感器富集汽车与可能还没有嵌入传感器、照相机,和/或其他尖端技术的传统汽车共用道路。

汽车可以包括例如包括任何运载工具,该运载工具包括引擎、至少一个轮、可以容纳货物和/或人的车体,并且能够使用引擎和至少一个轮从一个位置移动到另一个位置。传感器富集汽车可以包括例如具有使用嵌入的传感器、照相机、机载计算机、lidar(光检测和雷达),和/或其他技术来确定其自己在道路上的位置和其附近的物体的位置的技术能力的任何汽车。传统汽车可以包括例如不包括确定其自己在道路上的位置的技术能力的任何汽车。在一些示例中,传统汽车可能也不包括确定其附近的其他物体的能力。

传感器富集汽车能够基于自身对其在道路上的位置和其附近的其他物体的位置的了解来确定行进的速度、行进的车道、汽车是否需要在其自己的车道中再调整、汽车是否需要在道路中改变到另一车道,和/或其他判定以便在道路中更高效地行驶。然而,传统汽车可能需要信赖传统的gps解决方案用于导航服务,具有在清晰的视线中的从5米至10米变化的、并且在商业区环境中可能降低的准确度。照此,传统汽车可能不能够确定本身在道路上的精确位置,或者做出关于如何在道路上更高效地行驶的判定。传统汽车不能够确定自身的精确位置也可以妨碍传感器富集汽车的高效地行驶的能力,这是因为传感器富集汽车可能不具有关于传统汽车如何被定位或传统汽车想要移动的准确的数据。照此,在使得所有汽车能够在道路上高效地行驶方面,存在技术挑战。

针对这些技术挑战的技术方案将通过确切地定位传统和传感器富集汽车两者来实现更高效的行驶环境。定位技术可以利用自报定位(self-reportedpositioning)和通过传感器富集汽车采集的与在传感器富集汽车附近的其他汽车有关的数据,来确定汽车在道路上的更准确且精确的位置。例如,定位技术可以利用传感器富集汽车的处理能力,来分析来自传感器富集汽车中的传感器、照相机、lidar,和/或其他物体检测技术的数据。传感器富集汽车可以构造在其附近的每一辆汽车的视觉鉴别性特征(visualfingerprint)的集合,并且可以向可通信地耦接到传感器富集汽车的边缘设备提供该视觉鉴别性特征的集合。边缘设备也可以从可通信地连接到边缘设备的移动设备来接收位置信息和关于传统汽车的信息。边缘设备可以将汽车的视觉鉴别性特征与传统汽车信息进行关联,以确定传感器富集汽车和传统汽车的更准确的位置。在一些示例中,边缘设备也可以在优化所确定的位置时考虑道路边界。边缘设备然后可以使用所跟踪的车辆动态来帮助建议汽车的未来的移动。

在本文讨论的示例通过提供确定汽车位置的技术方案来解决这些技术挑战。例如,技术方案可以通过边缘计算设备的物理处理器来接收传统汽车的位置数据以及与传统汽车的品牌(make)和型号有关的信息。第一边缘设备也可以从传感器富集汽车接收与在传感器富集汽车的附近观察到的汽车的集合有关的传感器数据的集合、观察到的汽车的集合的位置数据的集合,和观察到的汽车的集合的视觉数据的集合,其中,观察到的汽车的集合包括传统汽车和传感器富集汽车。边缘设备然后可以基于观察到的汽车的集合的位置数据的集合、视觉数据的集合,和传感器数据的集合来确定传统汽车的更新后的位置,并且提供传统汽车的更新后的位置。

图1是其中各个示例可以被实施为促进确定汽车位置的系统10的示例环境。在一些示例中,促进确定汽车位置的系统10可以包括各种部件,诸如边缘设备100,传感器富集汽车101a、101b、…、101n的集合,与传统汽车103a、103b、…、103n的集合相关联的移动设备102a、102b、…、102n的集合,云服务器50,和/或可通信地耦接到边缘设备100的其他设备。每个边缘设备100可以与传感器富集汽车(例如,传感器富集汽车101a、101b、…、101n)、移动设备(例如,移动设备102a、102b、…、102n)、云服务器50,和/或网络中的其他部件通信和/或从传感器富集汽车(例如,传感器富集汽车101a、101b、…、101n)、移动设备(例如,移动设备102a、102b、…、102n)、云服务器50,和/或网络中的其他部件接收数据。

边缘设备可以包括接入点、网络交换机,或网络上的其他硬件设备,该其他硬件设备包括实施机器可读指令以促进网络中的通信的物理处理器(例如,物理处理器110)。物理处理器110可以是中央处理单元(cpu)、微处理器,和/或适于执行关于图1描述的功能的其他硬件设备中的至少一个。

云服务器50可以是在云网络中的、可通信地耦接到边缘设备100的、促进由边缘设备100操作的数据的处理和/或存储的任何服务器。

传感器富集汽车101a、101b、…、101n可以是可以与边缘设备100通信(例如,经由小云块、机载计算机,和/或传感器富集汽车101a中的其他传输能力进行通信)的任何传感器富集汽车。

移动设备102a、102b、…、102n可以是包括物理处理器、非暂时性机器可读存储介质、无线和/或蜂窝网络连接能力,以及gps功能并且能够与边缘设备100通信的任何移动计算设备。每个移动设备102a、102b、…、102n可以与相应的传统汽车103a、103b、…、103n相关联。

如上所述,传感器富集汽车(例如,传感器富集汽车101n)例如可以包括具有使用嵌入的传感器、照相机、机载计算机、lidar(光检测和雷达),和/或其他技术来确定其自己在道路上的位置和在其附近的物体的位置的技术能力的任何汽车。传统汽车(例如,传统汽车103n)例如可以包括不包括确定其自己在道路上的位置的技术能力的任何汽车。在一些示例中,传统汽车(例如,传统汽车103n)也可能不包括确定在其附近的其他物体的能力。

系统10可以利用自报定位和由传感器富集汽车收集的与在传感器富集汽车附近的其他汽车有关的数据,来确定汽车在道路上的更准确且精确的位置。例如,系统10可以利用传感器富集汽车(例如,传感器富集汽车101a、101b、…、101n),移动设备102a、102b、…、102n,边缘设备100,云服务器50,和/或其任何组合的处理能力,来确定汽车在道路上的更准确且精确的位置。

在一些示例中,传感器富集汽车(例如,汽车101n)可以包括物理处理器,该物理处理器实施存储在非暂时性机器可读存储介质中的机器可读指令,以对来自传感器富集汽车(例如,汽车101n)中的传感器、照相机、lidar,和/或其他物体检测技术的数据进行分析。传感器富集汽车(例如,汽车101n)的机器可读存储介质可以是包含或者存储可执行指令的任何电子、磁性、光学,或其他物理存储设备。在一些实施方式中,机器可读存储介质可以是非暂时性存储介质,其中术语“非暂时性”不包含暂时传播的信号。在一个示例中,存储在机器可读介质中的机器可读指令可以是安装数据包的一部分,当安装数据包被安装时,能够由传感器富集汽车(例如,传感器富集汽车101n)的物理处理器来执行。在另一个示例中,机器可读指令可以是应用(例如,小云块和/或其他类型的应用)或者已经安装在传感器富集汽车(例如,传感器富集汽车101n)中的应用的一部分。在一些示例中,传感器富集汽车(例如,传感器富集汽车101n)的物理处理器可以实施机器可读指令,以执行在本文描述的功能。

传感器富集汽车(例如,传感器富集汽车101n)可以从传感器的集合、照相机的集合、lidar、a-gps,和/或传感器富集汽车的其他物体检测技术获取数据,以检测在传感器富集汽车附近的汽车。传感器富集汽车的附近例如可以包括在传感器富集汽车周围的预定的距离、物体检测能够检测到物体的距离,和/或与传感器富集汽车有关的另一个距离。

在一些示例中,传感器富集汽车(例如,传感器富集汽车101n)可以对传感器富集汽车的照相机的集合的每n个帧执行物体检测,以在帧中检测汽车,其中n是正整数。检测到的汽车可以包括传统汽车和传感器富集汽车两者。因为来自照相机的集合的帧可以包括汽车的不同的视角,所以传感器富集汽车(例如,传感器富集汽车101n)可以使用训练物体微分器(trainedobjectdifferentiator),在给定图像的集合时,训练物体微分器可以确定相同还是不同的物体出现在那些图像中。传感器富集汽车(例如,传感器富集汽车101n)可以使用训练物体微分器来将确定检测到的汽车的最后的集合作为通过传感器富集汽车的物体检测技术检测到的观察到的汽车的集合。在一些示例中,传感器富集汽车(例如,传感器富集汽车101n)可以包括针对观察到的汽车的集合中的每一辆汽车的在slam(“同时定位与建图(simultaneouslocalizationandmapping)”)地图上的可视数据。

传感器富集汽车(例如,汽车传感器富集汽车101n)然后可以基于经由lidar接收的信息来估计从传感器富集汽车到观察到的汽车的集合中的每一辆汽车的距离和/或角度。在一些示例中,传感器富集汽车(例如,传感器富集汽车101n)可以在从照相机接收到的帧的上面覆盖lidar点云,以估计观察到的汽车的集合的距离和角度。在这些示例中,传感器富集汽车(例如,传感器富集汽车101n)可以使用旋转和转换来变换点云,以确保lidar点云和照相机帧的视角的对称性。在一些示例中,传感器富集汽车(例如,传感器富集汽车101n)可以(在使用旋转和转换执行适当的变换之后)在slam地图上覆盖lidar点云。

传感器富集汽车(例如,传感器富集汽车101n)可以生成观察到的汽车的集合中的每一辆汽车的视觉鉴别性特征。观察到的汽车的视觉鉴别性特征可以例如包括与观察到的汽车相关联的slam数据、观察到的汽车的视觉数据、汽车相对于传感器富集汽车的距离/角度信息、与观察到的汽车有关的元数据(例如,与颜色、车门的数量、汽车类型、汽车特征,等等有关的信息)、观察到的汽车的gps位置,及其任何组合,和/或识别汽车的其他信息。

传感器富集汽车(例如,传感器富集汽车101n)可以向边缘设备100发送检测到的汽车的集合中的每一辆汽车的生成的视觉鉴别性特征的集合。在一些示例中,传感器富集汽车(例如,传感器富集汽车101n)可以向边缘设备100发送生成的视觉鉴别性特征的集合、观察到的汽车的集合中的每一辆汽车的gps位置、观察到的汽车的集合中的每一辆汽车的lidar信息、传感器富集汽车(例如,汽车传感器富集汽车)的位置信息和观察到的汽车的集合的其余汽车的位置信息,和/或其他信息。

在一些示例中,传感器富集汽车(例如,传感器富集汽车101n)可以向边缘设备100发送观察到的汽车的集合中的每一辆汽车的lidar信息、传感器富集汽车(例如,汽车传感器富集汽车)的位置信息和观察到的汽车的集合的其余汽车的位置信息,和/或用于确定视觉鉴别性特征的集合的其他信息,并且边缘设备可以生成视觉鉴别性特征的集合。

系统10也可以利用与传统汽车(例如,传统汽车103n)相关联的移动设备(例如,移动设备102n)的处理能力,来确定汽车在道路上的更准确且精确的位置。

在一些示例中,移动设备(例如,移动设备102n)可以包括物理处理器,该物理处理器实施存储在非暂时性机器可读存储介质中的机器可读指令,以确定与相关联的传统汽车(例如,传统汽车103n)有关的位置信息和汽车信息,并且向边缘设备100提供该位置信息和汽车信息。移动设备(例如,移动设备102n)的机器可读存储介质可以是包含或存储可执行指令的任何电子、磁性、光学,或其他物理存储设备。在一些实施方式中,机器可读存储介质可以是非暂时性存储介质,其中术语“非暂时性”不包含暂时传播的信号。在一个示例中,存储在机器可读介质中的机器可读指令可以是安装数据包的一部分,当安装数据包被安装时,能够由移动设备(例如,移动设备102n)的物理处理器来执行。在另一个示例中,机器可读指令可以是已经安装在移动设备(例如,移动设备102n)中的应用的一部分。在一些示例中,移动设备(例如,移动设备102n)的物理处理器可以实施机器可读指令以执行在本文描述的功能。

移动设备(例如,移动设备102n)可以基于移动设备的gps位置数据,和/或在移动设备上可获得的任何其他位置信息来确定传统汽车(例如,传统汽车103n)的位置信息。移动设备(例如,移动设备102n)可以向边缘设备100提供与单个传统汽车(例如,传统汽车103n)相关联的信息(例如,位置信息和汽车信息)。在一些示例中,移动设备(例如,移动设备102n)可以具有与单个传统汽车(例如,传统汽车103n)的独有关联。在其他的示例中,移动设备(例如,移动设备102n)可以具有与相应的多个传统汽车(例如,传统汽车101a、101n)的多个相联、但是可以被限制以向边缘设备100提供与仅仅单个传统汽车(例如,传统汽车103n)有关的位置信息和汽车信息。在这些其他示例中,为了向边缘设备100发送数据,移动设备(例如,移动设备102n)可以接收可以与该移动设备相关联的传统汽车(例如,传统汽车103n)的指示。此外,移动设备(例如,移动设备102n)可以需要提供移动设备位于传统汽车(例如,传统汽车103n)的预先确定的距离内的确认,以便向边缘设备提供与传统汽车(例如,传统汽车103n)有关的信息。在这些示例中的一些中,单个传统汽车可以与多个移动设备相关联,但是可以允许仅仅一个移动设备向边缘设备100提供与单个传统汽车有关的信息。

移动设备(例如,移动设备102n)可以通过接收与传统汽车有关的汽车信息并且基于所接收的汽车信息创建传统汽车的简况(profile),来创建与传统汽车(例如,传统汽车103n)的关联。汽车信息例如可以包括汽车的品牌和型号、汽车的颜色、汽车的类型、制造汽车的年份、关于汽车的驾驶员的集合的信息,及其任何组合,和/或汽车的其他特征。在一些示例中,响应于创建传统汽车(例如,传统汽车103n)的简况,移动设备(例如,移动设备102n)可以向边缘设备100和/或云服务器50提供该简况。边缘设备100和/或云服务器50可以基于提供的简况来创建传统汽车(例如,传统汽车103n)的鉴别性特征。边缘设备100可以存储传统汽车(例如,传统汽车103n)的鉴别性特征。在一些示例中,所存储的鉴别性特征是不可以修改的。

响应于移动设备(例如,移动设备102n)确认其位于传统汽车(例如,传统汽车103n)的预先确定的距离内,移动设备可以跟踪传统汽车的位置,并且向边缘设备100提供与传统汽车有关的位置数据和汽车信息。在一些示例中,移动设备(例如,移动设备102n)可以提供该信息,同时还经由移动设备的屏幕提供导航信息和/或指令。

边缘设备100可以从多个传感器富集汽车(例如,传感器富集汽车101a、101b、…、101n)接收视觉鉴别性特征的集合,并且可以从与传统汽车的集合(例如,传统汽车103a、103b、…、103n)相关联的移动设备的集合(例如,移动设备102a、102b、…、102n)接收位置信息和汽车信息。边缘设备100可以构造连通图(connectedgraph)(例如,slam地图、直方图,和/或包括节点和边缘的其他图)来表示道路,在该道路上可以驾驶与视觉鉴别性特征的集合相关联的观察到的汽车的集合。

为了构造连通图,边缘设备100可以将从传感器富集汽车(例如,传感器富集汽车101a、101b、…、101n)接收到的视觉鉴别性特征的进行关联。边缘设备100可以将来自传感器富集的汽车(例如,传感器富集汽车101a、101b、…、101n)中的每一辆汽车的视觉鉴别性特征的进行关联。在一些示例中,边缘设备100可以确定来自每个传感器富集的设备的视觉鉴别性特征之间的相关值,并且可以将从多个传感器富集汽车接收到的视觉鉴别性特征结合为汽车的单个视觉鉴别性特征。在这些示例中,边缘设备100可以包括连通图上的单个节点来表示与单辆汽车相关联的单个视觉鉴别性特征。在其他的示例中,边缘设备100可以接收和/或生成视觉鉴别性特征的集合中的每一个的连通图,并且可以覆盖连通图以确定节点的集合来表示观察到的汽车的集合。

边缘设备100也可以将视觉鉴别性特征的集合与从与传统汽车(例如,传统汽车103a、103b、…、103n)相关联的移动设备(例如,移动设备102a、102b、…、102n)接收到的信息进行关联,并且对连通图更新和/或添加节点以表示传统汽车(例如,传统汽车103a、103b、…、103n)。在一些示例中,边缘设备100可以通过将与移动设备相关联的传统汽车(例如,传统汽车103n)的品牌和型号关联到视觉鉴别性特征,来将来自传感器富集汽车(例如,传感器富集汽车101n)的视觉鉴别性特征与从移动设备(例如,移动设备102)接收的信息关联。

响应于生成包括针对观察到的汽车的集合中的每一辆汽车的节点的连通图,边缘设备100可以确定观察到的汽车的集合中的每辆汽车的精确位置。边缘设备100可以确定与通过连通图表示的道路场景有关的约束的集合。边缘设备100然后可以基于约束的集合和连通图,来确定观察到的汽车的集合中的每一辆汽车的精确位置。响应于确定观察到的汽车的集合中的每一辆汽车的精确位置,边缘设备100然后可以更新连通图中的节点以包括与所确定的精确位置有关的信息。

为了确定汽车(其可以是传感器富集汽车或传统汽车)的精确位置,边缘设备100可以利用汽车的自报位置(例如,汽车的gps位置和/或与传统汽车相关联的移动设备的gps位置)以及由传感器富集汽车(例如,传感器富集汽车101a、101b、…101n)的集合所报告的汽车的位置。边缘设备100可以通过最小化道路场景中的所有汽车的累积定位误差来确定每辆汽车的精确位置。边缘设备100可以通过累积地最小化每一辆汽车的所有报告的位置之间的距离,来最小化累积定位误差。边缘设备100可以累积地执行该最小化,这是因为道路上的一辆汽车的精确位置的确定可以影响同一道路上的另一辆汽车的精确位置的确定。

在该确定中,c1,2可以是由汽车2报告的汽车1的位置,其中报告的位置x、y可以包括东距x和北距y。v1可以包括汽车1的视图的集合,其中v1的基数包括检测到汽车1的传感器富集汽车的数量。汽车2作出汽车1的每个视图v1,2包括汽车1和汽车2之间的距离d以及观察o1,2的方位或方向。

在仅单辆汽车出现在道路上的情形中,边缘设备100可以确定该汽车的定位误差为该汽车的真实位置和该汽车的自报位置之间的距离。由于边缘设备100可能不了解汽车的真实位置,边缘设备100可以确定没有误差存在,并且可以不改变表示具有单辆汽车的道路场景的连通图。

在多辆汽车存在于道路场景的情形中,边缘设备100可以将道路场景上的汽车的累积定位误差确定为距该汽车的所有报告的位置的几何中位数(geometricmedian)的距离之和。边缘设备100可以通过将距汽车的所有报告的位置的几何中位数的距离之和最小化,来确定汽车的精确位置,并且可以更新与汽车相关联的节点以反映精确位置。

在一些示例中,边缘设备100也可以考虑汽车1的gps位置数据,并且可以将汽车1的精确位置限制为在多个置信区域(confidenceregions)的交叉内。例如,边缘设备100可以将汽车1的每个报告的位置c1,2确定为具有通过报告的位置中的置信度(confidence)确定的半径的圆,其中位置置信度可以通过汽车2来提供。边缘设备100可以将汽车1的精确位置限制为位于与汽车1的视图v1有关的每一个圆形的交叉内。

在一些示例中,边缘设备100可以考虑与观察到的汽车的集合、道路,和/或其它实体有关的其他约束、或者与道路场景有关的因素。例如,边缘设备100可以考虑(例如,来自传感器富集汽车的lidar信息的)距离和角度约束、道路约束,和/或其他约束。边缘设备100可以通过确定最靠近大多数报告的位置的道路和/或道路的集合来考虑道路约束。边缘设备100然后可以生成包括位置点和道路的边界的道路约束的集合。道路约束的集合可以包括关于道路中的车道、hov车道、出口车道、坡道的信息,和/或观察到的汽车的集合行驶的道路的其他特征。

在其中边缘设备100还考虑约束的示例中,由边缘设备100响应于确定观察到的汽车的集合中的每一辆的精确位置所生成和更新的连通图可以包括节点的集合和边缘,该节点包含与观察到的汽车的相应的集合的精确位置有关的信息,该边缘涉及由传感器富集汽车(例如,传感器富集汽车101a、101b、…、101n)接收的数据。

响应于确定观察到的汽车的集合中的每一辆的精确位置并且更新连通图,边缘设备100可以向观察到的汽车的集合中的每一辆提供边缘设备100确定的精确位置。对于传感器富集汽车(例如,传感器富集汽车101n),边缘设备100可以提供传感器富集汽车的精确位置以及在观察到的汽车的集合中观察到的传统汽车(例如,传统汽车103a、103b、…、103n)的精确位置。传感器富集汽车(例如,传感器富集汽车101n)可以使用所提供的精确位置来做出与传感器富集汽车的下一动作有关的判定。对于传统汽车(例如,传统汽车103n),边缘设备100可以向与传统汽车(例如,传统汽车103n)相关联的移动设备(例如,移动设备102n)提供传统汽车的精确位置。移动设备(例如,移动设备102n)可以本地地跟踪传统汽车中的车辆动态(例如,转弯、车道改变,等等)以根据所提供的精确位置来持续更新汽车的位置。例如,移动设备(例如,移动设备102n)可以从移动设备的惯性传感器、陀螺仪,和/或其他移动检测技术来检测汽车的转向操纵。在一些示例中,移动设备(例如,移动设备102n)可以包括陀螺仪,该陀螺仪已被训练为从神经网络检测距离和角度改变,该神经网络机器学习了移动设备陀螺仪上的距离和角度移动的效应。移动设备(例如,移动设备102n)也可以响应于向边缘设备100提供位置数据和汽车信息,从边缘设备100周期性地接收相关联的传统汽车(例如,传统汽车103n)的更新后的精确位置。

根据各种实施方式,可以在硬件和/或硬件和配置硬件的编程的组合中实施在本文描述的促进确定汽车位置的系统和各种部件。此外,在图1和本文描述的其他图中,可以使用与描绘相比不同数量的部件或实体。

图1a是描绘用于促进确定汽车位置的示例边缘设备的框图。在一些示例中,示例边缘设备100可以包括图1的边缘设备100。确定汽车101a、101b、101n的位置的边缘设备可以包括物理处理器110、传统汽车引擎130、传感器富集汽车引擎140、位置确定引擎150、位置提供引擎160,和/或其他引擎。如在本文所使用的,术语“引擎”指的是执行指定的功能的硬件和编程的组合。如关于图1a至1b图示出的,每个引擎的硬件例如可以包括物理处理器和机器可读存储介质中的一个或两者,同时编程是存储在机器可读存储介质上的、并且由物理处理器可执行以执行指定的功能的指令或代码。

传统汽车引擎130可以从与传统汽车(例如,传统汽车103n)相关联的移动设备(例如,移动设备102n)接收信息。信息可以包括传统汽车的位置数据、与传统汽车的品牌和型号有关的信息,和/或与传统汽车(例如,传统汽车103n)有关的其他信息。在一些示例中,传统汽车引擎130可以以与关于图1在以上描述的相同或类似的方式从与传统汽车(例如,传统汽车103n)相关联的移动设备(例如,移动设备102n)接收信息。

传感器富集汽车引擎140可以从传感器富集汽车(例如,传感器富集汽车101n)接收和在传感器富集汽车的距离内的观察到的汽车的集合有关的传感器数据的集合、观察到的汽车的集合的位置数据的集合,以及观察到的汽车的集合的视觉数据的集合。在一些示例中,传感器富集汽车(例如,传感器富集汽车101n)可以提供与本身和在传感器富集汽车附近观察到的汽车的集合有关的信息。照此,观察到的汽车的集合可以包括传统汽车(例如,传统汽车103n)和传感器富集汽车(例如,传感器富集汽车101n)。在一些示例中,传感器富集汽车引擎140可以以与关于图1在以上描述的相同或类似的方式接收信息。

位置确定引擎150可以确定传统汽车的更新后的位置。位置确定引擎150可以基于与传统汽车的位置有关的信息与传感器数据的集合、位置数据的集合以及视觉数据的集合的关联,来确定传统汽车的更新后的位置。在一些示例中,位置确定引擎150可以生成与传统汽车(例如,传统汽车103n)和传感器富集汽车(例如,传感器富集汽车101n)的道路场景有关的连通图,并且可以响应于对信息进行关联来在连通图上添加与观察到的汽车的集合中的每一辆汽车有关的节点。位置确定引擎150可以通过最小化节点的几何中位数之间的距离之和,来确定观察到的汽车的集合(包括传统汽车)中的每一辆汽车的精确位置。在一些示例中,位置确定引擎150可以以与关于图1在以上描述的相同或类似的方式执行该功能。

位置提供引擎160可以提供传统汽车(例如,传统汽车103n)的更新后的位置。位置提供引擎160可以向传统汽车(例如,传统汽车103n)提供传统汽车(例如,传统汽车103n)的更新后的位置。位置提供引擎160也可以跟踪传统汽车(例如,传统汽车103n)的车辆动态以促进传统汽车的驾驶判定。位置提供引擎160也可以向传感器富集汽车(例如,传感器富集汽车101n)提供传统汽车的更新后的位置。位置提供引擎160也可以确定传感器富集汽车(例如,传感器富集汽车101n)的下一动作,并且向传感器富集汽车提供该下一动作的指示。在一些示例中,位置提供引擎160可以以与关于图1在以上描述的相同或类似的方式执行该功能。

在执行它们相应的功能时,引擎130至引擎160可以访问存储介质120和/或其它适当的数据库。存储介质120可以表示能够用于存储和调取数据的、边缘设备100可访问的任何存储器。可通信地耦接到边缘设备的存储介质120和/或其他数据库可以包括随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程序只读存储器(eeprom)、高速缓存存储器、软盘、硬盘、光盘、磁带、固态驱动、闪盘驱动、便携式光盘,和/或用于存储计算机可执行指令和/或数据的其他存储介质。促进确定汽车位置的边缘设备100可以本地地或经由网络远程地访问存储介质120。

存储介质120可以包括数据库来组织和存储数据。数据库可以驻留于单个或多个物理设备中以及驻留于单个或多个物理位置中。数据库可以存储多种类型的数据和/或文件以及关联的数据或文件描述、管理信息,或任何其他数据。

图1b是描绘促进确定汽车位置的示例边缘设备200的框图。在一些示例中,示例边缘设备200可以包括图1的边缘设备100。可以促进确定汽车位置的边缘设备200可以包括物理处理器210、传统汽车引擎230、传感器富集汽车引擎240、位置确定引擎250、位置提供引擎260,和/或其他引擎。在一些示例中,位置确定引擎250可以包括鉴别性特征引擎251、关联引擎252,和/或其他引擎。在一些示例中,引擎230-260分别表示引擎130-160。

图2a是描绘包括由处理器可执行的用于确定汽车位置的指令的示例机器可读存储介质320的框图。

在上文讨论中,引擎130-160被描述为硬件和编程的组合。可以以许多方式实施引擎130-160。参考图2a,编程可以是存储在机器可读存储介质320上的处理器可执行指令330-360,并且硬件可以包括第一处理器310。因此,机器可读存储介质320可以说是存储当由物理处理器310执行时实施图1的促进确定汽车位置的边缘设备的程序指令或代码。

在图2a中,机器可读存储介质320中的可执行程序指令被描绘为传统汽车指令330、传感器富集汽车指令340、位置确定指令350、位置提供指令360,和/或其他指令。指令330-360表示当被执行时使物理处理器310分别实施引擎130-160的程序指令。

图2b是描绘包括由处理器可执行的用于确定汽车位置的指令的示例机器可读存储介质420的框图。

在上文讨论中,引擎230-260被描述为硬件和编程的组合。可以以许多方式实施引擎230-260。参考图2b,编程可以是存储在机器可读存储介质420上的处理器可执行指令430-460,并且硬件可以包括用于执行那些指令的物理处理器410。因此,机器可读存储介质420可以说是存储当由物理处理器410执行时实施图2b的促进确定汽车位置的边缘设备的程序指令或代码。

在图2b中,机器可读存储介质420中的可执行程序指令被描绘为传统汽车指令430、传感器富集汽车指令440、位置确定指令450、位置提供指令460,和/或其他指令。在一些示例中,数据位置确定指令450可以包括鉴别性特征指令451、关联指令452,和/或其他指令。指令430-460表示当被执行时使物理处理器410分别实施引擎220-260的程序指令。

机器可读存储介质320(或机器可读存储介质420)可以是包含或存储可执行指令的任何电子、磁性、光学,或其他物理存储设备。在一些实施方式中,机器可读存储介质320(或机器可读存储介质420)可以是非暂时性存储介质,其中术语“非暂时性”不包含暂时传播的信号。机器可读存储介质320(或机器可读存储介质420)可以在单个设备中被实施或分布在数个设备上。同样地,处理器310(或处理器410)可以表示能够执行由机器可读存储介质320(或机器可读存储介质420)存储的指令的任何数量的物理处理器。处理器310(或处理器410)可以被集成在单个设备中或分布在数个设备上。此外,机器可读存储介质320(或机器可读存储介质420)可以被完全地或部分地集成到与处理器310(或处理器410)相同的设备中,或机器可读存储介质320(或机器可读存储介质420)可以是单独的但是对于设备和处理器310(或处理器410)而言是可访问的。

在一个示例中,程序指令可以是安装数据包的一部分,当安装数据包被安装时,能够由处理器310(或处理器410)来执行以实施促进确定汽车位置的边缘设备。在这种情况下,机器可读存储介质320(或机器可读存储介质420)可以是诸如软盘、cd、dvd,或闪盘驱动之类的便携式介质,或由服务器维持的存储器,从该存储器能够对安装数据包进行下载和安装。在另一个示例中,程序指令可以是已经安装的应用的一部分。在这里,机器可读存储介质320(或机器可读存储介质420)可以包括硬盘、光盘、磁带、固态驱动器、ram、rom、eeprom,等等。

处理器310可以是至少一个中央处理单元(cpu)、微处理器,和/或适于调取和执行存储在机器可读存储介质320中的指令的其他硬件设备。处理器310可以取出、解码,和执行程序指令330-360,和/或其他指令。作为对调取和执行指令的替代或补充,处理器310可以包括至少一个电子电路,该至少一个电子电路包括用于执行指令330-360中的至少一个和/或其他指令的功能的许多电子部件。

处理器410可以是至少一个中央处理单元(cpu)、微处理器,和/或适于调取和执行存储在机器可读存储介质420中的指令的其他硬件设备。处理器410可以取出、解码,和执行程序指令430-460,和/或其他指令。作为对调取和执行指令的替代或补充,处理器410可以包括至少一个电子电路,该至少一个电子电路包括用于执行指令430-460中的至少一个和/或其他指令的功能的许多电子部件。

图3是描绘用于确定汽车位置的示例方法的流程图。在本文更详细地描述在图3中(以及在诸如图4的其他附图中)描绘的各个处理框和/或数据流。可以使用在以上详细地描述的系统部件中的一些或所有来实现所描述的处理框,并且在一些实施方式中,可以以不同的序列执行各处理框,并且可以省略不同的处理框。可以与所描绘的流程图中示出的处理框中的一些或所有一起来执行附加的处理框。可以同时地执行一些处理框。因此,如所图示的(并且在下面更详细地描述的)图3的方法意图作为示例,并且因此不应当被视为进行限制。可以以存储在诸如存储介质420之类的机器可读存储介质上的可执行指令的形式、和/或电子电路的形式来实施图3的方法。

在操作500中,可以由边缘设备接收传统汽车的位置数据和关于传统汽车的品牌和型号的信息。例如,边缘设备100(和/或传统汽车引擎130、传统汽车指令330,或边缘设备100的其他资源)可以接收位置数据和与传统汽车有关的信息。边缘设备100可以以在以上描述的与关于传统汽车引擎130、传统汽车指令330,和/或边缘设备100的其他资源的执行的方式类似或相同的方式,来接收位置数据和与传统汽车有关的信息。

在操作510中,可以由边缘设备接收和在传感器富集汽车的距离内观察到的汽车的集合有关的传感器数据的集合、观察到的汽车的集合的位置数据的集合,以及观察到的汽车的集合的视觉数据的集合,其中观察到的汽车的集合包括传统汽车和传感器富集汽车。例如,边缘设备100(和/或传感器富集汽车引擎140、传感器富集汽车指令340或边缘设备100的其他资源)可以接收传感器数据的集合、位置数据的集合,以及视觉数据的集合。边缘设备100可以以与关于传感器富集汽车引擎140、传感器富集汽车指令340,和/或边缘设备100的其他资源的执行类似或相同的方式,来接收传感器数据的集合、位置数据的集合,以及视觉数据的集合。

在操作520中,可以基于观察到的汽车的集合的位置数据的集合、视觉数据的集合,和传感器数据的集合,来确定传统汽车的更新后的位置。例如,边缘设备100(和/或位置确定引擎150、位置确定指令350或边缘设备100的其他资源)可以确定传统汽车的更新后的位置。边缘设备100可以以在以上描述的与关于位置确定引擎150、位置确定指令350,和/或边缘设备100的其他资源的执行类似或相同的方式来确定传统汽车的更新后的位置。

在一些示例中,可以以各种方式执行确定传统汽车的更新后的位置。图4是描绘用于确定汽车位置,并且具体是用于确定传统汽车的更新后的位置的示例方法的流程图。

在操作521中,可以由边缘设备接收观察到的汽车的集合的视觉鉴别性特征的集合。例如,边缘设备100(和/或位置确定引擎150、位置确定指令350或边缘设备100的其他资源)可以接收观察到的汽车的集合的视觉鉴别性特征的集合。边缘设备100可以以在以上描述的与关于位置确定引擎150、位置确定指令350,和/或边缘设备100的其他资源的执行类似或相同的方式来接收观察到的汽车的集合的视觉鉴别性特征的集合。

在操作522中,可以将观察到的汽车的集合的视觉鉴别性特征的集合与关于传统汽车的信息关联。例如,边缘设备100(和/或位置确定引擎150、位置确定指令350或边缘设备100的其他资源)可以将视觉鉴别性特征的集合与关于传统汽车的信息关联。边缘设备100可以以在以上描述的与关于位置确定引擎150、位置确定指令350,和/或边缘设备100的其他资源的执行类似或相同的方式将视觉鉴别性特征的集合与关于传统汽车的信息关联。

在操作523中,可以将视觉鉴别性特征的相关联的集合作为节点添加到连通图。例如,边缘设备100(和/或位置确定引擎150、位置确定指令350或边缘设备100的其他资源)可以将视觉鉴别性特征的关联集合作为节点添加在连通图中。边缘设备100可以以在以上描述的与关于位置确定引擎150、位置确定指令350,和/或边缘设备100的其他资源的执行类似或相同的方式将视觉鉴别性特征的相关联的集合作为节点添加在连通图中。

在操作524中,可以将节点的几何中位数之间的距离之和最小化,以确定每个节点的精确位置。例如,边缘设备100(和/或位置确定引擎150、位置确定指令350或边缘设备100的其他资源)可以将几何中位数之间的距离之和最小化。边缘设备100可以以在以上描述的与关于位置确定引擎150、位置确定指令350,和/或边缘设备100的其他资源的执行类似或相同的方式将几何中位数之间的距离之和最小化。

返回到图3,在操作530中,可以提供传统汽车的更新后的位置。例如,边缘设备100(和/或位置提供引擎160、位置提供指令360,或边缘设备100的其他资源)可以提供传统汽车的更新后的位置。边缘设备100可以以在以上描述的与关于位置提供引擎160、位置提供指令360,和/或边缘设备100的其他资源的执行类似或相同的方式提供传统汽车的更新后的位置。

以上公开描述许多用于确定汽车位置的示例实施方式。所公开的示例可以包括用于确定汽车位置的系统、设备、计算机可读存储介质,以及方法。为了解释,参考图1至图4中图示出的部件来描述某些示例。然而,所图示的部件的功能可以重叠,并且可以存在于较少或较多数量的元件和部件中。

此外,所说明的元件的功能的所有或一部分可以与若干地理上分散的位置共同存在或者分布在其中。而且,可以在各种环境中实施所公开的示例,并且所公开的示例不局限于所图示的示例。此外,与图3至图4结合描述的操作的序列是示例并且并不意图进行限制。在不背离所公开的示例的范围的情况下,可以使用或可以改变附加的或较少的操作或操作的组合。此外,按照所公开的示例的实施方式不需要以任何特定次序执行操作的序列。

因此,本公开仅仅阐述实施方式的可能的示例,并且可以对所描述的示例作出许多变化和修改。所有此类修改和变化意图被包括在本公开的范围内并且由所附权利要求来保护。

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