全部服务产品
开发者频道
定价
登录
简介

轨迹纠偏类接口为开发者提供 轨迹去噪、抽稀、绑路 功能,包括实时位置纠偏、轨迹纠偏、里程计算功能。

接口列表
模块接口名称功能说明
trackgetlatestpoint查询某 entity 的实时位置,支持纠偏
getdistance查询某 entity 一段时间内的轨迹里程,支持纠偏
gettrack查询某 entity 一段时间内的轨迹点,支持纠偏
坐标系说明

目前中国主要有以下三种坐标系:

WGS84:为一种大地坐标系,也是目前广泛使用的GPS全球卫星定位系统使用的坐标系
GCJ02:是由中国国家测绘局制订的地理信息系统的坐标系统。由WGS84坐标系经加密后的坐标系
BD09:为百度坐标系,在GCJ02坐标系基础上再次加密。其中bd09ll表示百度经纬度坐标,bd09mc表示百度墨卡托米制坐标

非中国地区地图,统一使用WGS84坐标

接口说明
getlatestpoint——实时纠偏

简介:查找entity最近一个轨迹点,支持实时纠偏。
支持功能:返回entity最新的实时位置(支持纠偏)、速度、方向、高度、定位精度、定位模式、交通方式等信息。
适用场景:适用于持续追踪某一终端,实时展示最新的纠偏后轨迹点。

请求URL

https://yingyan.baidu.com/api/v3/track/getlatestpoint
//GET请求

请求参数
参数名称字段含义数据类型是否必填备注
ak

用户的AK

string
service_id

service的ID,service 的唯一标识

int

在轨迹管理台创建鹰眼服务时,系统返回的 service_id

entity_name

entity唯一标识

string(0-128)
process_option

纠偏选项

string(0-128)

默认值为:
denoise_grade=1,need_mapmatch=0,transport_mode=auto
取值规则为:
1.去噪 denoise_grade(去噪力度)取值范围[0,5],数值越大去噪力度越大,代表越多的点会被当做噪点去除。若取值0,则代表不去噪。
示例:
denoise_grade=0 (不去噪)
denoise_grade=1 (系统默认去噪)
denoise_grade=2(系统默认去噪,同时去除定位精度低于500的轨迹点,相当于保留GPS定位点、大部分Wi-Fi定位点和精度较高的基站定位点)
denoise_grade=3(系统默认去噪,同时去除定位精度低于100的轨迹点,相当于保留GPS定位点和大部分Wi-Fi定位点)
denoise_grade=4(系统默认去噪,同时去除定位精度低于50的轨迹点,相当于保留GPS定位点和精度较高的Wi-Fi定位点)
denoise_grade=5(系统默认去噪,同时去除定位精度低于20的轨迹点,相当于仅保留GPS定位点)
2.绑路,示例:
need_mapmatch=0 不绑路
need_mapmatch=1 绑路
3.交通方式,鹰眼将根据不同交通工具选择不同的纠偏策略,目前支持:自动(即鹰眼自动识别的交通方式)、驾车、骑行和步行,示例:
transport_mode=auto(根据轨迹鹰眼自动识别交通方式)
transport_mode=driving(驾车)
transport_mode=riding(骑行)
transport_mode=walking(步行)

coord_type_output

返回的坐标类型

string

默认值:bd09ll
该字段用于控制返回结果中的坐标类型。可选值为:
gcj02:国测局加密坐标
bd09ll:百度经纬度坐标
该参数仅对国内(包含港、澳、台)轨迹有效,海外区域轨迹均返回 wgs84坐标系

sn

用户的权限签名,若用户所用AK的校验方式为SN校验时该参数必须。SN计算方法

string

返回值

参数名字段含义类型备注
status状态码int返回状态,0为成功
message响应信息string对status的中文描述
latest_point实时位置信息string
longitude经度double
latitude纬度double
loc_time定位时间UNIX时间戳
radius定位精度double
coord_type坐标类型string该字段仅在海外区域时返回,返回值为:wgs84。当坐标位于国内(含港、澳、台)时,返回坐标类型与请求参数 coord_type_output 所设一致,因此不再返回该字段。
direction方向int范围为[0,359],0度为正北方向,顺时针
height高度double只在GPS定位结果时才返回,单位米
speed速度double单位:千米/小时
floor楼层string
locate_mode轨迹对应的定位方式(鹰眼分析得出)string仅当请求参数is_processed=1时返回。 可能的返回值:未知;GPS/北斗定位;网络定位;基站定位
transport_mode轨迹对应的交通方式(鹰眼分析得出)string仅当请求参数is_processed=1,且process_option中transport_mode=auto时返回。 可能的返回值:未知;驾车;骑行;步行;停留。注意:该功能为高级付费服务,您可通过 申请试用或购买使用该功能
object_name对象数据名称string若无值,则不返回该字段
column_key开发者为 track自定义的字段string
请求示例
https://yingyan.baidu.com/api/v3/track/getlatestpoint?service_id=1000&entity_name=小明&coord_type_output=bd09ll&process_option=denoise_grade=1,radius_threshold=20,need_mapmatch=1,transport_mode=driving&extensions=road_info&ak=你的'''AK'''
返回示例
{
"status": 0,
"message": "成功",
"latest_point": {
"longitude": 116.43683174878,
"latitude": 40.079614535339,
"loc_time": 1521120545,
"direction": 81,
"height": 21,
"radius": 7,
"speed": 7.142739,
"locate_mode": "GPS/北斗定位",
"transport_mode": "驾车"
}
}
getdistance——查询轨迹里程

简介:查询entity 一段时间内行驶里程。
支持功能:1. 支持计算一段时间内轨迹纠偏、补偿后的总里程,也支持计算原始轨迹里程;2.支持对中断的轨迹区间进行里程补偿,支持使用直线或驾车/骑行/步行路线规划的里程进行补偿。
适用场景:1. 通用型的原始和纠偏后轨迹里程计算;2. 应用于网约车、物流等行业的用车实时计费,通过纠偏和补偿后的里程,校准用车计费。

请求URL

https://yingyan.baidu.com/api/v3/track/getdistance
//GET 请求

请求参数
参数名称字段含义数据类型是否必填备注
ak

用户的AK,授权使用

string
service_id

service的ID,service 的唯一标识

intservice 的唯一标识。在轨迹管理台创建鹰眼服务时,系统返回的 service_id
entity_name

entity唯一标识

string
start_time

起始时间(起始的loc_time)

UNIX时间戳
end_time

结束时间(结束的loc_time)

UNIX时间戳结束时间不超过当前时间,不能早于起始时间,且与起始时间差在24小时之内。为提升响应速度,同时避免轨迹点过多造成请求超时(3s)失败,建议缩短每次请求的时间区间,将一天轨迹拆分成多段进行拼接
is_processed

是否返回纠偏后里程

string

默认值:0
取值规则:
0:关闭轨迹纠偏,返回原始轨迹
1:打开轨迹纠偏,返回纠偏后轨迹。

process_option

纠偏选项

string(0-128)

默认值为:
denoise_grade=1,need_mapmatch=0,transport_mode=auto
取值规则为:
1.去噪 denoise_grade(去噪力度)取值范围[0,5],数值越大去噪力度越大,代表越多的点会被当做噪点去除。若取值0,则代表不去噪。
示例:
denoise_grade:0 (不去噪)
denoise_grade:1 (系统默认去噪)
denoise_grade:2(系统默认去噪,同时去除定位精度低于500的轨迹点,相当于保留GPS定位点、大部分Wi-Fi定位点和精度较高的基站定位点)
denoise_grade:3(系统默认去噪,同时去除定位精度低于100的轨迹点,相当于保留GPS定位点和大部分Wi-Fi定位点)
denoise_grade:4(系统默认去噪,同时去除定位精度低于50的轨迹点,相当于保留GPS定位点和精度较高的Wi-Fi定位点)
denoise_grade:5(系统默认去噪,同时去除定位精度低于20的轨迹点,相当于仅保留GPS定位点)
2.绑路,示例:
need_mapmatch=0:不绑路
need_mapmatch=1:绑路
3.交通方式,鹰眼将根据不同交通工具选择不同的纠偏策略,目前支持:自动(即鹰眼自动识别的交通方式)、驾车、骑行和步行,示例:
transport_mode=auto
transport_mode=driving
transport_mode=riding
transport_mode=walking

supplement_mode

里程补偿方式

string(0-128)

默认值:no_supplement,不补充
在里程计算时,两个轨迹点定位时间间隔5分钟以上,被认为是中断。中断轨迹提供以下5种里程补偿方式。
no_supplement:不补充,中断两点间距离不记入里程。
straight:使用直线距离补充
driving:使用最短驾车路线距离补充
riding:使用最短骑行路线距离补充
walking:使用最短步行路线距离补充

low_speed_threshold

低速阈值

double

单位:千米/小时
若填写该值且is_processed=1时,则返回结果中将增加low_speed_distance字段,表示速度低于该值的里程。
示例:
low_speed_threshold=20,则返回结果中将增加low_speed_distance字段表示此段轨迹中速度低于20千米/小时的里程,可用于网约车行业中计算低速里程。

sn

用户的权限签名,若用户所用AK的校验方式为SN校验时该参数必须。SN计算方法

string
返回值
参数名字段含义类型备注
status状态码int返回状态,0为成功
message响应信息string对status的中文描述
distance轨迹里程double单位:米
low_speed_distance低速里程double单位:米
若请求参数中填写了low_speed_threshold,则返回该字段,否则不返回
代表速度低于low_speed_threshold的里程
请求示例
https://yingyan.baidu.com/api/v3/track/getdistance?ak=<用户的AK>&service_id=<用户的SERVICE_ID>&entity_name=小明&is_processed=1&process_option=denoise=1,radius_threshold=20,need_mapmatch=1,transport_mode=driving&supplement_mode=driving&low_speed_threshold=20&start_time=1487203200&end_time=1487260800
返回示例
{
"status": 0,
"message": "成功",
"distance":"3634.7",
"low_speed_distance":"349.3"
}
gettrack——轨迹查询与纠偏

简介:查询一个时间段内一个entity的连续轨迹信息,并进行纠偏。
支持功能:支持对一段轨迹进行纠偏、绑路、补偿中断区间道路、分析起终点、计算总里程和收费里程。其中每一个轨迹点的信息包括:坐标、速度、方向、高度、定位精度、定位模式、交通方式等。
适用场景:适用于查询一段时间的轨迹并进行纠偏,解决轨迹缺失与漂移问题,这也是开发者最常使用、最依赖鹰眼的一个场景。

请求URL

https://yingyan.baidu.com/api/v3/track/gettrack
//GET 请求

请求参数
参数名称字段含义数据类型是否必填备注
ak

用户的AK,授权使用

string
service_id

service的ID,service 的唯一标识

int

service 的唯一标识。在轨迹管理台
创建鹰眼服务时,系统返回的 service_id

entity_name

entity唯一标识

string
start_time

起始时间(起始的loc_time)

UNIX时间戳
end_time

结束时间(结束的loc_time)

UNIX时间戳

结束时间不超过当前时间,不能早于起始时间,且与起始时间差在24小时之内。为提升响应速度,同时避免轨迹点过多造成请求超时(3s)失败,建议缩短每次请求的时间区间,将一天轨迹拆分成多段进行拼接

is_processed

是否返回纠偏后里程

int

默认值:0
取值规则:
0:关闭轨迹纠偏,返回原始轨迹
1:打开轨迹纠偏,返回纠偏后轨迹。

process_option

纠偏选项

string(0-128)

仅在is_processed=1时生效。默认值为:
denoise_grade=1,need_mapmatch=0,transport_mode=auto
取值规则为:
1.去噪 denoise_grade(去噪力度)取值范围[0,5],数值越大去噪力度越大,代表越多的点会被当做噪点去除。若取值0,则代表不去噪。
示例:
denoise_grade:0 (不去噪)
denoise_grade:1 (系统默认去噪)
denoise_grade:2(系统默认去噪,同时去除定位精度低于500的轨迹点,相当于保留GPS定位点、大部分Wi-Fi定位点和精度较高的基站定位点)
denoise_grade:3(系统默认去噪,同时去除定位精度低于100的轨迹点,相当于保留GPS定位点和大部分Wi-Fi定位点)
denoise_grade:4(系统默认去噪,同时去除定位精度低于50的轨迹点,相当于保留GPS定位点和精度较高的Wi-Fi定位点)
denoise_grade:5(系统默认去噪,同时去除定位精度低于20的轨迹点,相当于仅保留GPS定位点)
2.绑路,示例:
need_mapmatch=0:不绑路
need_mapmatch=1:绑路
3.交通方式,鹰眼将根据不同交通工具选择不同的纠偏策略,目前支持:自动(即鹰眼自动识别的交通方式)、驾车、骑行和步行,示例:
transport_mode=auto
transport_mode=driving
transport_mode=riding
transport_mode=walking
4.抽稀 取值范围[0,5],数值越大抽稀度力度越大,代表轨迹会越稀疏。若取值0,则代表不抽稀。
示例: vacuate_grade:0(不抽稀) vacuate_grade:2(抽稀力度为2)

supplement_mode

轨迹补偿交通方式选择

string(0-128)

默认值:no_supplement
在轨迹纠偏时,两个轨迹点定位时间间隔5分钟以上,被认为是中断。中断轨迹和里程提供以下5种估算方式。
no_supplement:不补充,中断两点间距离不记入里程。
straight:使用直线距离补充
driving:使用最短驾车路线距离补充
riding:使用最短骑行路线距离补充
walking:使用最短步行路线距离补充

supplement_content

轨迹补偿内容

string(0-128)

仅在supplement_mode不为no_supplement时生效。
默认值:only_distance。
可选值:
only_distance:对于中断区间,只补偿中断的里程,不补偿轨迹点
distance_and_points:对于中断区间,既补偿里程,又补偿轨迹点

low_speed_threshold

低速阈值

double

单位:千米/小时
若填写该值且is_processed=1时,则返回结果中将增加low_speed_distance字段,表示速度低于该值的里程。
示例:
low_speed_threshold=20,则返回结果中将增加low_speed_distance字段表示此段轨迹中速度低于20千米/小时的里程,可用于网约车行业中计算低速里程。

coord_type_output

返回的坐标类型

string

默认值:bd09ll
该字段用于控制返回结果中的坐标类型。可选值为:
gcj02:国测局加密坐标
bd09ll:百度经纬度坐标
该参数仅对国内(包含港、澳、台)轨迹有效,海外区域轨迹均返回 wgs84坐标系

sort_type

返回轨迹点的排序规则

string

默认值:asc
取值规则:
asc:按定位时间升序排序(旧->新)
按定位时间降序排序(新->旧)

page_index

分页索引

int(1到2^21-1)

默认值:1
与page_size一起计算从第几条结果返回,代表返回第几页。

page_size

分页大小

int(1-5000)

默认值:100
返回结果最大个数与page_index一起计算从第几条结果返回,代表返回结果中每页有几个轨迹点。

sn

用户的权限签名,若用户所用AK的校验方式为SN校验时该参数必须。SN计算方法

string
返回值
参数名字段含义类型备注
status状态码int返回状态,0为成功
message响应信息string对status的中文描述
total忽略掉page_index,page_size后的轨迹点数量int代表一共有多少条符合条件的轨迹点
size返回的结果条数int代表本页返回了多少条符合条件的轨迹点数量
distance此段轨迹的里程数double单位:米
符合条件的所有轨迹点的总里程
注意:是total个轨迹点的里程,和分页及本页显示的size无关
toll_distance此段轨迹的收费里程数double单位:米
收费道路包括高速等收费路段
low_speed_distance低速里程double单位:米
若请求参数中填写了low_speed_threshold,则返回该字段,否则不返回
代表速度低于low_speed_threshold的轨迹里程
start_point起点信息
longitude经度double
latitude纬度double
coord_type坐标类型string该字段仅在海外区域时返回,返回值为:wgs84。当坐标位于国内(含港、澳、台)时,返回坐标类型与请求参数 coord_type_output 所设一致,因此不再返回该字段
loc_time定位时间UNIX时间戳轨迹点定位时间
end_point终点信息
longitude经度double
latitude纬度double
coord_type坐标类型string该字段仅在海外区域时返回,返回值为:wgs84。当坐标位于国内(含港、澳、台)时,返回坐标类型与请求参数 coord_type_output 所设一致,因此不再返回该字段
loc_time定位时间UNIX时间戳轨迹点定位时间
points历史轨迹点列表
longitude经度double
latitude纬度double
loc_time定位时间UNIX时间戳轨迹点定位时间
create_time创建时间格式化时间该时间为服务端时间
direction方向int范围为[0,359],0度为正北方向,顺时针
height高度double只在GPS定位结果时才返回,单位米
speed速度double单位:千米/小时
radius定位精度double单位:米
locate_mode轨迹对应的定位方式(鹰眼分析得出)string仅当请求参数is_processed=1时返回。
可能的返回值:未知;GPS/北斗定位;网络定位;基站定位
transport_mode轨迹对应的交通方式(鹰眼分析得出)string仅当请求参数is_processed=1且process_option中transport_mode=auto时返回。 可能的返回值:未知;驾车;骑行;步行;停留注意:该功能为高级付费服务,需通过 反馈平台 联系工作人员开通
floor楼层string仅在百度地图高精室内定位合作区域返回
coord_type坐标类型string该字段仅在海外区域时返回,返回值为:wgs84。当坐标位于国内(含港、澳、台)时,返回坐标类型与请求参数 coord_type_output 所设一致,因此不再返回该字段
_supplement是否为补充的点int若为原始轨迹点位置纠正后的点,则不返回该字段;
若该点为鹰眼纠偏绑路时自动补充的道路形状点,则_supplement=1;
若该点为通过supplement_mode和supplement_content在长距离中断区间使用路线规划补偿的轨迹点,则_supplement=2;
column-key自定义字段string当用户创建了track的自定义属性,且在创该属性赋有值,才会返回此字段
示例代码
填写您的AK

输入AK可生成包含IP/SN校验方式的代码

<?php
// 此处填写你在控制台-应用管理-创建应用后获取的AK
$ak = '您的AK';
// 此处填写您在鹰眼轨迹管理平台创建的service_id
// 发起一个http get请求,并返回请求的结果
// $url字段为请求的地址
// $param字段为请求的参数
function request_get($url = '', $param = array()) {
if (empty($url) || empty($param)) {
return false;
}
$getUrl = $url . "?" . http_build_query($param);
$curl = curl_init(); // 初始化curl
curl_setopt($curl, CURLOPT_URL, $getUrl); // 抓取指定网页
curl_setopt($curl, CURLOPT_TIMEOUT, 1000); // 设置超时时间1秒
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // curl不直接输出到屏幕
curl_setopt($curl, CURLOPT_HEADER, 0); // 设置header
$data = curl_exec($curl); // 运行curl
if (!$data) {
print("an error occured in function request_get(): " . curl_error($curl) . "\n");
}
curl_close($curl);
return $data;
}
// 请求地址
$url = 'https://yingyan.baidu.com/api/v3/track/gettrack';
// 此处设置过滤条件
$param['ak'] = $ak;
$param['entity_name'] = 'entity_1';
$param['start_time'] = '1687575378';
$param['end_time'] = '1687579293';
$res = request_get($url, $param);
// 将原始返回的结果打印出来
print("请求的原始返回结果为:\n");
print($res . "\n");
?>

注意:拷贝示例代码后,请在代码中填入您的serviceID再运行;

请求示例
返回示例
{
"status": 0,
"message": "成功",
"total": 10156,
"size": 100,
"distance": 70101.769271664,
"toll_distance": 0,
"start_point":
{
"longitude": 121.47756835641,
"latitude": 31.228864478309,
"loc_time": 1487210008
},
"end_point":
{
"longitude": 121.66034736775,
"latitude": 31.145494901873,
"loc_time": 1487260798
},
"points":
[
{
"loc_time": 1487210008,
"latitude": 31.228864478309,
"longitude": 121.47756835641,
"create_time": "2017-02-16 09:53:56",
"direction": 160,
"height": 5,
"key1": "value1",
"radius": 10,
"speed": 6.8,
"locate_mode": "GPS/北斗定位",
"transport_mode": "驾车"
},
{
"loc_time": 1487210013,
"latitude": 31.228900948179,
"longitude": 121.47727614458,
"create_time": "2017-02-16 09:53:56",
"direction": 0,
"height": 36,
"key1": "value1",
"radius": 10,
"speed": 0,
"locate_mode": "GPS/北斗定位",
"transport_mode": "停留"
},
...
{
"loc_time": 1487210503,
"latitude": 31.232230380323,
"longitude": 121.47848441484,
"create_time": "2017-02-16 10:02:09",
"direction": 228,
"height": 6,
"key1": "value1",
"radius": 5,
"speed": 1.87,
"locate_mode": "GPS/北斗定位",
"transport_mode": "停留"
}
]
}

上一篇

轨迹上传

下一篇

轨迹分析

本篇文章对您是否有帮助?