将交通对象的位置信息动态地提供给计算装置

申请号 CN201380058199.7 申请日 2013-10-24 公开(公告)号 CN104812654B 公开(公告)日 2017-11-03
申请人 优步技术公司; 发明人 P-P·霍尔登; M·斯威尼;
摘要 本 发明 提供一种用于将交通对象的 位置 信息提供给计算装置的系统和方法。可定时地接收交通对象的全球 定位 卫星(GPS)信息。针对一些所述GPS信息中的每个,可基于所述GPS信息识别交通系统的一个或更多个候选点。使用所述一个或更多个候选点,可确定最可能的行驶路径。沿着所述最可能的行驶路径的额外位置点可被推断并且被传输给计算装置。
权利要求

1.一种将交通对象的位置信息提供给一个或多个计算装置的方法,所述方法由计算系统的一个或更多个处理器执行且包括:
(a)在所述计算系统处从第一计算装置接收(i)在第一时间点处所述交通对象的第一全球定位卫星(GPS)位置点以及相应的第一GPS误差量,以及(ii)在随后的第二时间点处所述交通对象的第二GPS位置点以及相应的第二GPS误差量,每个GPS位置点对应于所述交通对象的纬度和经度坐标;
(b)(i)针对所述第一GPS位置点,识别对应于所述第一GPS位置点的第一GPS误差量的第一距离内的交通系统的第一组一个或更多个候选位置点,以及(ii)针对所述第二GPS位置点,识别对应于所述第二GPS位置点的第二GPS误差量的第二距离内的所述交通系统的第二组一个或更多个候选位置点;
(c)基于所述交通系统的所述第一组和第二组一个或更多个候选位置点,确定所述交通对象在所述第一组一个或更多个候选位置点的第一候选位置点与所述第二组一个或更多个候选位置点的第二候选位置点之间的最可能行驶路径;
(d)沿着所述最可能行驶路径,确定定位在来自所述第一组的所述第一候选位置点与来自所述第二组的第二候选位置点之间的一个或更多个推断位置点;以及(e)将一组所述一个或更多个推断位置点以及至少所述第一候选位置点或所述第二候选位置点从所述计算系统传输至第二计算装置,以使得所述第二计算装置在显示在所述第二计算装置的显示器上的地图用户界面上呈现所述交通对象的图示,其中所述图示被描绘为以基于所述组一个或更多个推断位置点以及至少所述第一候选位置点或所述第二候选位置点的方式移动;并且
其中(a)至(e)与在提供共乘或递送服务时用户操作所述第二计算装置以使得选择操作所述第一计算装置的驾驶员、以及驾驶员操作所述第一计算装置以接取所述第二计算装置的用户相联系地来执行。
2.根据权利要求1所述的方法,其中识别所述交通系统的所述第一组和第二组一个或更多个候选位置点包括参考所述交通系统的交通空间数据库
3.根据权利要求2所述的方法,其中所述第一组的至少一个候选位置点和所述第二组的至少一个候选位置点的每个对应于所述交通空间数据库中识别的行驶路径上的位置点。
4.根据权利要求1所述的方法,其中所述第一GPS位置点包括第一时戳或与第一时戳相关联且其中所述第二GPS位置点包括第二时戳或与第二时戳相关联,且其中确定所述最可能行驶路径包括结合路由引擎、物理引擎或隐尔科夫模型求解器中的至少一个使用所述第一和第二GPS位置点的所述第一和第二时戳。
5.根据权利要求1所述的方法,其中沿着所述最可能行驶路径确定所述一个或更多个推断位置点包括针对所述一个或更多个推断位置点中的每一个确定推断的时戳。
6.根据权利要求1所述的方法,其中将所述组一个或更多个推断位置点传输至所述第二计算装置包括确定与所述第二计算装置相关联的当前时间,以及基于所述当前时间传输所述组一个或更多个推断位置点。
7.一种用于将交通对象的位置信息提供给一个或多个计算装置的系统,所述系统包括:
存储指令的存储器资源;
网络接口;以及
一个或更多个处理器,其耦合至所述存储器资源和所述网络接口,以执行所述指令,其中所述指令在由所述一个或更多个处理器执行时使得所述系统:
(a)经由所述网络接口在所述系统处从第一计算装置接收(i)在第一时间点处所述交通对象的第一全球定位卫星(GPS)位置点以及相应的第一GPS误差量,以及(ii)在随后的第二时间点处所述交通对象的第二GPS位置点以及相应的第二GPS误差量,每个GPS位置点对应于所述交通对象的纬度和经度;
(b)(i)针对所述第一GPS位置点,识别对应于所述第一GPS位置点的第一GPS误差量的第一距离内的交通系统的第一组一个或更多个候选位置点,以及(ii)针对所述第二GPS位置点,识别对应于所述第二GPS位置点的第二GPS误差量的第二距离内的所述交通系统的第二组一个或更多个候选位置点;
(c)基于所述交通系统的所述第一组和第二组一个或更多个候选位置点,确定所述交通对象在所述第一组一个或更多个候选位置点的第一候选位置点与所述第二组一个或更多个候选位置点的第二候选位置点之间的最可能行驶路径;
(d)沿着所述最可能行驶路径,确定定位在来自所述第一组的所述第一候选位置点与来自所述第二组的第二候选位置点之间的一个或更多个推断位置点;以及(e)经由所述网络接口将一组所述一个或更多个推断位置点以及至少所述第一候选位置点或所述第二候选位置点从所述系统传输至第二计算装置,以使得所述第二计算装置在显示在所述第二计算装置的显示器上的地图用户界面上呈现所述交通对象的图示,其中所述图示被描绘为以基于所述组一个或更多个推断位置点以及至少所述第一候选位置点或所述第二候选位置点的方式移动;并且
其中(a)至(e)与在提供共乘或递送服务时用户操作所述第二计算装置以使得选择操作所述第一计算装置的驾驶员、以及驾驶员操作所述第一计算装置以接取所述第二计算装置的用户相联系地来执行。
8.根据权利要求7所述的系统,其中所述指令使得所述系统通过参考所述交通系统的交通空间数据库来识别所述交通系统的所述第一组和第二组一个或更多个候选位置点。
9.根据权利要求8所述的系统,其中所述第一组的至少一个候选位置点和所述第二组的至少一个候选位置点的每个对应于所述交通空间数据库中识别的行驶路径上的位置点。
10.根据权利要求7所述的系统,其中所述第一GPS位置点包括第一时戳或与第一时戳相关联且其中所述第二GPS位置点包括第二时戳或与第二时戳相关联,且其中所述一个或更多个处理器通过结合路由引擎、物理引擎或隐马尔科夫模型求解器中的至少一个使用所述第一和第二GPS位置点的所述第一和第二时戳来确定所述最可能行驶路径。
11.根据权利要求7所述的系统,其中所述指令使得所述系统通过针对所述一个或更多个推断位置点中的每一个确定推断的时戳来沿着所述最可能行驶路径确定所述一个或更多个推断位置点。
12.根据权利要求7所述的系统,其中所述指令使得所述系统通过确定与所述第二计算装置相关联的当前时间以及基于所述当前时间传输所述组一个或更多个推断位置点而将所述组一个或更多个推断位置点传输至所述第二计算装置。
13.一种将交通对象的位置信息提供给一个或多个计算装置的设备,所述设备包括:
单元(a),用于在系统处从第一计算装置接收(i)在第一时间点处交通对象的第一全球定位卫星(GPS)位置点以及相应的第一GPS误差量,以及(ii)在随后的第二时间点处所述交通对象的第二GPS位置点以及相应的第二GPS误差量,每个GPS位置点对应于所述交通对象的纬度和经度;
单元(b),用于参考交通系统的交通空间数据库来(i)针对所述第一GPS位置点,识别对应于所述第一GPS位置点的第一GPS误差量的第一距离内的所述交通系统的第一组一个或更多个候选位置点,以及(ii)针对所述第二GPS位置点,识别对应于所述第二GPS位置点的第二GPS误差量的第二距离内的所述交通系统的第二组一个或更多个候选位置点;
单元(c),用于基于所述交通系统的所述第一组和第二组一个或更多个候选位置点,确定所述交通对象在所述第一组一个或更多个候选位置点的第一候选位置点与所述第二组一个或更多个候选位置点的第二候选位置点之间的最可能行驶路径;
单元(d),用于沿着所述最可能行驶路径,确定定位在来自所述第一组的所述第一候选位置点与来自所述第二组的第二候选位置点之间的一个或更多个推断位置点;以及单元(e),用于将一组所述一个或更多个推断位置点以及至少所述第一候选位置点或所述第二候选位置点传输至第二计算装置,以使得所述第二计算装置在显示在所述第二计算装置的显示器上的地图用户界面上呈现所述交通对象的图示,其中所述图示被描绘为以基于所述组一个或更多个推断位置点以及至少所述第一候选位置点或所述第二候选位置点的方式移动;并且
其中单元(a)至(e)与在提供共乘或递送服务时用户操作所述第二计算装置以使得选择操作所述第一计算装置的驾驶员、以及驾驶员操作所述第一计算装置以接取所述第二计算装置的用户相联系地执行处理。
14.根据权利要求13所述的设备,还包括用于通过针对所述一个或更多个推断位置点中的每一个确定推断的时戳来沿着所述最可能行驶路径确定所述一个或更多个推断位置点的单元。
15.根据权利要求13所述的设备,其中识别所述交通系统的所述第一组和第二组一个或更多个候选位置点包括参考所述交通系统的交通空间数据库。
16.根据权利要求15所述的设备,其中所述第一组的至少一个候选位置点和所述第二组的至少一个候选位置点的每个对应于所述交通空间数据库中识别的行驶路径上的位置点。
17.根据权利要求13所述的设备,其中所述第一GPS位置点包括第一时戳或与第一时戳相关联且其中所述第二GPS位置点包括第二时戳或与第二时戳相关联,且其中确定所述最可能行驶路径包括结合路由引擎、物理引擎或隐马尔科夫模型求解器中的至少一个使用所述第一和第二GPS位置点的所述第一和第二时戳。
18.根据权利要求13所述的设备,其中将所述组一个或更多个推断位置点传输至所述第二计算装置包括确定与所述第二计算装置相关联的当前时间,以及基于所述当前时间传输所述组一个或更多个推断位置点。
19.一种存储指令的非暂态计算机可读介质,所述指令在由系统的一个或更多个处理器执行时使所述系统:
(a)在所述系统处从第一计算装置接收(i)在第一时间点处交通对象的第一全球定位卫星(GPS)位置点以及相应的第一GPS误差量,以及(ii)在随后的第二时间点处所述交通对象的第二GPS位置点以及相应的第二GPS误差量,每个GPS位置点对应于所述交通对象的纬度和经度;
(b)参考交通系统的交通空间数据库来(i)针对所述第一GPS位置点,识别对应于所述第一GPS位置点的第一GPS误差量的第一距离内的所述交通系统的第一组一个或更多个候选位置点,以及(ii)针对所述第二GPS位置点,识别对应于所述第二GPS位置点的第二GPS误差量的第二距离内的所述交通系统的第二组一个或更多个候选位置点;
(c)基于所述交通系统的所述第一组和第二组一个或更多个候选位置点,确定所述交通对象在所述第一组一个或更多个候选位置点的第一候选位置点与所述第二组一个或更多个候选位置点的第二候选位置点之间的最可能行驶路径;
(d)沿着所述最可能行驶路径,确定定位在来自所述第一组的所述第一候选位置点与来自所述第二组的第二候选位置点之间的一个或更多个推断位置点;以及(e)将一组所述一个或更多个推断位置点以及至少所述第一候选位置点或所述第二候选位置点从所述系统传输至第二计算装置,以使得所述第二计算装置在显示在所述第二计算装置的显示器上的地图用户界面上呈现所述交通对象的图示,其中所述图示被描绘为以基于所述组一个或更多个推断位置点以及至少所述第一候选位置点或所述第二候选位置点的方式移动;并且
其中(a)至(e)与在提供共乘或递送服务时用户操作所述第二计算装置以使得选择操作所述第一计算装置的驾驶员、以及驾驶员操作所述第一计算装置以接取所述第二计算装置的用户相联系地来执行。
20.根据权利要求19所述的非暂态计算机可读介质,其中所述指令使所述系统通过针对所述一个或更多个推断位置点中的每一个确定推断的时戳来沿着所述最可能行驶路径确定所述一个或更多个推断位置点。
21.根据权利要求19所述的非暂态计算机可读介质,其中识别所述交通系统的所述第一组和第二组一个或更多个候选位置点包括参考所述交通系统的交通空间数据库。
22.根据权利要求21所述的非暂态计算机可读介质,其中所述第一组的至少一个候选位置点和所述第二组的至少一个候选位置点的每个对应于所述交通空间数据库中识别的行驶路径上的位置点。
23.根据权利要求19所述的非暂态计算机可读介质,其中所述第一GPS位置点包括第一时戳或与第一时戳相关联且其中所述第二GPS位置点包括第二时戳或与第二时戳相关联,且其中确定所述最可能行驶路径包括结合路由引擎、物理引擎或隐马尔科夫模型求解器中的至少一个使用所述第一和第二GPS位置点的所述第一和第二时戳。
24.根据权利要求19所述的非暂态计算机可读介质,其中将所述组一个或更多个推断位置点传输至所述第二计算装置包括确定与所述第二计算装置相关联的当前时间,以及基于所述当前时间传输所述组一个或更多个推断位置点。

说明书全文

将交通对象的位置信息动态地提供给计算装置

技术领域

[0001] 本公开一般地涉及将交通对象的位置信息动态地提供给计算装置。

背景技术

[0002] 用于可视化对象位置的当前系统通常在地图上显示对象的原始全球定位系统(GPS)数据。这种GPS数据被更新且随后被重新显示来展示对象的新位置。但是,在许多情况中,原始GPS数据未提供对象的实际位置和运动的准确描绘。发明内容
[0003] 根据一方面,本公开提供一种将交通对象的位置信息提供给一个或多个计算装置的方法,所述方法由计算系统的一个或更多个处理器执行且包括:
[0004] (a)在所述计算系统处从第一计算装置接收(i)在第一时间点处所述交通对象的第一全球定位卫星(GPS)位置点以及相应的第一GPS误差量,以及(ii)在随后的第二时间点处所述交通对象的第二GPS位置点以及相应的第二GPS误差量,每个GPS位置点对应于所述交通对象的纬度和经度坐标;
[0005] (b)(i)针对所述第一GPS位置点,识别对应于所述第一GPS位置点的第一GPS误差量的第一距离内的交通系统的第一组一个或更多个候选位置点,以及(ii)针对所述第二GPS位置点,识别对应于所述第二GPS位置点的第二GPS误差量的第二距离内的所述交通系统的第二组一个或更多个候选位置点;
[0006] (c)基于所述交通系统的所述第一组和第二组一个或更多个候选位置点,确定所述交通对象在所述第一组一个或更多个候选位置点的第一候选位置点与所述第二组一个或更多个候选位置点的第二候选位置点之间的最可能行驶路径;
[0007] (d)沿着所述最可能行驶路径,确定定位在来自所述第一组的所述第一候选位置点与来自所述第二组的第二候选位置点之间的一个或更多个推断位置点;以及
[0008] (e)将一组所述一个或更多个推断位置点以及至少所述第一候选位置点或所述第二候选位置点从所述计算系统传输至第二计算装置,以使得所述第二计算装置在显示在所述第二计算装置的显示器上的地图用户界面上呈现所述交通对象的图示,其中所述图示被描绘为以基于所述组一个或更多个推断位置点以及至少所述第一候选位置点或所述第二候选位置点的方式移动;并且
[0009] 其中(a)至(e)与在提供共乘或递送服务时用户操作所述第二计算装置以使得选择操作所述第一计算装置的驾驶员、以及驾驶员操作所述第一计算装置以接取所述第二计算装置的用户相联系地来执行。
[0010] 在一个实施例中,识别所述交通系统的所述第一组和第二组一个或更多个候选位置点包括参考所述交通系统的交通空间数据库
[0011] 在一个实施例中,所述第一组的至少一个候选位置点和所述第二组的至少一个候选位置点的每个对应于所述交通空间数据库中识别的行驶路径上的位置点。
[0012] 在一个实施例中,所述第一GPS位置点包括第一时戳或与第一时戳相关联且其中所述第二GPS位置点包括第二时戳或与第二时戳相关联,且其中确定所述最可能行驶路径包括结合路由引擎、物理引擎或隐尔科夫模型求解器中的至少一个使用所述第一和第二GPS位置点的所述第一和第二时戳。
[0013] 在一个实施例中,沿着所述最可能行驶路径确定所述一个或更多个推断位置点包括针对所述一个或更多个推断位置点中的每一个确定推断的时戳。
[0014] 在一个实施例中,将所述组一个或更多个推断位置点传输至所述第二计算装置包括确定与所述第二计算装置相关联的当前时间,以及基于所述当前时间传输所述组一个或更多个推断位置点。
[0015] 根据另一方面,本公开提供一种用于将交通对象的位置信息提供给一个或多个计算装置的系统,所述系统包括:
[0016] 存储指令的存储器资源;
[0017] 网络接口;以及
[0018] 一个或更多个处理器,其耦合至所述存储器资源和所述网络接口,以执行所述指令,其中所述指令在由所述一个或更多个处理器执行时使得所述系统:
[0019] (a)经由所述网络接口在所述系统处从第一计算装置接收(i)在第一时间点处所述交通对象的第一全球定位卫星(GPS)位置点以及相应的第一GPS误差量,以及(ii)在随后的第二时间点处所述交通对象的第二GPS位置点以及相应的第二GPS误差量,每个GPS位置点对应于所述交通对象的纬度和经度;
[0020] (b)(i)针对所述第一GPS位置点,识别对应于所述第一GPS位置点的第一GPS误差量的第一距离内的交通系统的第一组一个或更多个候选位置点,以及(ii)针对所述第二GPS位置点,识别对应于所述第二GPS位置点的第二GPS误差量的第二距离内的所述交通系统的第二组一个或更多个候选位置点;
[0021] (c)基于所述交通系统的所述第一组和第二组一个或更多个候选位置点,确定所述交通对象在所述第一组一个或更多个候选位置点的第一候选位置点与所述第二组一个或更多个候选位置点的第二候选位置点之间的最可能行驶路径;
[0022] (d)沿着所述最可能行驶路径,确定定位在来自所述第一组的所述第一候选位置点与来自所述第二组的第二候选位置点之间的一个或更多个推断位置点;以及
[0023] (e)经由所述网络接口将一组所述一个或更多个推断位置点以及至少所述第一候选位置点或所述第二候选位置点从所述系统传输至第二计算装置,以使得所述第二计算装置在显示在所述第二计算装置的显示器上的地图用户界面上呈现所述交通对象的图示,其中所述图示被描绘为以基于所述组一个或更多个推断位置点以及至少所述第一候选位置点或所述第二候选位置点的方式移动;并且
[0024] 其中(a)至(e)与在提供共乘或递送服务时用户操作所述第二计算装置以使得选择操作所述第一计算装置的驾驶员、以及驾驶员操作所述第一计算装置以接取所述第二计算装置的用户相联系地来执行。
[0025] 在一个实施例中,所述指令使得所述系统通过参考所述交通系统的交通空间数据库来识别所述交通系统的所述第一组和第二组一个或更多个候选位置点。
[0026] 在一个实施例中,所述第一组的至少一个候选位置点和所述第二组的至少一个候选位置点的每个对应于所述交通空间数据库中识别的行驶路径上的位置点。
[0027] 在一个实施例中,所述第一GPS位置点包括第一时戳或与第一时戳相关联且其中所述第二GPS位置点包括第二时戳或与第二时戳相关联,且其中所述一个或更多个处理器通过结合路由引擎、物理引擎或隐马尔科夫模型求解器中的至少一个使用所述第一和第二GPS位置点的所述第一和第二时戳来确定所述最可能行驶路径。
[0028] 在一个实施例中,所述指令使得所述系统通过针对所述一个或更多个推断位置点中的每一个确定推断的时戳来沿着所述最可能行驶路径确定所述一个或更多个推断位置点。
[0029] 在一个实施例中,所述指令使得所述系统通过确定与所述第二计算装置相关联的当前时间以及基于所述当前时间传输所述组一个或更多个推断位置点而将所述组一个或更多个推断位置点传输至所述第二计算装置。
[0030] 根据又一方面,提供一种将交通对象的位置信息提供给一个或多个计算装置的设备,所述设备包括:
[0031] 单元(a),用于在所述系统处从第一计算装置接收(i)在第一时间点处交通对象的第一全球定位卫星(GPS)位置点以及相应的第一GPS误差量,以及(ii)在随后的第二时间点处所述交通对象的第二GPS位置点以及相应的第二GPS误差量,每个GPS位置点对应于所述交通对象的纬度和经度;
[0032] 单元(b),用于参考交通系统的交通空间数据库来(i)针对所述第一GPS位置点,识别对应于所述第一GPS位置点的第一GPS误差量的第一距离内的所述交通系统的第一组一个或更多个候选位置点,以及(ii)针对所述第二GPS位置点,识别对应于所述第二GPS位置点的第二GPS误差量的第二距离内的所述交通系统的第二组一个或更多个候选位置点;
[0033] 单元(c),用于基于所述交通系统的所述第一组和第二组一个或更多个候选位置点,确定所述交通对象在所述第一组一个或更多个候选位置点的第一候选位置点与所述第二组一个或更多个候选位置点的第二候选位置点之间的最可能行驶路径;
[0034] 单元(d),用于沿着所述最可能行驶路径,确定定位在来自所述第一组的所述第一候选位置点与来自所述第二组的第二候选位置点之间的一个或更多个推断位置点;以及[0035] 单元(e),用于将一组所述一个或更多个推断位置点以及至少所述第一候选位置点或所述第二候选位置点从所述系统传输至第二计算装置,以使得所述第二计算装置在显示在所述第二计算装置的显示器上的地图用户界面上呈现所述交通对象的图示,其中所述图示被描绘为以基于所述组一个或更多个推断位置点以及至少所述第一候选位置点或所述第二候选位置点的方式移动;并且
[0036] 其中单元(a)至(e)与在提供共乘或递送服务时用户操作所述第二计算装置以使得选择操作所述第一计算装置的驾驶员、以及驾驶员操作所述第一计算装置以接取所述第二计算装置的用户相联系地执行处理。
[0037] 在一个实施例中,所述设备还包括用于通过针对所述一个或更多个推断位置点中的每一个确定推断的时戳来沿着所述最可能行驶路径确定所述一个或更多个推断位置点的单元。
[0038] 在一个实施例中,识别所述交通系统的所述第一组和第二组一个或更多个候选位置点包括参考所述交通系统的交通空间数据库。
[0039] 在一个实施例中,所述第一组的至少一个候选位置点和所述第二组的至少一个候选位置点的每个对应于所述交通空间数据库中识别的行驶路径上的位置点。
[0040] 在一个实施例中,所述第一GPS位置点包括第一时戳或与第一时戳相关联且其中所述第二GPS位置点包括第二时戳或与第二时戳相关联,且其中确定所述最可能行驶路径包括结合路由引擎、物理引擎或隐马尔科夫模型求解器中的至少一个使用所述第一和第二GPS位置点的所述第一和第二时戳。
[0041] 在一个实施例中,将所述组一个或更多个推断位置点传输至所述第二计算装置包括确定与所述第二计算装置相关联的当前时间,以及基于所述当前时间传输所述组一个或更多个推断位置点。附图说明
[0042] 图1图示依据实施方案的示例性追踪系统。
[0043] 图2图示根据实施方案的用于确定交通对象的行驶路径的示例性方法。
[0044] 图3图示根据实施方案的图示图2的示例性方法的一部分的示例性模型。
[0045] 图4A图示依据实施方案的用于将交通对象的位置信息提供给计算装置的示例性方法。
[0046] 图4B图示根据实施方案的图示图4A的示例性方法的一部分的示例性模型。
[0047] 图5图示依据实施方案的图示显示在计算装置上的交通对象的轨迹的示例性用户界面。
[0048] 图6是图示其上可实施本文中描述的实施方案的计算机系统的方框图
[0049] 图7是图示其上可实施本文中描述的实施方案的移动计算装置的方框图。

具体实施方式

[0050] 本文中描述的实施方案提供一种系统,其将交通对象的实时(或接近实时)位置和运动信息传递给客户端应用程序。系统可在交通对象位置移动时从交通对象(例如,车辆、自行车、火车等)的交通装置(例如,计算装置)接收原始全球定位系统(GPS)数据并且可使用所述数据来确定交通对象在基础交通系统上的最可能行驶路径。
[0051] 在一些实施方案中,交通对象的操作者或驾驶者可使用计算装置(例如,也被称作交通装置),所述计算装置可在给定时刻将对应于其实时位置的GPS数据传达给系统。在许多情况下,这种GPS数据可能由于GPS误差和/或信号问题而不准确。例如,交通对象的不准确位置信息对于正使用客户端应用程序请求服务的最终用户而言可能存在问题。
[0052] 通过将原始GPS数据拟合至基础交通系统,系统可将交通对象的轨迹或移动的更准确描绘提供给最终用户。运行客户端应用程序的计算装置(例如,也被称作观测装置)可接收交通对象的最可能行驶路径的位置信息并且呈现交通对象的轨迹的可视化,其将交通对象的实际移动准确地反映给用户。
[0053] 根据实施方案,系统可经由网络从一个或更多个交通装置定时地接收原始GPS数据。由于交通装置的位置对应于相应交通对象的位置,所以交通装置的GPS数据可在某一时刻识别交通对象的位置(例如,纬度、经度、海拔等)。当交通对象实时移动时,可在不同时刻将GPS数据定时地提供给系统,由此提供指示交通对象的移动的经更新位置信息。
[0054] 在一些实施方案中,对于每个接收到的GPS点,系统可识别交通系统(例如,马路、行人道、路、船舶航线、飞机航线等)的一个或更多个候选点,其可对应于针对所述GPS点的交通对象的可能位置。例如,针对接收到的GPS点识别的候选点可具有非常接近(例如,在特定距离内)所述GPS点的纬度和经度。系统随后可使用或应用一个或更多个交通模型来针对每个交通对象确定交通系统上的最可能行驶路径。
[0055] 交通装置可为计算装置,其运行被配置来与系统通信的应用程序。类似地,观测装置可运行也被配置来与系统通信并且呈现交通对象的轨迹的可视化的客户端应用程序。如本文中描述,“交通装置”和“观测装置”指的是计算装置,其可对应于台式计算机、蜂窝装置或智能电话、个人数字助理(PDA)、膝上型计算机、平板装置、电视(IP电视)等,其可提供网络连接和处理资源以使用户能经由网络与系统通信。交通装置也可对应于出租车计费器、交通对象的其它计费装置或客户硬件等。还如本文中使用,“交通对象”指的是可在运动中的对象,诸如,例如车辆(例如,轿车、SUV、豪华轿车)、摩托车、自行车、火车、轻轨车辆、飞机、直升飞机、船舶或人(例如,步行、跑步、滑板的个人)。
[0056] 更进一步,系统例如可实现在使用计算装置(或观测装置)的个人与经由交通对象提供服务的可得服务提供者之间安排服务(诸如运输服务、快递服务、娱乐服务)。作为实例,用户可请求服务,诸如运输或快递服务(例如,外卖、送信服务、快餐车服务或产品运送)或使用系统的娱乐服务(例如,街头乐队、弦乐四重奏),且服务提供者(诸如驾驶者、食品提供者、乐队等)可与系统和/或用户通信来安排服务。如本文中描述,“用户”、“最终用户”、“请求者”或“客户”总是用来指使用他或她的计算装置上的应用程序请求或订购服务的个人。也如本文中描述,“提供者”、“服务提供者”、“供应者”或“商家”总是用来指可提供服务的个人或实体。
[0057] 在一些实施方案中,一旦系统确定交通对象在交通系统上的最可能行驶路径,系统就可沿着最可能行驶路径推断额外位置点。随后可经由网络将一组推断点无线地传输至在最终用户的计算装置(例如,观测装置)上存储并且运行的客户端应用程序。客户端应用程序可使用一组推断点并且呈现交通对象的轨迹的可视化,其将交通对象的实际移动准确地反映给用户。
[0058] 本文中描述的一个或更多个实施方案提供由计算装置执行的方法、技术和行动通过程序执行或作为计算机实施方法执行。如本文中使用,通过程序意指通过使用代码或计算机可执行指令。这些指令可存储在计算装置的一个或更多个存储器资源中。通过程序执行的步骤可能是自动的或可能不是自动的。
[0059] 本文中描述的一个或更多个实施方案可使用程序模、引擎或组件实施。程序模块、引擎或组件可包括程序、子程序、程序的一部分或能够执行一个或更多个规定任务或功能的软件组件或硬件组件。如本文中所使用,模块或组件可独立于其它模块或组件存在于硬件组件上。替代地,模组或组件可为其它模块、程序或机器的共用元件或程序。
[0060] 本文中描述的一些实施方案可大致需要使用计算装置,包括处理和存储器资源。例如,本文中描述的一个或更多个实施方案可整体或部分实施在计算装置上,诸如服务器、台式计算机、蜂窝或智能电话、个人数字助理(例如,PDA)、膝上型计算机、打印机、数字相框、网络设备(例如路由器)和平板装置。存储器、处理和网络资源都可结合本文中描述的任意实施方案的建立、使用或执行使用(包括结合任意方法的执行或结合任意系统的实施)。
[0061] 此外,本文中描述的一个或更多个实施方案可通过使用可由一个或更多个处理器执行的指令实施。这些指令可携载在计算机可读介质上。结合图6-7示出或描述的机器提供上方可携载及/或执行用于实施本发明的实施方案的指令的处理资源和计算机可读介质的实例。尤其,结合本发明的实施方案示出的许多机器包括处理器和用于保存数据和指令的多种形式的存储器。计算机可读介质的实例包括永久存储器存储装置,诸如个人计算机或服务器上的硬盘驱动器。计算机存储介质的其它实例包括便携式存储单元,诸如CD或DVD单元、闪存(诸如携载在智能手机、多功能装置或平板上)和磁存储器。计算机、终端、网络支持装置(例如,移动装置,诸如手机)是利用处理器、存储器和存储在计算机可读介质上的指令的机器和装置的所有实例。此外,实施方案可实施为计算机程序或能够携载这样一种程序的计算机可使用携载介质的形式。
[0062] 系统描述
[0063] 图1图示依据实施方案的示例性追踪系统。具体地,图1图示一种系统,其可结合另一系统或作为其部分操作,所述另一系统将实现被安排在双方之间的服务(例如,在服务请求者与服务提供者之间安排运输或快递)。例如,追踪系统可通过提供请求者区域内的可得服务提供者的可视化(接近实时)而为请求者提供服务。在一些实例中,系统100可从对应于一个或更多个交通对象的一个或更多个交通装置定时地接收GPS数据,使用所述GPS数据确定一个或更多个交通对象的最可能行驶路径且将所述最可能行驶路径的一组推断点提供给观测装置。以此方式,系统可将交通对象的位置信息动态地提供给用户的计算装置,使得可将交通对象的轨迹的流畅及准确可视化显示给用户。诸如所描述的系统可在各种背景下实施。
[0064] 系统100可动态地提供对于任意相应交通系统(例如,马路、行人道、铁路、船舶航线、飞机航线等)而言在运动中的任意类型的对象(例如,车辆、自行车、船舶、火车等)的位置信息。在一个实例中,系统100可追踪自行车信使。由于自行车信使可能在特定马路上以及穿过公园或开阔地(而非在高速公路或河流中)骑行,所以自行车信使的相应基础交通系统可包括车辆无法行驶的一些道路或其它路径(例如,相应交通系统只包括可能行驶的大道)。
[0065] 在另一个实例中,系统100可追踪火车在特定铁路和铁道(即,火车的相应交通系统)上的移动,和/或可追踪飞机在飞行路线和航线(即飞机的相应交通系统)中的移动。飞机交通系统还可考虑例如禁飞区或机场之间的典型航线。系统100也可追踪车辆的移动。一般来说,车辆可在多数道路和高速公路上行驶,但仅在例如某些桥梁上或仅在穿过具有街道的某些公园的可选择街道上行驶。虽然系统100不限于车辆和道路,但是出于简化本申请的目的,主要参考可在道路(即车辆的各自交通系统)上行驶的车辆描述系统100。
[0066] 系统100包括追踪服务110、交通模型数据库140、交通装置界面190和观测装置界面195。在一些实施中,追踪服务110还可包括行驶路径(POT)确定120、交通模型确定130、位置推断150和数据存储器160。系统100的组件可组合来将一个或更多个交通对象的位置信息动态地提供给一个或更多个观测装置180。例如,系统100的组件可实施在网络侧资源上,诸如一个或更多个服务器上。系统100也可通过替代架构(例如,对等网络等)中的其它计算机系统实施。
[0067] 作为替代或补充,系统100的一些或所有组件可诸如通过在交通装置170和/或观测装置180上运行的应用程序实施在客户端机器或装置上。例如,在交通装置和/或观测装置上运行的客户端应用程序可执行来执行由系统100的各种组件描述的一个或更多个的程序。系统100可经由网络接口(例如,无线地或使用电缆)在网络上通信以与一个或更多个交通装置170和一个或更多个观测装置180通信。
[0068] 交通装置界面190和观测装置界面195的每一个管理在系统100与相应装置之间经由网络的通信。在一些实施中,每个交通装置170可下载、存储并且操作应用程序,所述应用程序可与交通装置界面190介接以经由蜂窝或Wi-Fi网络将信息提供给系统100和/或从系统100接收信息。类似地,每个观测装置180可下载、存储并且操作应用程序(例如,与由客户使用的应用程序不同的应用程序或相同的应用程序),所述应用程序可与观测装置界面195介接以将信息提供给系统100和/或从系统100接收信息。
[0069] 例如,应用程序可包括或使用应用程序编程界面(API)(诸如面向外部的API)以与各自装置界面190、195传达数据。面向外部的API可通过任意数量的方法(诸如网络表单、经由restful API的编程访问、简单对象访问协议(SOAP)、远程过程调用(PRC)、脚本访问等)经由网络上的安全访问通道提供至系统100的访问,同时也提供安全访问方法(包括基于密钥的访问)来确保系统100保持安全且仅经授权用户、服务提供者和/或第三方可获得系统100的访问。
[0070] 追踪服务110可经由交通装置界面190从一个或更多个交通装置170接收GPS数据171。交通装置170可为与交通对象(例如,车辆,诸如轿车、出租车、SUV等)定位在一起的计算装置,使得其位置对应于交通对象的位置。当交通对象移动时,例如,沿着一条或更多条道路行驶时,其实际位置改变且通过交通装置170的一个或更多个传感器(例如,GPS组件和磁计)测量/识别。由交通装置170提供的GPS数据171可对应于在不同时刻确定的交通装置170的位置或GPS信息(例如,GPS快照)。
[0071] 例如,在时间t=T1处,交通装置170可位于由纬度和经度(例如,Lat1,Long1)识别的特定位置或GPS点。交通装置170可在时间t=T1处将包括纬度和经度以及GPS读数的时戳(例如,时戳将为t=T1)和GPS误差量的GPS数据171提供给POT确定120。在一些实施中,GPS数据171也可包括GPS方位(或磁力计方位)或其它信息,诸如附近的Wi-Fi网络、蜂窝网络强度等。如果在时间t=T2处,交通对象在移动,那么交通装置可在分别由不同纬度和经度(Lat2及Long2)识别的不同位置或GPS点上。这个GPS数据171还连同这个特定GPS测量下的时戳(t=T2)和GPS误差量一起提供给追踪服务110。以此方式,交通装置170可定时地取得交通对象的当前状态或位置的GPS测量值(例如,每三秒、每四秒等)并且将这些测量值提供给追踪服务110。在另一个实例中,每当新或经更新的GPS测量值被取得或可得时,交通装置170可提供GPS数据171。
[0072] 在一些实施中,当交通对象移动并且在不同时刻提供经更新的GPS数据171时,POT确定120可针对每个交通对象(例如,针对每个交通装置170)维持GPS数据的运行历史。例如,对于每个交通对象,所述交通对象的GPS数据171可被持续添加至先前接收的GPS数据的列表或表格。POT确定120可包括数据存储器或缓冲器来存储从交通装置170接收的GPS数据171。在不同时刻使用GPS数据171,POT确定120试图识别车辆实际上在哪条道路或公路(例如,当在追踪车辆时)上移动。
[0073] 当POT确定120在不同时刻接收到GPS数据171(例如,接收GPS快照)时,POT确定120识别可对应于给定GPS点的交通系统的一个或更多个候选点。候选点是对应于基础交通系统上的位置的点(具有纬度和经度读数)。例如,车辆交通系统,候选点可为对应于街道上或街道之间的交叉口的位置的点。为了识别一个或更多个候选点,必须识别基础交通系统(基于追踪服务110所追踪的交通对象的类型)。
[0074] 在一个实施中,POT确定120针对一个或更多个适当的交通模型或空间数据库查询121交通模型确定130。POT确定120可使用交通模型和/或空间数据库来识别一个或更多个候选点及针对特定交通对象确定最可能行驶路径。查询121可识别追踪服务110将追踪的交通对象的类型(例如,自行车、车辆、飞机等)。基于交通对象的类型,交通模型确定130可从交通模型数据库140选择可由POT确定120使用的一个或更多个所选择的交通模型和/或空间数据库123。
[0075] 例如,交通模型数据库140可存储多种交通系统空间数据库。交通系统空间数据库是可查询数据库,其识别沿着给定交通对象可使用的交通路径的不同点(例如,具有纬度和经度和/或海拔)和不同点如何与其它点连接的信息。一些交通系统空间数据库还可包括识别景点或地标位置的点。
[0076] 有关车辆,车辆交通系统空间数据库可包括对应于道路、公路、高速公路等上的位置的点和有关道路的其它信息,诸如交叉口、单行道、不同道路和街道如何彼此连接等。类似地,有关飞机,飞机交通系统空间数据库可包括对应于沿着飞机航线的位置的点及哪些点是禁飞区的边界,而对于火车,火车交通系统空间数据库可包括对应于铁道和铁路上的位置的点及铁道在何处连接/如何连接。因实时更新和变化,额外空间数据库可创建及/或添加至交通模型数据库140。
[0077] POT确定120参考交通系统空间数据库以识别对应于交通系统上的位置的一个或更多个候选点。因此,对于交通对象的特定GPS点,候选点可为交通装置170的可探测实际(或现实)位置。这可为交通对象的最佳近似位置,其匹配基础交通系统上的实际位置。POT确定120识别一个或更多个候选点,因此在许多情况下,GPS测量可能并非完全准确。这可能是计算装置的不良GPS组件的结果或在取得GPS读数时不良信号或干扰的结果。由于GPS数据171可能不准确,测量(及传输的)交通装置170的纬度和经度可能不一定对应于交通装置170的实际位置。例如,由于GPS测量值的不一致,车辆的给定GPS点可识别Lat1,Long1(其对应于街道附近的建筑)作为交通装置170在时间t=T1处的位置,但是在现实中,交通装置
170在时间t=T1处可定位在Lat2,Long2(其对应于街道上的位置)。使用位置Lat2,Long2将更准确地确定交通装置170的最可能行驶路径(尤其在Lat1,Long 1识别车辆在与车辆实际行驶的道路不同的道路上的情况下)。
[0078] 基于所选择的空间数据库或模型123,POT确定120可针对在不同时刻接收的每个(或一些)GPS点(例如,GPS快照)识别所选择的交通系统的一个或更多个候选点。例如,如果追踪服务110在追踪车辆,那么所选择的空间数据库123可对应于车辆交通系统空间数据库,所述车辆交通系统空间数据库包括对应于道路上的位置的点。通过参考车辆交通系统空间数据库,对于给定GPS点(例如,具有纬度和经度、时戳、方位和GPS误差量),POT确定120识别靠近或接近测量到(及接收到)的GPS点的一个或更多个候选点(例如,对应于道路上的位置的点)。可通过搜索在某一时刻与给定GPS点相距预定距离内的点而识别候选点。依据实施,预定距离可由系统100的管理员或其它用户配置或设置或可对应于由交通装置的各自GPS组件提供的给定GPS点的GPS误差量。
[0079] 当交通对象移动并且在不同时刻将经更新的GPS数据171提供给POT确定120时,POT确定120继续在不同时刻识别每个GPS点的候选点(或作为替代,非每个GPS点,而是仅针对所选择的GPS点)。POT确定120随后可基于交通系统上的所识别候选点确定最可能行驶路径。在一个实例中,POT确定120可查询121交通模型确定130(在其查询空间数据库的同时或在不同时间)以选择其它交通模型来确定最可能行驶路径。这些交通模型可使用所识别的一个或更多个候选点来进行这个确定。例如,存储在数据库140中的其它交通模型包括路由引擎、物理引擎、隐马尔科夫(Markov)模型求解器或可个别或组合用于确定一个或更多个交通对象的最佳或最可能行驶路径的其它模型。
[0080] 例如,路由引擎、物理引擎和/或隐马尔科夫模型求解器(或其它模型)可提供一种机制,POT确定120可使用所述机制来从所有(或许多)可能的行驶路径中选择一个行驶路径作为交通对象的最可能行驶路径。基于各时刻(对应于每个接收到的GPS点)的所识别候选点,路由引擎和/或物理引擎例如可使用GPS点的时戳来产生交通系统中两个点之间的计时距离和行驶路径。使用这种信息,路由引擎和/或物理引擎可确定在道路上按特定速度(例如,基于速度限制)行驶的典型车辆从一个GPS点到达另一个GPS点(或GPS点的一个候选点至后一GPS点的另一个候选点)将(或应)花费多长时间。这可提供有关(与其它行驶路径相比)哪条行驶路径是车辆的最可能行驶路径的更好指示。在另一个实例中,隐马尔科夫模型求解器(或其它马尔科夫模型)也可由POT确定120用于确定交通对象的最可能行驶路径。
[0081] 由于所识别的候选点仅对应于交通装置170的可能位置,所以POT确定120仅考虑特定类型的交通对象的可能行驶大道(例如,针对车辆的马路、针对自行车的马路和行人道、针对火车的铁道)用于确定最可能行驶路径。在追踪车辆的情况下,最可能行驶路径可包括例如,马路1至马路2至马路3等,同时继续逗留在这些马路上(例如,无法在马路之间跳跃)。以此方式,交通对象的GPS数据171可匹配至基础交通系统且可针对每个交通对象确定最可能行驶路径。
[0082] 在一些实施中,当POT确定120继续处理GPS数据171时(例如,当持续或定时从交通装置170接收GPS数据时),所确定的最可能行驶路径125可继续存储在数据存储器160中。POT确定120可继续识别一个或更多个候选点且确定最可能行驶路径,直至交通装置170停止提供GPS数据171(例如关掉或关闭/登出应用程序)或直至接收到其它触发。例如,如果交通装置170在执行服务(例如,不可得)或不能使用,那么交通装置170可停止将GPS数据171提供给追踪服务110。
[0083] 位置推断150可基于所确定的最可能行驶路径125产生交通对象的位置数据。作为补充或替代,位置推断150可从数据存储器160检索所存储的最可能行驶路径151。使用通过POT确定120确定的最可能行驶路径151,位置推断150可推断沿着最可能行驶路径的额外位置点。
[0084] 例如,如果在时间t=T1处,GPS点或候选点被确定为沿着最可能行驶路径的点且在四秒后的时间t=T2处,另一个GPS点或候选点被确定为沿着最可能行驶路径的点,那么可在t=T1与t=T2处的点之间沿着最可能行驶路径产生额外的推断数据点。对于每个推断点,也可产生相应的推断时戳。可选地,每个推断数据点也可包括方位或航向。通过产生推断点,可将在时间上更靠在一起的额外点(例如,与四秒相比的一秒、半秒或三分之一秒等)提供给观测装置180(经由观测装置界面195),使得交通装置的移动的可视化可更流畅地显示给用户。
[0085] 经由观测装置界面195将推断数据155点提供给观测装置180。在观测装置180上运行(且与系统100通信)的应用程序可使用推断数据点155来实时(或接近实时)显示(例如,作为地图的一部分)交通对象的位置和轨迹。在车辆的实例中,由于推断数据点155(其也可包括所选择的GPS点或候选点)对应于马路、公路和高速公路上的实际位置,所以表示交通对象的图形(例如,车辆的图像)可形成动画来在地图上的适当道路上移动。这通过将推断数据点155中识别的位置匹配至在用户的观测装置180上显示的基础地图而完成。以此方式,可将准确反映交通对象的实际移动的交通对象的轨迹的流畅可视化呈现给用户。
[0086] 位置推断150也可从一个或更多个观测装置180接收计时信息181(经由观测装置界面195)以调整或控制推断数据点155的传递的计时及/或控制将提供给个别观测装置180的推断数据的数量。观测装置180通常可依不同时钟操作。例如,观测装置180-1可与观测装置180-2相差十秒。类似地,交通装置170也可依不同时钟操作。虽然有装置的时钟不同步的事实,但是系统100提供无需同步的可视化服务,使得交通装置170和观测装置180无需同步来使位置信息被准确地提供给观测装置180。
[0087] 位置推断150可提供推断数据点155的窗(例如,一组推断数据点155),其跨交通对象的特定持续时间(例如,十秒)。这个推断数据点155的窗可具有开始时间和结束时间(其对应于沿着最可能行驶路径的开始点和结束点)。一组推断数据点155(例如,跨十秒或十五秒等的持续时间)可有利于观测装置180丢失信号或无法从追踪服务110接收后续的推断数据点155组的情况。在观测装置180上运行的应用程序可继续显示交通对象的可视化达一定时间直至重新建立信号且接收到额外的推断数据点155。位置推断150可继续定时检查/接收个别观测装置180的计时信息181来调整或控制推断数据点155的传递的计时及/或控制将提供给个别观测装置180的推断数据的数量。此外,基于观测装置180的计时信息181,位置推断150也可确定延迟(例如,确定回退多远来使用及提供交通对象的位置点)并且将交通对象的推断数据点155的窗提供给特定观测装置180来考虑时钟差异。
[0088] 在一些实施中,当位置推断150将额外的推断数据点155窗传输至观测装置180时,这个额外窗可与先前传输窗重叠(例如,一些后续传输的推断点可共用先前传输的点)。在这样一种情况下,在观测装置180上运行的应用程序可用更近接收的推断数据替换或修改冗余数据(例如,在相同时间t=T5处具有两个数据点)且将其它更近接收的推断数据点155添加/附加至先前接收的推断数据点155。以此方式,虽然可在不连续时间接收数据段,但是交通对象的可视化在观测装置180可为无缝的。
[0089] 追踪服务110(经由位置推断150)也可维持用户账户的数据库(例如,使用数据存储器160或其它数据存储器),并且可监控交通装置170和观测装置180的当前位置。在一些实例中,仅在特定区域内或与观测装置180相距预定距离内的交通对象的推断数据点155将被传输给观测装置180(例如,与观测装置180相距一定距离内,诸如15英里(24.14公里)半径或20分钟距离或在观测装置180当前所处的城市范围或市区内等)。
[0090] 追踪服务110还在追踪服务110和/或系统100的一个或更多个组件故障的情况下提供自动防故障。例如,追踪服务110可继续从交通装置170接收原始GPS数据171并且将原始GPS数据直接提供给观测装置180,而不处理(例如,不将GPS数据拟合至基础交通系统)GPS数据。在观测装置180上运行的应用程序可使用原始GPS数据来在不同时刻提供交通对象的估计位置。类似地,如果例如一些交通装置依不提供GPS误差及/或无法被映射至交通系统的较旧应用程序操作,那么原始GPS点仍可被提供给系统100,所述原始GPS点随后(在不处理的情况下)被传输给观测装置180。以此方式,追踪服务110可通过使系统100的不同组件能在任意不同装置上操作及/或甚至在一个或更多个组件故障时操作而可平扩展。
[0091] 在一些变型中,系统100中描述的一些组件可被提供作为个别组件或作为相同组件的部分。例如,交通模型确定130可被提供作为POT确定120的部分或位置推断150可被提供作为POT确定120的部分。逻辑可用各种应用程序(例如,软件)和/或用实施系统100的计算机系统的硬件实施。
[0092] 方法
[0093] 图2图示根据实施方案的用于确定交通对象的行驶路径的示例性方法。诸如通过图2的实施方案描述的方法可使用例如结合图1的实施方案描述的组件实施。相应地,对图1的元件的参考是为了图示用于执行所描述的步骤或子步骤的适当元件或组件的目的。
[0094] 追踪系统从一个或更多个交通装置定时地接收GPS信息(步骤210)。由交通装置提供的GPS信息可包括在给定时刻交通装置的纬度和经度、时戳、方位和GPS误差量。交通装置的GPS组件可针对每个测量到的GPS数据确定GPS误差(例如,在每个给定时刻)。以此方式,当交通装置(和相应的交通对象)移动并且改变位置时,交通装置可继续将GPS信息提供给追踪系统来指示新及/或经更新的位置。
[0095] 例如,为了说明的目的参考图3,追踪系统(如图1中描述)在追踪一个或更多个车辆(交通对象)的移动。因此,基础交通系统对应于车辆交通系统。在这种情况下,在时间t=T1处,交通装置提供GPS信息,其识别其具有纬度和经度的位置GPS1、GPS误差量Δ1和时戳t=T1。在这种情况下,虽然交通装置可在马路上行驶(例如,交通对象可为车辆),但是由于GPS测量的不准确性,GPS1可能不一定展示在马路上。类似地,在时间t=T2处,交通装置提供GPS信息,其识别其具有纬度和经度的位置GPS2、GPS误差量Δ2和时戳t=T2及在时间t=T3处,交通装置提供GPS信息,其识别其具有纬度和经度的位置GPS3、GPS误差量Δ3和时戳t=T3等等。交通装置可在其继续移动时继续提供GPS信息。对于在给定时刻的每个GPS信息,也可包括方位信息(例如,南、东南等)。
[0096] 使用GPS信息,追踪系统可针对给定时刻的每个GPS点识别交通系统的一个或更多个候选点(步骤220)。可通过参考一个或更多个交通系统空间数据库及确定哪些点靠近或接近测量到(及接收到)的GPS点而识别候选点。以此方式,可在确定最可能行驶路径时考虑GPS测量值的不准确性。可通过搜索某一时刻与给定GPS点相距预定距离内或一定GPS误差量内的点(各具有纬度和经度)而识别候选点(子步骤222)。GPS误差量也可能因在不同位置变化的信号质量和/或不同的干扰而在点之间变化且可表示为椭圆形(例如,其中纬度误差和经度误差可能不同)或圆形(例如,其中纬度误差和经度误差相同)。作为替代或补充,可针对每个GPS点将GPS误差量归一化(见GPS误差量Δ3,其已被归一化来表示圆形)以执行半径(例如,归一化GPS误差量)内候选点的搜索。
[0097] 再次参考图3中的实例,追踪系统已从交通模型数据库选择车辆交通系统空间数据库(例如因为在本实例中,追踪系统在追踪车辆的移动)。对于每个GPS点,追踪系统可识别对应于道路、公路、高速公路等上的位置的一个或更多个候选点来确定交通装置实际所处的实际道路。例如,对于在时间t=T1处的GPS点GPS1,已通过追踪系统识别分别具有纬度和经度Lat1,Long1、Lat2,Long2和Lat3,Long3的三个候选点。在这种情况下,GPS1具有GPS误差量Δ1,其大于GPS误差量Δ2和Δ3,由此涵盖候选点的较大搜索区域。因此,追踪系统识别交通装置的实际位置可潜在地在街道A、街道B和街道B与主街道的交叉口上。对于时间t=T2处的GPS2,已分别识别具有纬度和经度Lat4,Long4和Lat5,Long5的两个候选点,且对于时间t=T3处的GPS3,仅识别具有纬度和经度Lat6,Long6的唯一候选点。
[0098] 基于所识别的候选点(和相应的时戳),追踪系统可确定交通系统上交通对象的最可能行驶路径(步骤230)。例如,追踪系统可个别或组合应用或使用一个或更多个交通模型,诸如路由引擎、物理引擎、隐马尔科夫模型求解器或其它模型来确定交通对象的最佳或最可能行驶路径。参考图3,追踪系统可确定例如车辆(交通对象)的最可能行驶路径来自下列位置:Lat1,Long1至Lat4,Long4且至Lat6,Long6(也见图4B)。
[0099] 基于所选择的候选点,其它行驶路径可能是可行的。例如,交通装置可能已从Lat2,Long2行驶至Lat4,Long4。但是,交通模型可基于在给定时刻与每个GPS点一起提供的时戳考虑行驶时间以更好地确定Lat1,Long1至Lat4,Long4或Lat2,Long2至Lat4,Long4之间的更可能行驶路径。例如,从Lat2,Long2至Lat4,Long4的行驶时间将比替代情况长得多。类似地,街道C上的Lat5,Long5也是沿着可能行驶路径的点。再次,使用交通模型,诸如隐马尔科夫模型求解器,追踪系统可确定候选点Lat5,Long5与Lat4,Long4相比是不可能的(基于概率、计时等)。
[0100] 图4A图示依据实施方案的用于将交通对象的位置信息提供给计算装置的示例性方法。诸如通过图4的实施方案描述的方法可使用例如结合图1的实施方案描述的组件实施。相应地,对图1的元件的参考是为了图示用于执行所描述的步骤或子步骤的适当元件或组件的目的。在一些实施中,可响应于所确定的最可能行驶路径自动执行图4A的步骤410(例如,在图2的步骤230之后)。
[0101] 追踪系统可推断沿着最可能行驶路径的额外位置点(例如,除被确定在最可能行驶路径上的GPS点或候选点以外)(步骤410)。例如,参考图4B,如果在时间t=T1处,GPS点GPS1的候选点Lat1,Long1被确定为沿着最可能行驶路径的点(例如,从街道B至主街道的黑线)及在一定持续时间之后(例如,五秒)的时间t=T2处,时间t=T2处的GPS点GPS2的候选点Lat4,Long4被确定为沿着最可能行驶路径的另一个点,那么可在t=T1及t=T2处的点之间沿着最可能行驶路径产生额外的推断数据点(由X标记)。当继续确定最可能行驶路径时,可推断额外点。例如,接下来可在Lat4,Long4与Lat6,Long6之间推断点。对于具有纬度和经度的每个这些推断点(用X标记),也可产生相应的推断时戳。每个推断的数据点也可包括方位或航向。
[0102] 将推断数据传输至一个或更多个观测装置(步骤420)。在观测装置上运行的应用程序可使用推断数据来实时(或接近实时)显示(例如,作为地图的部分)交通对象的位置和轨迹。在如图3和图4B中所示的车辆的实例中,由于推断数据(其也可包括所选择的GPS点或候选点)对应于马路、公路和高速公路上的实际位置,所以可使表示交通对象的图形(例如,车辆的图像)形成动画以在地图上的适当马路上移动。这可通过将在推断数据中识别的位置匹配至显示在用户的观测装置上的基础地图而完成。以此方式,可将准确地反映交通对象的实际移动的交通对象的轨迹的流畅可视化呈现给用户。
[0103] 在一个实例中,追踪系统还可确定或接收来自一个或更多个观测装置的计时信息。基于计时信息,追踪系统可调整或控制推断数据的传递计时及/或控制将提供给个别观测装置的推断数据量(子步骤422)。基于观测装置的计时信息,追踪系统也可确定延迟(例如,确定回退多远来使用和提供交通对象的位置点)及将交通对象的一组推断点提供给特定观测装置来考虑系统与观测装置之间的时钟差异。
[0104] 用户界面实例
[0105] 图5图示依据实施方案的图示显示在计算装置上的交通对象的轨迹的示例性用户界面。用户界面500图示可由在观测装置(例如,智能电话)和/或交通装置(在一些实施中)上运行或操作的服务应用程序提供的用户界面。在一个实施中,用户界面500包括地图510和表示观测装置的当前位置的指示符520。在所示的实例中,用户界面500至少部分由用户可用于请求在观测装置的用户与可得服务提供者之间安排运输服务的运输服务应用程序提供。
[0106] 在一些实施中,追踪系统可与可被安排来为请求者提供服务的一队车辆通信。可针对一队车辆(例如,多个交通对象)接收GPS数据并且所述GPS数据由追踪系统处理。追踪系统随后可基于观测装置和交通对象的地理位置将所选择的交通对象的位置信息(例如,推断数据)提供给各自观测装置。以此方式,观测装置的用户可看见交通对象在他或她的区域中的位置和移动(而非在太远而无法服务用户的其它区域中用户不关注的对象)以在请求服务时作出更明智决定。
[0107] 用户界面500可提供将交通对象的实际位置和移动准确地反映给用户的一个或更多个交通对象(例如,在本实例中,运输服务提供者)的位置和轨迹的实时(或接近实时)可视化。使用推断的位置数据(如参考图1至图4B所述),应用程序可在地图510上呈现车辆的图形图像V1。图形图像V1可以准确地反映交通对象在现实中的移动的方式沿着马路(例如,市场街(Market Street))移动。类似地,车辆的第二图形图像V2也可呈现在地图510上且相应地动态地形成动画。
[0108] 根据实施,图形图像也可依据交通对象而变化。图形图像可匹配车辆的类型,例如来提供车辆作为轿车、SUV、豪华轿车等的准确描绘。类似地,对于在基础交通系统上的其它交通对象(例如,自行车、火车、飞机、船舶等),也可呈现各自图形图像。此外,图形图像也可面向(例如,指向)正确方向来匹配实际交通对象的方位和轨迹。在图5中提供的实例中,V1被示为装置的正面朝向市场街上的用户行驶,而V2被示为装置的正面在Geary St上朝西行驶。以此方式,可根据服务将交通对象的实时和实际移动的准确描绘提供给用户。
[0109] 硬件图
[0110] 图6是其上可实施本文中描述的实施例的计算机系统的方框图。例如,在图1的背景下,系统100可使用诸如图6描述的计算机系统实施。系统100也可使用如图6描述的多个计算机系统的组合实施。
[0111] 在一个实施中,计算机系统600包括处理资源(诸如处理器610)、主存储器620、ROM 630、存储装置640和通信接口650。计算机系统600包括用于处理信息的至少一个处理器
610,和用于存储将由处理器610执行的信息和指令的主存储器620,诸如随机存取存储器(RAM)或其它动态存储装置。主存储器620也可用于在将由处理器610执行的指令的执行期间存储临时变量或其它中间信息。计算机系统600也可包括只读存储器(ROM)630或用于存储处理器610的静态信息和指令的其它静态存储装置。提供存储装置640(诸如磁碟或光碟)用于存储信息和指令。
[0112] 通信接口650可使计算机系统600能通过使用网络链路(无线或电缆)而与一个或更多个网络680(例如,蜂窝网络)通信。使用网络链路,计算机系统600可与一个或多个计算装置和一个或更多个服务器通信。在一些变型中,计算机系统600可被配置来经由网络链路从一个或更多个交通装置(例如,属于服务提供者)接收传感器数据(例如,诸如GPS数据)。传感器数据652可由处理器610处理并且可存储在例如存储装置640中。处理器610可处理交通装置的传感器数据652来确定对应于交通装置的交通对象的最可能行驶路径。可经由网络680将推断的位置信息654传输至一个或更多个观测装置来使在观测装置上运行的应用程序能使用位置信息654来呈现交通对象的实际移动的可视化。
[0113] 计算机系统600也可包括例如用于将图形和信息显示给用户的显示装置660,诸如阴极射线管(CRT)、LCD监视器或电视机。输入机构670(诸如包括字母数字键和其它键的键盘)可耦合至计算机系统600用于将信息和命令选择传达给处理器610。输入机构670的其它非限制性、说明性实例包括用于将方向信息和命令选择传达给处理器610及用于控制显示器660上的光标移动的鼠标轨迹球、触控屏幕或光标方向键。
[0114] 本文中描述的实例涉及将计算机系统600用于实施本文中描述的技术。根据一个实施方案,由计算机系统600响应于处理器610执行主存储器620中所含的一个或更多个指令的一个或更多个序列而执行这些技术。这些指令可从另一个机器可读介质(诸如存储装置640)被读出至主存储器620中。主存储器620中所含的指令序列的执行使处理器610执行本文中描述的程序步骤。在替代实施中,硬接线电路可取代软件指令或与其组合来实施本文中描述的实例。因此,所描述的实例不限于硬件电路和软件的任意具体组合。
[0115] 图7是图示其上可实施本文中描述的实施方案的移动计算装置的方框图。在一个实施方案中,计算装置700可对应于移动计算装置,诸如具有电话、短信息和数据服务功能的蜂窝装置。计算装置700可对应于交通装置和观测装置的每一个。这些装置的实例包括手机运营商的智能电话、手机或平板装置。计算装置700包括处理器710、存储器资源720、显示装置730(例如,诸如触控显示装置)、一个或更多个通信子系统740(包括无线通信子系统)、输入机构750(例如,输入机构可包括触控显示装置或作为其部分)和一个或更多个位置探测机构(例如,GPS组件)760。在一个实例中,至少一个通信子系统740经由数据通道和语音通道发送并且接收蜂窝数据。
[0116] 处理器710用软件和/或其它逻辑配置来执行结合诸如图1至图5及在本申请的其它部分描述的实施描述一个或更多个程序、步骤和其它功能。处理器710用存储在存储器资源720中的指令和数据配置以操作如图1至图5中描述的服务应用程序。例如,用于操作服务应用程序来显示用户界面(诸如图4中描述的用户界面)的指令可存储在计算装置700的存储器资源720中。
[0117] 从服务提供者的度看,操作交通装置(诸如计算装置700)的服务提供者可操作服务应用程序,使得可从GPS组件760确定传感器数据(诸如定位/位置数据765)。这种定位/位置数据765随后可经由通信子系统740无线地传输至系统。从最终用户的角度看,用户可操作服务应用程序来从系统接收一个或更多个交通对象的位置信息745(经由通信子系统740)。
[0118] 处理器710可通过执行存储在存储器资源720中的指令和/或应用程序而将内容提供给显示器730。在一些实例中,可由处理器710至少部分基于所接收的一个或更多个交通对象的位置信息745而提供一个或更多个用户界面715(诸如服务应用程序的用户界面)。虽然图7针对移动计算装置图示,但是一个或更多个实施方案可实施在其它类型的装置上,包括全功能计算机,诸如膝上型计算机和台式计算机(例如,PC)。
[0119] 设想本文中描述的实施方案独立于其它概念、理念或系统,扩展至本文中描述的个别元件和概念,以及设想实施方案包括本申请其它部分中所叙述的元件的组合。虽然本文中参考附图详细描述实施方案,但是应了解本发明不限于所述准确实施方案。因而,本领域熟练人员将了解许多修改和变化。因此,本发明的范围旨在由随附权利要求和其等效物定义。此外,即使其它特征和实施方案未提及具体特征,也可设想个别或作为实施方案的部分描述的特定特征可与其它个别描述的特征或其它实施方案的部分组合。因此,未描述组合不阻碍发明者要求这些组合的权利。
QQ群二维码
意见反馈