浏览器版本低!无法浏览完整内容,建议升级或更换浏览器。

鹰眼轨迹服务

百度鹰眼是一套轨迹追踪开放服务,开发者在终端集成鹰眼API/SDK 后,可同时管理并追踪数千万终端设备的轨迹,适用于车队管理、共享出行、外勤人员管理、智能穿戴等领域。

简介
轨迹纠偏类接口为开发者提供轨迹去噪、抽稀、绑路功能,包括实时位置纠偏、轨迹纠偏、里程计算功能。
接口列表
模块 接口名称 功能说明
track getlatestpoint 查询某 entity 的实时位置,支持纠偏
getdistance 查询某 entity 一段时间内的轨迹里程,支持纠偏
gettrack 查询某 entity 一段时间内的轨迹点,支持纠偏
坐标系说明

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

WGS84:为一种大地坐标系,也是目前广泛使用的GPS全球卫星定位系统使用的坐标系。

GCJ02:是由中国国家测绘局制订的地理信息系统的坐标系统。由WGS84坐标系经加密后的坐标系。

BD09:为百度坐标系,在GCJ02坐标系基础上再次加密。其中bd09ll表示百度经纬度坐标,bd09mc表示百度墨卡托米制坐标


非中国地区地图,统一使用WGS84坐标
接口说明
getlatestpoint——实时纠偏
简介:查找entity最近一个轨迹点,支持实时纠偏。
支持功能:返回entity最新的实时位置(支持纠偏)、速度、方向、高度、定位精度、定位模式、道路等级、道路限速、交通方式等信息。
适用场景:适用于持续追踪某一终端,实时展示最新的纠偏后轨迹点,实时判断车辆所在道路的等级以及是否超速。

最近更新2018-3-20:
1. 请求字段process_option中的transport_mode(交通方式)新增auto选项。当开发者不明确用户的交通方式时,选择此项鹰眼将自动判断轨迹的交通方式,从而设置相应的纠偏模型和参数。
2. 返回字段新增:road_grade(道路等级)、locate_mode(鹰眼自动判断的轨迹点定位模式)、transport_mode(鹰眼自动判断的轨迹点交通方式)

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

请求参数
参数名 参数含义 类型 是否必填 备注
ak 用户的AK,授权使用 string
service_id service的ID,service 的唯一标识 int 在轨迹管理台创建鹰眼服务时,系统返回的 service_id
entity_name entity唯一标识 string
process_option 纠偏选项 string(0-128) 默认值为:
need_denoise=1,need_mapmatch=0,
radius_threshold=0,transport_mode=driving

取值规则为:

1.去噪,示例:

need_denoise =0:不去噪

need_denoise =1:去噪

2.绑路,示例:

need_mapmatch=0:不绑路

need_mapmatch=1:绑路

3.定位精度过滤,用于过滤掉定位精度较差的轨迹点,示例:

radius_threshold=0:不过滤

radius_threshold=100:过滤掉定位精度 Radius 大于100的点

说明:当取值=0时,则不过滤;当取值大于0的整数时,则过滤掉radius大于设定值的轨迹点。例如:若只需保留 GPS 定位点,则建议设为:20;若需保留 GPS 和 Wi-Fi 定位点,去除基站定位点,则建议设为:100

4.交通方式,鹰眼将根据不同交通工具选择不同的纠偏策略,目前支持:自动(即鹰眼自动识别的交通方式)、驾车、骑行和步行,示例:

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 状态码
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 单位:km/h
floor 楼层 string
road_grade 轨迹对应的道路等级 string 仅当请求参数is_processed=1,process_option中need_mapmatch=1且绑路成功时,返回该字段。
可能的返回值:高速路;都市高速路;国道;省道;县道;乡镇道路;其他道路;九级路;轮渡;行人道路
注意:该功能需通过反馈平台联系我们开通
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
limit_speed 轨迹对应的道路限速 double 单位:km/h
仅当请求参数is_processed=1,process_option中transport_mode=driving,need_mapmatch=1且绑路成功时,返回该字段。


请求示例
http://yingyan.baidu.com/api/v3/track/getlatestpoint?service_id=1000&entity_name=小明&coord_type_output=bd09ll&process_option=need_denoise=1,radius_threshold=20,need_mapmatch=1,transport_mode=driving&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,
        "road_grade": "其它道路",
        "locate_mode": "GPS/北斗定位",
        "transport_mode": "驾车"
    },
    "limit_speed": 15
}


getdistance——查询轨迹里程

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

最近更新2018-3-20:
1. 请求字段process_option中的transport_mode(交通方式)新增auto选项。当开发者不明确用户的交通方式时,选择此项鹰眼将自动判断轨迹的交通方式,从而设置相应的纠偏模型和参数。


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

请求参数
参数名 参数含义 类型 是否必填 备注
ak 用户的AK,授权使用 string
service_id service的ID,service 的唯一标识 int 在轨迹管理台创建鹰眼服务时,系统返回的 service_id
entity_name entity唯一标识 string
start_time 开始时间 UNIX 时间戳
end_time 结束时间 UNIX时间戳 结束时间不能大于当前时间,且起止时间区间不超过24小时。为提升响应速度,同时避免轨迹点过多造成请求超时(3s)失败,建议缩短每次请求的时间区间,将一天轨迹拆分成多段进行拼接
is_processed 是否返回纠偏后里程 string 默认值:0

取值规则:

0:关闭轨迹纠偏,返回原始轨迹

1:打开轨迹纠偏,返回纠偏后轨迹。

process_option 纠偏选项 string(0-128) 默认值为:
need_denoise=1,need_mapmatch=0,radius_threshold=0,

transport_mode=driving

取值规则为:

1.去噪,示例:

need_denoise =0:不去噪

need_denoise =1:去噪

2.绑路,示例:

need_mapmatch=0:不绑路

need_mapmatch=1:绑路

3. 定位精度过滤,用于过滤掉定位精度较差的轨迹点,示例:

radius_threshold=0:不过滤

radius_threshold=100:过滤掉定位精度 Radius 大于100的点

说明:当取值=0时,则不过滤;当取值大于0的整数时,则过滤掉radius大于设定值的轨迹点。例如:若只需保留 GPS 定位点,则建议设为:20;若需保留 GPS 和 Wi-Fi 定位点,去除基站定位点,则建议设为:100

4.交通方式,鹰眼将根据不同交通工具选择不同的纠偏策略,目前支持:自动(即鹰眼自动识别的交通方式)、驾车、骑行和步行,示例:

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
message 响应信息 string 对status的中文描述
distance 轨迹里程 double
low_speed_distance 低速里程 double 若请求参数中填写了low_speed_threshold,则返回该字段,否则不返回
代表速度低于low_speed_threshold的里程


请求示例
http://yingyan.baidu.com/api/v3/track/getdistance?ak=<用户的AK>&service_id=<用户的SERVICE_ID>&entity_name=小明&is_processed=1&process_option=need_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的连续轨迹信息,并进行纠偏。
支持功能:支持对一段轨迹进行纠偏、绑路、补偿中断区间道路、分析起终点、计算总里程和收费里程。其中每一个轨迹点的信息包括:坐标、速度、方向、高度、定位精度、定位模式、道路等级、道路限速、交通方式等。
适用场景:适用于查询一段时间的轨迹并进行纠偏,解决轨迹缺失与漂移问题,这也是开发者最常使用、最依赖鹰眼的一个场景。

最近更新2018-3-20:
1. 请求字段process_option中的transport_mode(交通方式)新增auto选项。当开发者不明确用户的交通方式时,选择此项鹰眼将自动判断轨迹的交通方式,从而设置相应的纠偏模型和参数,提升纠偏精准度。
2. 返回字段新增:road_grade(道路等级)、locate_mode(鹰眼自动判断的轨迹点定位模式)、transport_mode(鹰眼自动判断的轨迹点交通方式)

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

请求参数
参数名 参数含义 类型 是否必填 备注
ak 用户的AK,授权使用 string
service_id service的ID,service 的唯一标识 int 在轨迹管理台创建鹰眼服务时,系统返回的 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时生效。默认值为:

need_denoise=1,radius_threshold=0, need_vacuate=1,need_mapmatch=0, radius_threhold=0,transport_mode=driving

取值规则为:

1.去噪,示例:

need_denoise =0:不去噪

need_denoise =1:去噪

2.抽稀,示例:

need_vacuate =0:不抽稀

need_vacuate=1:抽稀

3.绑路,示例:

need_mapmatch=0:不绑路

need_mapmatch=1:绑路

4.定位精度过滤,用于过滤掉定位精度较差的轨迹点,每个轨迹点示例:

radius_threshold=0:不过滤

radius_threshold=20:当取值大于0的整数时,则过滤掉radius大于20的轨迹点。 通常 GPS 定位精度不超过20米,Wi-Fi 定位精度不超过100米

5.交通方式,鹰眼将根据不同交通工具选择不同的纠偏策略和参数,目前支持:自动(即鹰眼自动识别的交通方式)、驾车、骑行和步行,示例:

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千米/小时的里程,可用于网约车行业中计算低速里程。
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 状态码
message 响应信息 string 对status的中文描述
total 忽略掉page_index,page_size后的轨迹点数量 int 代表一共有多少条符合条件的track
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时间戳 若是原始轨迹点位置纠正后的点,则loc_time为原始轨迹点的定位时间
若是鹰眼通过绑路补充的道路形状点(标识为_supplement=1),则loc_time使用了前序原始轨迹点的定位时间
create_time 创建时间 格式化时间 该时间为服务端时间
direction 方向 int 范围为[0,359],0度为正北方向,顺时针
height 高度 double 只在GPS定位结果时才返回,单位米
speed 速度 double 单位:千米/小时
radius 定位精度 double 单位:米

road_grade
轨迹对应的道路等级 string
仅当请求参数is_processed=1且process_option中need_mapmatch=1时,返回该字段
可能的返回值:高速路;都市高速路;国道;省道;县道;乡镇道路;其他道路;九级路;轮渡;行人道路
注意:该功能需通过反馈平台联系我们开通
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
若为原始轨迹点位置纠正后的点,则不返回该字段
column-key 自定义字段 string 当用户创建了track的自定义属性,且在创该属性赋有值,才会返回此字段


请求示例
gettrack.png

返回示例
{

  "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,
      "road_grade": "其它道路",
      "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,
      "road_grade": "其它道路",
      "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
      "road_grade": "其它道路",
      "locate_mode": "GPS/北斗定位",
        "transport_mode": "停留"
    }

}