车辆装置定位的制作方法

文档序号:26357661发布日期:2021-08-20 20:32阅读:76来源:国知局
车辆装置定位的制作方法

本公开总体上涉及车辆操作。



背景技术:

车辆可配备有计算装置、网络、传感器和控制器以获取关于车辆的环境的数据并基于所述数据来操作车辆。车辆传感器可提供关于车辆的环境(例如,有关在车辆的环境中要行驶的路线和要避开的对象)的数据。



技术实现要素:

车辆可以被配备为以自主模式和/或乘员驾驶模式操作。半自主或完全自主模式意指其中车辆可由作为具有传感器和控制器的系统的一部分的计算装置部分地或完全地驾驶的操作模式。车辆可被占用或未被占用,但是在任何一种情况下,都可在没有乘员辅助的情况下部分地或完全地驾驶车辆。出于本公开的目的,自主模式被限定为其中车辆推进(例如,经由包括内燃发动机和/或电动马达的动力传动系统)、制动和转向中的每一者由一个或多个车辆计算机控制的模式;在半自主模式中,车辆计算机控制车辆推进、制动和转向中的一者或两者。在非自主模式中,这些都不由计算机控制。

车辆可以经由移动装置从乘员或潜在乘员接收数据。移动装置可以是智能电话、平板计算装置或无线激活装置,诸如通常称为“钥匙扣”。无线激活装置是硬件装置,其包括处理器、存储器和用于与车辆进行短程无线通信的电路。智能电话、平板电脑或无线激活装置可以包括无线通信接口,所述无线通信接口可以经由无线通信协议与车辆中的计算装置通信。车辆可以从移动装置接收数据并且基于所述数据执行与乘员或潜在乘员相关的任务。所述任务可以包括例如解锁车门、打开后挡板或打开内部和/或外部车灯。

本文公开了一种方法,所述方法包括:确定来自包括在车辆中的多个传感器中的每一个的针对移动装置的多个接收信号强度指示符或飞行时间值,通过用神经网络处理所述接收信号强度指示符或飞行时间值来确定所述移动装置相对于所述车辆的位置,其中每个接收信号强度指示符或飞行时间值被输入到包括在所述神经网络的输入层中的输入神经元,其中每个输入神经元输入至少一个接收信号强度指示符或飞行时间值,以及使用所定位的移动装置来操作所述车辆。传感器中的每一个可以包括位于车辆上和车辆中的位置处的天线。神经网络可将3d距离输出为区域以及移动装置在该区域中的概率,其中所述区域是相对于天线的3d位置限定的3d体积。所述神经网络可以输出两个或更多个区域和对应的概率。每个输入神经元可以输入一个且仅一个接收信号强度指示符或飞行时间值。输入神经元可基于两个或更多个接收信号强度指示符或飞行时间值包括高度相关的信号来输入所述两个或更多个接收信号强度指示符或飞行时间值。所述神经网络的中间层可包括基于接收信号强度指示符或飞行时间值基于多项式函数来将数据从所述输入神经元映射到三维位置的中间神经元。

所述多项式函数可基于平方反比定律函数中的一个或多个,所述平方反比定律函数基于所述接收信号强度指示符或基于飞行时间值的联立线性方程来确定距离。可通过向所述移动装置传输请求回复的信号并测量从所述移动装置接收的回复中的信号来确定所述接收信号强度指示符。可通过获取数据集来训练所述神经网络,所述数据集包括来自所述多个传感器的多个接收信号强度指示符以及关于所述移动装置的所述位置的对应地面实况数据,其中所述地面实况数据包括在所述移动装置相对于所述车辆的三维空间中的位置。可通过在所述传感器中的一个或多个从神经网络处理中删除时确定所确定的位置与对应地面实况数据相比的准确度来优化所述多个传感器。在确定所述移动装置在距所述车辆的指定距离内时,操作所述车辆可包括以下中的一者或多者:打开车灯和解锁所述车辆,以及打开后挡板。在确定所述移动装置在所述车辆内时,操作所述车辆可包括禁用所述车辆的锁。在确定所述移动装置远离所述车辆超过指定距离时,操作所述车辆可包括锁上所述车辆。

还公开了一种计算机可读介质,所述计算机可读介质存储用于执行上述方法步骤中的一些或全部的程序指令。还公开了一种计算机,所述计算机被编程为执行上述方法步骤中的一些或全部,所述计算机包括计算机设备,其被编程为:确定来自包括在车辆中的多个传感器中的每一个的针对移动装置的多个接收信号强度指示符,通过用神经网络处理所述接收信号强度指示符或飞行时间值来确定所述移动装置相对于所述车辆的位置,其中每个接收信号强度指示符或飞行时间值被输入到包括在所述神经网络的输入层中的输入神经元,其中每个输入神经元输入至少一个接收信号强度指示符或飞行时间值,以及使用所定位的移动装置来操作所述车辆。传感器中的每一个可以包括位于车辆上和车辆中的位置处的天线。神经网络可将3d距离输出为区域以及移动装置在该区域中的概率,其中所述区域是相对于天线的3d位置限定的3d体积。所述神经网络可以输出两个或更多个区域和对应的概率。每个输入神经元可以输入一个且仅一个接收信号强度指示符或飞行时间值。输入神经元可基于两个或更多个接收信号强度指示符或飞行时间值包括高度相关的信号来输入所述两个或更多个接收信号强度指示符或飞行时间值。所述神经网络的中间层可包括基于接收信号强度指示符或飞行时间值基于多项式函数来将数据从所述输入神经元映射到三维位置的中间神经元。

该计算机可以被进一步编程为基于平方反比定律函数确定多项式函数,所述平方反比定律函数基于接收信号强度指示符确定距离。可通过向所述移动装置传输请求回复的信号并测量从所述移动装置接收的回复中的信号来确定所述接收信号强度指示符。可通过获取数据集来训练所述神经网络,所述数据集包括来自所述多个传感器的多个接收信号强度指示符或飞行时间值以及关于所述移动装置的所述位置的对应地面实况数据,其中所述地面实况数据包括在所述移动装置相对于所述车辆的三维空间中的位置。可通过在所述传感器中的一个或多个从神经网络处理中删除时确定所确定的位置与对应地面实况数据相比的准确度来优化所述多个传感器。在确定所述移动装置在距所述车辆的指定距离内时,操作所述车辆可包括以下中的一者或多者:打开车灯和解锁所述车辆,以及打开后挡板。在确定所述移动装置在所述车辆内时,操作所述车辆可包括禁用所述车辆的锁。在确定所述移动装置远离所述车辆超过指定距离时,操作所述车辆可包括锁上所述车辆。

附图说明

图1是示例性交通基础设施系统的图示。

图2是具有传感器的示例性车辆的图示。

图3是示例性深度神经网络的图示。

图4是基于经训练的深度神经网络来操作车辆的示例性过程的流程图。

具体实施方式

图1是交通基础设施系统100的图示,所述交通基础设施系统100包括可以自主(“自主”本身在本公开中意指“完全自主”)、半自主和乘员驾驶(也称为非自主)模式操作的车辆110。一个或多个车辆110计算装置115可从传感器116接收关于车辆110的操作的数据。计算装置115可以自主模式、半自主模式或非自主模式操作车辆110。

计算装置115包括诸如已知的处理器和存储器。此外,存储器包括一种或多种形式的计算机可读介质,并且存储可由处理器执行以用于执行各种操作(包括如本文所公开的操作)的指令。例如,计算装置115可以包括编程以操作车辆制动、推进(例如,通过控制内燃发动机、电动马达、混合动力发动机等中的一者或多者来控制车辆110的加速度)、转向、气候控制、内部灯和/或外部灯等中的一者或多者,以及确定计算装置115(而不是人类操作员)是否以及何时控制此类操作。

计算装置115可包括多于一个计算装置(例如,包括在车辆110中以用于监测和/或控制各种车辆部件的控制器等(例如,动力传动系统控制器112、制动控制器113、转向控制器114等)),或例如经由如下面进一步描述的车辆通信总线通信地耦接到所述多于一个计算装置。计算装置115通常被布置用于通过车辆通信网络(例如,包括车辆110中的总线,诸如控制器局域网(can)等)通信;另外或可替代地,车辆110网络可包括诸如已知的有线或无线通信机制,例如以太网或其他通信协议。

计算装置115可经由车辆网络向车辆中的各种装置(例如,控制器、致动器、传感器(包括传感器116)等)传输消息和/或从所述各种装置接收消息。可替代地或另外,在计算装置115实际上包括多个装置的情况下,可使用车辆通信网络来用于在本公开中表示为计算装置115的装置之间的通信。此外,如下文所提及,各种控制器或感测元件(诸如传感器116)可经由车辆通信网络向计算装置115提供数据。

另外,计算装置115可被配置用于通过车辆对基础设施(v对i)接口111经由网络130与远程服务器计算机120(诸如云服务器)通信,如下所描述的,所述接口包括硬件、固件和软件,所述硬件、固件和软件准许计算装置115经由诸如无线互联网或蜂窝网络的网络130与远程服务器计算机120通信。因此,v对i接口111可包括被配置为利用各种有线和/或无线联网技术(例如,蜂窝、超宽带和有线和/或无线分组网络)的处理器、存储器、收发器等。计算装置115可以被配置为用于使用例如在附近车辆110间在移动自组网的基础上形成或通过基于基础设施的网络形成的车辆对车辆(v对v)网络(例如,根据专用短程通信(dsrc)和/或类似的通信)通过v对i接口111与其他车辆110通信。计算装置115还包括诸如已知的非易失性存储器。计算装置115可经由将数据存储在非易失性存储器中来记录数据,以便以后检索并经由车辆通信网络和车辆对基础设施(v对i)接口111传输到服务器计算机120或用户移动装置160。服务器计算机120还可以用作包括在路边基础设施或边缘计算节点中的计算装置115,其中边缘计算节点是计算装置115,该计算装置包括在固定基础设施元件(诸如杆、桥、壁等)中或上,并且获取传感器数据并与车辆110在道路、停车场或停车结构等中的一者或多者的局部部分中经由专用短程通信(dsrc)等进行通信。

如已经提及的,用于在没有人类操作员干预的情况下操作一个或多个车辆110部件(例如,制动、转向、推进等)的编程通常包括在存储器中所存储的并可由计算装置115的处理器执行的指令中。使用在计算装置115中接收的数据(例如,来自传感器116、服务器计算机120等的传感器数据),计算装置115可以在没有驾驶员的情况下作出各种确定和/或控制各种车辆110部件和/或操作以操作车辆110。例如,计算装置115可包括编程以调节车辆110操作行为(即,车辆110操作的物理表现),诸如速度、加速度、减速度、转向等,以及策略性行为(即,通常以预期实现路线的安全且有效的行驶的方式进行的操作行为控制),诸如车辆之间的距离和/或车辆之间的时间量、车道改变、车辆之间的最小间隙、左转跨过路径最小值、在特定位置处的到达时间和为了通过十字路口的十字路口(无信号灯)最小到达时间。

如本文使用的术语控制器包括通常被编程来监测和/或控制特定车辆子系统的计算装置。示例包括动力传动系统控制器112、制动控制器113和转向控制器114。控制器可以是诸如已知的电子控制单元(ecu),可能包括如本文所描述的附加的编程。控制器可以通信地连接到计算装置115并从计算装置115接收指令以根据指令来致动子系统。例如,制动控制器113可以从计算装置115接收指令以操作车辆110的制动器。

用于车辆110的一个或多个控制器112、113、114可以包括已知的电子控制单元(ecu)等,作为非限制性示例,包括一个或多个动力传动系统控制器112、一个或多个制动控制器113和一个或多个转向控制器114|。控制器112、113、114中的每一个可包括相应的处理器和存储器以及一个或多个致动器。控制器112、113、114可以被编程并且连接到车辆110通信总线,诸如控制器局域网(can)总线或局域互连网(lin)总线,以从计算装置115接收指令并基于指令来控制致动器。

传感器116可以包括已知的多种装置,以经由车辆通信总线提供数据。例如,固定到车辆110的前保险杠(未示出)的雷达可以提供从车辆110到车辆110前方的下一车辆的距离,或者设置在车辆110中的全球定位系统(gps)传感器可以提供车辆110的地理坐标。例如,由雷达和/或其他传感器116提供的距离和/或由gps传感器提供的地理坐标可以被计算装置115用来自主或半自主地操作车辆110。

车辆110通常是能够自主和/或半自主操作并且具有三个或更多个车轮的陆基车辆110(例如,客车、轻型卡车等)。车辆110包括一个或多个传感器116、v对i接口111、计算装置115和一个或多个控制器112、113、114。传感器116可以收集与车辆110和车辆110的操作环境相关的数据。以举例的方式而非限制,传感器116可以包括例如测高仪、相机、激光雷达、雷达、超声传感器、红外传感器、压力传感器、加速度计、陀螺仪、温度传感器、压力传感器、霍尔传感器、光学传感器、电压传感器、电流传感器、机械传感器(诸如开关)等。传感器116可用来感测车辆110的操作环境,例如,传感器116可检测诸如天气状况(降雨、外部环境温度等)的现象、道路坡度、道路位置(例如,使用道路边缘、车道标记等)或目标对象(诸如邻近车辆110)的位置。传感器116还可以用于收集数据,包括与车辆110的操作相关的动态车辆110数据,诸如速度、横摆率、转向角度、发动机转速、制动压力、油压、施加到车辆110中的控制器112、113、114的功率电平、在部件之间的连接性以及车辆110的部件的准确且及时的性能。

图2是车辆110和移动装置202的图示。移动装置202可以包括无线通信接口,所述无线通信接口经由无线协议与车辆110中的计算装置115通信,所述无线协议可以包括例如dsrc、蓝牙、wimax或超宽带,如上面关于图1所讨论的。移动装置202直接与车辆110中的计算装置115通信,其中无线信号在移动装置202与车辆110之间传送,而无需通过网络130诸如蜂窝电话网络或wi-fi网络。因为来自移动装置202的信号由计算装置115直接获取,所以计算装置115可以使用多根天线204、206、208、210、212、214(统称为天线216),由图2中的圆圈表示,以确定移动装置202相对于车辆110的位置。

移动装置202是可以在由用户携带时使用的计算装置,并且可以是例如智能电话、平板计算装置或无线激活装置。移动装置202可以包括可以与车辆110中的计算装置115通信的无线通信接口。如上面关于图1所讨论的,移动装置可以经由无线电或电磁无线通信信号与计算装置115通信。移动装置202通常由乘员携带并且可以用于与计算装置115通信。例如,移动装置202可以用于车辆110的无钥匙进入。当包括在车辆110中的计算装置115确定移动装置202在距车辆110的指定距离(例如一米)内时,计算装置115可以解锁一个或多个车门。可以由计算装置115基于确定移动装置202在指定距离内而执行的另一操作包括打开门控灯。可以执行的又一操作是在计算装置确定移动装置202在车辆110内部时防止锁上车辆110的门,从而防止移动装置110被锁在车辆110内部。

计算装置115可以通过确定接收信号强度指示符(rssi)来确定移动装置202是否在距车辆110的指定距离内。rssi是接收的无线信号的强度或幅度的度量。无线信号通常作为特定频率下的电磁载波传输,所述特定频率可以是例如在300mhz至300ghz范围内的射频。然后通过相移和/或频移来调制载波,以将数据编码到载波中。无线接收器对相移和/或频移进行解调以从载波提取数据。可以在指定时间段(例如,一微秒)内对载波进行整流和平均,以确定rssi。

rssi是发射包括载波的信号的移动装置202和接收该信号的天线216之间的距离与发射信号强度的函数。发射信号强度由包括移动装置202的电池强度、包括在移动装置202中的发射天线的取向以及移动装置202与射频吸收体诸如人体的接近度的因素确定。从两根或更多根天线216获取两个或更多个rssi度量可以允许计算装置通过在来自两根或更多根天线216的测量的rssi之间形成比率并考虑到两根或更多根天线之间的先前测量的距离来确定距移动装置202的距离的绝对度量,而不管绝对信号强度的变化如何。

可以基于来自两根或更多根天线216的相对rssi来确定距离的绝对度量,因为来自移动装置202的射频发射通常服从关于信号强度的平方反比定律。来自移动装置202的信号可以被建模为从点源发射并且与行驶距离的平方成比例地减小。在从第一天线216到移动装置202的给定距离d1处的测量的信号强度rssi1与半径等于d1的球面的面积成比例,其中d1是以空间坐标x,y和z测量的矢量距离。

比例常数p可以通过基于移动装置202以其操作射频发射辐射来测量天线216的rssi信号强度来以经验确定,以产生方程(2):

从移动装置202到第二天线216的距离d1、d2处的测量的信号强度rssi1、rssi2的比率等于距离的比率:

由于从第一天线216到第二天线216的矢量距离d1,2是测量的常数,距离d2=d1+d1,2,因此:

根据rssi1、rssi2和d1,2来求解d1产生:

针对移动装置202的给定3d位置,可以测量距第一天线的矢量距离d1,2、…、d1,n处的n根天线216的一组n个值rssi1、…、rssin。这些测量值可以基于方程(5)被表示为对应于的n个联立线性方程变量的一组n个多项式函数。可以通过找到同时满足包括来自至少四根天线216的rssi的至少三个方程(5)的d1的值来确定移动装置202的3d位置。需要包括至少四个rssi的至少三个方程,因为矢量距离d1包括以x,y和z的距离的三个变量。包括针对多于四根天线216的rssi超定联立线性方程并允许针对d1,的更准确的解,即移动装置202相对于特定天线216的3d位置。

超宽带(uwb)允许直接通过测量飞行时间(tof)来确定从移动装置202到天线216的距离d1。例如,可以通过从移动装置发射uwb能量脉冲并测量在多根天线216处的到达时间来测量tof。该技术要求所有天线216是时间同步的,以允许天线216对从移动装置202发射的脉冲的到达时间各自准确地加时间戳。因为uwb电磁辐射以光速(约3.0x108m/s)行进,这意味着uwb脉冲在一纳秒内行进约30cm或约一英尺。这意味着将需要天线216以亚纳秒分辨率对脉冲的到达时间加时间戳,以将距移动装置202的距离确定在几厘米内。例如,330皮秒的时间戳分辨率将产生10cm的距离分辨率。

用于基于tof根据uwb确定距离的另一种技术是调制uwb信号并确定接收天线216之间的相位差,以确定距多根天线216的相对距离dn。无论距离dn是通过脉冲到达时间还是通过相位差确定,距离测量值都可以基于移动装置的3d位置表示为一系列联立线性方程,其中天线216的位置表示为与单根天线216的位移以及类似于方程(1)至(5)计算为距单根天线的3d距离d1的距离。在该示例中,距离不是通过由rssi确定的平方反比定律来确定,而是直接作为基于tof的距离。使用脉冲到达时间或相位差确定的飞行时间值在本文中将被称为“tof”。

通过求解联立线性方程来确定移动装置202的3d位置可能是需要大量计算资源的非常复杂的任务。用于求解联立线性方程的技术包括例如矩阵求逆。矩阵求逆或迭代技术均包括与要求逆的矩阵中的元素数量的三次方成比例的大量(>100)计算。出于这个原因,矩阵求逆需要大量计算来完成。因为从天线216获取的rssi或tof值的量值可以根据移动装置202的3d位置而变化很大,所以rssi或tof值将在接近零的非常小的数字与接近最大值的大数字之间变化。在其中一些值接近零而其他值是大数字(也称为病态)的广泛变化的值下执行大量计算可能在数值上不稳定并且导致不准确的结果。

用于求解联立线性方程的其他技术包括迭代技术,其中重复地求解线性方程,并且将每个步骤的结果变化与前一步骤进行比较,以确定结果何时收敛。与矩阵求逆一样,迭代技术包括大量计算,所述计算取决于将接近零的非常小的值与更大的值进行组合,从而导致数值不稳定性和不准确的结果。试图基于多个rssi或tof求解联立线性方程可需要基于病态输入值的大量计算(>1000),这可能需要大量的时间和计算资源并且产生不准确的结果。

确定移动装置202的3d位置可以取决于选择哪根天线216作为测量与其的距离d1以及因此相对于其的移动装置202的3d位置的天线216。例如,如果选择的天线216在车辆110的与移动装置202相反的一侧上,则所测量的rssi或tof可能弱。弱的rssi将产生小的值,而弱的tof信号可产生有噪声、不准确的信号,从而使计算不准确。多根不同的天线可以用作主天线以求解距离d1和因此移动装置202的3d位置的联立线性方程。选择多根天线216并计算多个联立线性方程的多个解增加了所需的计算资源和确定解所需的计算时间。通过求解联立线性方程来确定移动装置202的3d位置可为不准确的并需要大量计算资源和时间。

不需要求解联立线性方程的用于确定移动装置的3d位置的技术是使用基于启发式技术的基于规则的机器学习技术。启发式技术使用经验结果来制定可用于确定移动装置202的近似3d位置的规则。启发式技术可以被实现为基于规则的机器学习系统中的多个规则。基于规则的机器学习系统中的多个规则可以用于通过测量可以包括在基于规则的机器学习系统中的多个来确定移动装置202的近似3d位置。基于规则的机器学习系统中的每个规则可以输入来自一根或多根天线216的一个或多个rssi,以确定移动装置202的可能3d位置。

确定移动装置202的近似3d位置的第一步骤可以是对接收到的rssi或tof进行归一化。例如,最大接收信号可被归一化为值1.0,并且通过将其他rssi或tof除以最大接收rssi或tof的接收信号值,其他rssi或tof可被归一化为0.0和1.0之间的值。然后,基于规则的系统中的规则可以基于接收到的rssi或tof的逻辑组合来确定移动装置202的3d位置。例如,基于规则的系统中的规则可以是“if(天线210rssi或tof>0.6and天线212rssi或tof>0.6and天线214>0.4and天线204<0.4and天线206<0.4and天线208<0.4)then移动装置202位置=在左前门附近”。然后,基于规则的系统中的第二规则可以通过将来自第一规则的输出与陈述以下的规则进行组合来确定从车辆到移动装置的更准确的距离:“if(任何rssi或tof>0.8)then移动装置202与车辆110相距<1米。”将来自第一规则的3d位置与来自第二规则的3d位置组合可以确定移动装置202可能位于距车辆110的左前门小于一米。以这种方式,可以组合基于规则的机器学习系统中的多个规则以准确地确定移动装置202的3d位置。

确定用于定位移动装置202的基于规则的系统的规则包括针对每根天线216从车辆110周围的大量(>100)位置处的示例性移动装置202获取rssi或tof,以确定用于进入多个规则的正确的参数。获取在车辆110周围的多个3d位置处的多根天线216的大量rssi或tof可以估计移动装置202的3d位置,而无需求解联立线性方程,因为测试数据以经验确定对应于rssi值的3d位置。确定基于规则的系统的规则可以包括从车辆周围的大量(>100)位置处的移动装置202获取rssi,以及将rssi信号编码为基于规则的系统中的规则以确定关于移动装置202的3d位置的正确结果。

产生正确地确定移动装置202的3d位置的规则可为难以执行的任务,从而需要大量的试错。每个新的或新修改的规则必须针对基于规则的系统中的每个其他规则进行测试,以检查不一致或自相矛盾的行为。针对基于规则的系统中的每个其他规则检查每个新的或新修改的规则可能需要与所述多个规则的指数幂成比例的计算资源和时间。例如,两个规则可以针对来自不同位置处的移动装置202的不同组rssi或tof信号产生自相矛盾或不一致的3d位置。自相矛盾或不一致的3d位置包括其中仅一个3d位置正确的多个或模糊3d位置。在测试期间,必须针对每个移动装置202位置检查基于规则的系统中的每个规则,以确保响应于移动装置202的单个3d位置不会产生自相矛盾或不一致的3d位置。当产生自相矛盾或不一致的3d位置时,则必须修改该规则或用新规则替换该规则,以减少自相矛盾或不一致的结果。

基于规则确定移动装置202的3d位置可需要大量规则,其中每根天线216基于移动装置202的多个可能的3d位置可需要多个规则。当每根天线216的多个规则被确定时,然后将必须针对基于规则的系统中的每个其他规则测试每个新规则。单个规则的添加或修改可需要修改系统中的每个其他规则,然后要求在迭代过程中针对每个其他规则测试每个新修改的规则。该迭代过程可要求每个规则被修改并被重新测试与系统中的规则数量成比例的次数,从而使确定基于规则的系统所需的计算资源和时间的量与系统中的规则数量的指数值成比例。

本文描述的技术通过将在移动装置202的大量(>100)位置获取的大量rssi或tof输入神经网络中而基于来自多根天线216的rssi或tof来改进对移动装置202相对于车辆的3d位置的确定。可以训练神经网络以基于根据来自多根天线216的输入rssi或tof求解联立线性方程来确定移动装置202的3d位置。一旦训练了神经网络以这种方式求解联立线性方程,就可以以比矩阵求逆或迭代技术少得多的计算步骤来确定3d位置。与基于规则的机器学习系统相比,可以训练神经网络以在远小于指数时间内确定移动装置202的3d位置。与基于规则的系统不同,可以在不对神经网络进行完全再训练的情况下执行添加关于移动装置202的附加3d位置的新数据。神经网络系统可以基于来自多根天线的多个rssi或tof来确定移动装置202的3d位置,其远比矩阵求逆和迭代技术或基于规则的机器学习技术更有效。

经训练的神经网络还可用于通过依次删除来自每根天线216的输出并将所得的3d位置与基于全部数量的天线216确定的3d位置进行比较来优化多根天线216。如果在删除rssi或tof的情况下3d位置结果没有显著改变,则可以在不改变结果的情况下从车辆110消除对应于该rssi或tof的天线216。在本上下文中,3d位置的微不足道的变化是指x,y和z坐标中的每一者的平方差和求和差的变化小于10厘米。减少确定移动装置202的3d位置所需的天线的数量可以降低车辆110的成本、重量和复杂性。

图3是神经网络300的图示。神经网络300是可以在例如包括在车辆110中的计算装置115上执行的软件程序。神经网络300包括输入层308、中间全连接层314、320和输出层326。神经网络300可以将由天线216产生的多个rssi或tof302、304、306(统称为rssi或tof332)输入到输入层308,其中省略号对应于可以包括在输入中的附加rssi或tof。每个rssi或tof332被输入到输入层308中的输入节点310。输入节点310输入rssi或tof332,并且通过调节输入的rssi或tof332来准备输入的rssi或tof332以进行进一步处理。调节输入的rssi或tof332可以包括将输入的rssi或tof332映射到如上文关于基于规则的系统所讨论的区间[0,1]上。一旦调节了输入的rssi或tof332,就可以将它们作为第一隐藏变量312传送到第一全连接层314。第一隐藏变量312被称为“隐藏变量”,因为它们在处理期间通常不可用于神经网络300外部的检查。第一隐藏变量312被传送到第一全连接中间层314的第一全连接中间节点316。每个第一全连接中间节点316从每个输入节点310接收输入,因此称为“全连接”。每个第一全连接中间节点316基于如上面的方程(5)中所示的多项式平方反比定律函数来执行一组联立线性方程的一部分的参数化计算。所述参数对应于基于与以上方程(5)对应的调节的rssi或tof332来确定联立线性方程的解的值。

对应于方程(5)的联立线性方程的部分由第一全连接层314的第一全连接中间节点316确定,并且作为第二隐藏变量318传输到第二全连接中间层320的第二全连接中间节点322。第二全连接中间节点322基于第二组参数基于上面的方程(5)来确定联立线性方程的解的第二部分。由第二全连接中间层320的第二全连接中间节点322处理输入的rssi332的结果作为第三隐藏变量324传送到包括在输出层326中的输出节点328。中间层314、320基于根据方程(5)的多项式联立线性方程将来自输入节点310的数据映射到对应于3d位置的隐藏变量324中。输出节点328将与根据第三组参数基于来自方程(1)-(5)的平方反比定律函数的联立线性方程的解相对应的第三隐藏变量324组合到对应于移动装置202相对于车辆110的3d位置的输出状态330中。移动装置202相对于车辆110的3d位置可以在输出状态330中被编码为区域和移动装置202占用所述区域的概率。区域是相对于天线216的3d位置限定的空间中的3d体积。例如,区域可以被限定为包围车辆110的左前门的一米内的空间的体积。另一个区域可以被限定为包围例如在车辆后方、靠近行李厢或后挡板的3d体积。

神经网络300可以被训练为确定与对应于移动装置202相对于车辆110的3d位置的方程(5)类似的一组联立线性方程的解。这种训练可以通过记录与移动装置202相对于车辆110的多个3d位置相对应的大量(>100)组rssi或tof332来实现。每组rssi或tof332都伴随有地面实况3d位置。通过执行移动装置202相对于车辆110的3d位置的真实世界3d测量来确定地面实况3d位置。移动装置202相对于车辆110的多个3d位置对应于在真实世界情况下使用移动装置202操作车辆110时将遇到的各种区域。各种区域可以包括在相对于地平面的各种高度处从任何方向接近车辆110,其中移动装置202相对于用户处于各种位置。例如,移动装置可以在用户的手中、在用户的衣服的口袋中、或在钱包或背包中等。在rssi332被记录时,移动装置202可以相对于车辆110保持静止或移动。在rssi或tof332被记录时,对应于rssi或tof332的地面实况将对应于移动装置202的3d位置或平均3d位置。

神经网络300可以被训练为通过输入一组rssi或tof332并且随机地(或伪随机地)选择一组第一参数、第二参数和第三参数以求解一组联立线性方程并形成输出状态330来确定移动装置202的限定区域中的位置。通过确定移动装置202的测量的3d位置是否在区域内来将输出状态330中包括的区域反向传播并与地面实况进行比较。如果移动装置202的测量位置未落在所述区域内,则改变第一参数、第二参数和第三参数,并且将新的解确定为要与地面实况进行比较的输出状态330。继续该过程,直到确定产生准确匹配地面实况的输出状态330的一组或多组第一参数、第二参数和第三参数。可以通过测量对应于区域的3d体积的中心与包括在地面实况中的3d位置之间的距离来确定对应于区域与地面实况相匹配的概率。可以通过x,y和z维度的平方差的和以确定移动装置202的3d位置被包括在区域中的概率来测量准确度。

然后针对每组rssi或tof332和对应的地面实况重复将反向传播的结果与地面实况进行匹配的过程,直到确定针对每组rssi或tof332产生与地面实况相匹配的区域和概率的一组第一参数、第二参数和第三参数。使得输出状态330匹配地面实况的该组第一参数、第二参数和第三参数可以下载到神经网络300以对其进行编程,从而在一组rssi或tof332被输入到神经网络300时确定移动装置相对于车辆110的3d位置。

神经网络300可以包括比输入的第一全连接层314和第二全连接层320更少或更多的层,这取决于联立线性方程计算如何在层之间进行划分。在神经网络300的一些示例中,保持输入的rssi或tof332与输入的节点310之间的一一对应。在其他示例中,可以将一个或多个输入的rssi或tof332输入到多于一个输入节点310,以允许单个rssi或tof332与其他rssi或tof332不同地处理。例如,将单个rssi或tof332输入到两个输入节点310可以使单个rssi或tof在求解联立线性方程中比其他rssi或tof332具有更大的权重或重要性。在其他示例中,两个或更多个rssi或tof332可以输入到单个输入节点310。例如,无论移动装置202相对于车辆110位于何处,两根或更多根天线216都可以产生高度相关的rssi或tof。在该示例中,rssi或tof332到单个输入节点310的输入可以具有相同的结果。

训练神经网络300以确定移动装置202相对于车辆110的3d位置可以通过消除针对移动装置202的每个可能的3d位置测试和修改基于规则的系统中的每个规则的耗时且容易出错的任务来改进3d定位过程,每个可能的3d位置包括移动装置可以相对于用户采用的各种位置。使用经训练的神经网络300来确定移动装置202的3d位置还可以允许快速且准确地优化天线216。可以一次消除一个输入的rssi或tof332,并且可以训练第二神经网络300以确定新的3d位置。例如,可以将新的3d位置与用rssi或tof332的全员确定的旧的3d位置进行比较,以确定特定天线216是否是冗余的。

神经网络300的输出状态330可以包括一个或多个区域和概率。所述区域由从天线216到x,y和z坐标的区域中心的距离dn限定。每个区域由数字1、…、n标识。区域标识号对应于从车辆110上的单个点测量并存储在计算装置115处的区域的3d位置。计算装置115可以接收输出状态330并且使用区域号来查找区域相对于一根或多根天线216的测量的3d位置,并将其添加到来自输出状态330的对应概率,以确定移动装置202相对于车辆110上的预定点的3d距离。例如,车辆上的预定点可以是车辆110的几何中心或车辆110的外部(例如左前门)上的点。

图4是用于基于确定对象的3d位置和身份来操作车辆的过程400的关于图1-图3所描述的过程800的流程图。过程800可以由计算装置的处理器执行,例如,将来自传感器的信息作为输入,以及提供命令,和/或输出对象信息。过程800包括可以以所示顺序执行的多个框。过程800可以替代地或另外包括更少的框,或者可以包括以不同顺序执行的框。

过程400开始于框402,其中基于从包括在车辆110中的天线216获取的信号来确定rssi或tof332。通过从移动装置202接收信号来获取rssi或tof。可以响应于从车辆110传输的信号而从移动装置202接收信号。例如,这可以允许车辆110中的计算装置115同时对来自多根天线216的接收信号进行采样。这还可以允许车辆中的计算装置115通过传输预定代码并请求移动装置202返回预定代码来识别移动装置202。以这种方式,可以在车辆110与移动装置202之间建立安全连接,从而仅允许先前已经被编程为传输预定代码的移动装置202操作车辆110。

在框404处,将rssi或tof332输入到神经网络300,以确定移动装置202相对于车辆110的3d位置。神经网络300已经被训练成基于输出区域和概率来如上面关于图3所讨论地定位移动装置202。移动装置202的3d位置包括基于输出区域和概率相对于车辆110上的位置测量的移动装置202的方向和距离。车辆110位置可以是车辆110外部上的位置,例如右前门或左前门上的位置。

在框406处,车辆110中的计算装置115可以基于移动装置202的确定的3d位置来执行操作。可以基于基于规则的逻辑来选择要执行的操作。例如,基于规则的逻辑可以包括诸如以下的规则:“if移动装置202在对应于左前门的区域内and概率大于50%and移动装置202已经传输了与存储在计算装置115处的预定代码匹配的代码,then解锁左前门”。当移动装置202被识别为在对应于距车辆110的预定距离(例如1米)的任何区域内时,计算装置115还可以打开车辆110的灯。例如,这些灯可以帮助用户定位车门以进入车辆110。可以由计算装置115响应于移动装置的3d位置而执行的另一操作包括当计算装置115确定移动装置202位于对应于距车辆110超过一米的距离的区域中概率大于50%时锁上车辆110的门。当计算装置115确定移动装置202的3d位置在对应于车辆110内部的区域中时,计算装置115还可以禁用车锁,从而防止移动装置202被锁在车辆110内部。在框406之后,过程400结束。

诸如本文讨论的那些计算装置的计算装置通常各自包括命令,所述命令可由诸如上文所识别的那些计算装置的一个或多个计算装置执行并用于执行上文所描述的过程的框或步骤。例如,上文所讨论的过程框可以体现为计算机可执行命令。

计算机可执行命令可以根据使用各种编程语言和/或技术创建的计算机程序来编译或解译,所述编程语言和/或技术单独地或组合地包括但不限于:javatm、c、c++、python、julia、scala、visualbasic、javascript、perl、html等。一般来说,处理器(例如,微处理器)接收例如来自存储器、计算机可读介质等的命令,并且执行这些命令,从而执行一个或多个过程,包括本文所描述的过程中的一者或多者。此类命令和其他数据可以存储在文件中并使用各种计算机可读介质来传输。计算装置中的文件通常是存储在诸如存储介质、随机存取存储器等计算机可读介质上的数据的集合。

计算机可读介质包括参与提供可由计算机读取的数据(例如,命令)的任何介质。这种介质可以采用许多形式,包括但不限于非易失性介质、易失性介质等。非易失性介质包括例如光盘或磁盘以及其他持久性存储器。易失性介质包括通常构成主存储器的动态随机存取存储器(dram)。常见形式的计算机可读介质包括例如软磁盘、软盘、硬盘、磁带、任何其他磁性介质、cd-rom、dvd、任何其他光学介质、穿孔卡、纸带、带有孔图案的任何其他物理介质、ram、prom、eprom、flash-eeprom、任何其他存储器芯片或盒式磁带或计算机可从其中读取的任何其他介质。

除非本文作出相反的明确指示,否则权利要求中使用的所有术语意图给出如本领域技术人员所理解的普通和通常的含义。具体地,除非权利要求叙述相反的明确限制,否则使用诸如“一个”、该”、“所述”等单数冠词应被解读为叙述所指示的要素中的一者或多者。

术语“示例性”在本文中以表示示例的意义使用,例如,对“示例性小部件”的引用应被解读为仅指代小部件的示例。

修饰值或结果的副词“大约”意味着形状、结构、测量值、值、确定、计算等可能因材料、机加工、制造、传感器测量、计算、处理时间、通信时间等的缺陷而与确切描述的几何形状、距离、测量值、值、确定、计算等有偏差。

在图示中,相同的附图标记指示相同的元件。此外,可以改变这些元件中的一些或全部。关于本文所描述的介质、过程、系统、方法等,应理解,虽然此类过程等的步骤或框已被描述为按照特定顺序的序列发生,但是此类过程可以通过以本文所描述的顺序以外的顺序执行的所描述步骤来实践。还应理解,可以同时执行某些步骤,可以添加其他步骤,或者可以省略本文所描述的某些步骤。换句话说,本文对过程的描述是出于说明某些实施例的目的而提供的,并且决不应解释为限制所要求保护的发明。

根据本发明,提供了一种计算机,其具有处理器;和存储器,所述存储器包括可由处理器执行以进行以下操作的指令:确定来自包括在车辆中的多个传感器中的每一个的针对移动装置的多个接收信号强度指示符或飞行时间值;通过用神经网络处理所述接收信号强度指示符或飞行时间值来确定所述移动装置相对于所述车辆的位置,其中每个接收信号强度指示符或飞行时间值被输入到包括在所述神经网络的输入层中的输入神经元,其中每个输入神经元输入至少一个接收信号强度指示符或飞行时间值;以及使用所定位的移动装置来操作所述车辆。

根据实施例,传感器中的每一个包括位于车辆上和车辆中的位置处的天线。

根据实施例,神经网络将3d距离输出为区域以及移动装置在该区域中的概率,其中所述区域是相对于天线的3d位置限定的3d体积。

根据实施例,所述神经网络输出两个或更多个区域和对应的概率。

根据实施例,每个输入神经元输入一个且仅一个接收信号强度指示符或飞行时间值。

根据实施例,输入神经元基于两个或更多个接收信号强度指示符或飞行时间值包括高度相关的信号来输入所述两个或更多个接收信号强度指示符或飞行时间值。

根据实施例,所述神经网络的中间层包括基于接收信号强度指示符或飞行时间值基于多项式函数来将数据从所述输入神经元映射到三维位置的中间神经元。

根据实施例,所述多项式函数基于平方反比定律函数中的一个或多个,所述平方反比定律函数基于所述接收信号强度指示符或基于飞行时间值的联立线性方程来确定距离。

根据实施例,本发明的特征还在于:通过向所述移动装置传输请求回复的信号并测量从所述移动装置接收的回复中的信号来确定所述接收信号强度指示符的指令。

根据实施例,本发明的特征还在于:通过获取数据集来训练所述神经网络的指令,所述数据集包括来自所述多个传感器的多个接收信号强度指示符或飞行时间值以及关于所述移动装置的所述位置的对应地面实况数据,其中所述地面实况数据包括在所述移动装置相对于所述车辆的三维空间中的位置。

根据实施例,本发明的特征还在于:通过在所述传感器中的一个或多个从神经网络处理中删除时确定所确定的位置与对应地面实况数据相比的准确度来优化所述多个传感器的指令。

根据实施例,在确定所述移动装置在距所述车辆的指定距离内时,操作所述车辆包括以下中的一者或多者:打开车灯和解锁所述车辆,以及打开后挡板。

根据实施例,在确定所述移动装置在所述车辆内时,操作所述车辆包括禁用所述车辆的锁。

根据实施例,在确定所述移动装置远离所述车辆超过指定距离时,操作所述车辆包括锁上所述车辆。

根据本发明,一种方法包括:确定来自包括在车辆中的多个传感器中的每一个的针对移动装置的多个接收信号强度指示符或飞行时间值;通过用神经网络处理所述接收信号强度指示符或飞行时间值来确定所述移动装置相对于所述车辆的位置,其中每个接收信号强度指示符或飞行时间值被输入到包括在所述神经网络的输入层中的输入神经元,其中每个输入神经元输入至少一个接收信号强度指示符或飞行时间值;以及使用所定位的移动装置来操作所述车辆。

在本发明的一个方面,所述传感器中的每一个包括位于所述车辆上和所述车辆中的各种位置处的天线。

在本发明的一个方面,神经网络将3d距离输出为区域以及移动装置在该区域中的概率,其中所述区域是相对于天线的3d位置限定的3d体积。

在本发明的一个方面,所述神经网络输出一个或多个区域和对应的概率。

在本发明的一个方面,每个输入神经元输入一个且仅一个接收信号强度指示符或飞行时间值。

在本发明的一个方面,输入神经元基于两个或更多个接收信号强度指示符包括高度相关的信号来输入所述两个或更多个接收信号强度指示符。

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