将 Google 个建筑物 ID 映射到 Openstreetmap 建筑物 ID
Mapping Google building Id's to Open Street Map building id's
我正在从事一个地图项目,该项目涉及使用 Tangram(一个很棒的 webgl 地图库)在地图上可视化建筑物。 Tangram 建筑来自 Open Street Maps,并使用 OSM id:
幸运的是,我的数据来自 Google 的位置 API,它有自己的 ID 系统。使用这样的请求:
curl https://maps.googleapis.com/maps/api/geocode/json?address=Timble-Bridge,%20Yorkshire%20Britain&key=API_KEY_HERE
一个回来了(注意底部的位置 id 散列):
{
"results": [
{
"address_components": [
{
"long_name": "59",
"short_name": "59",
"types": [
"street_number"
]
},
{
"long_name": "Long Lane",
"short_name": "Long Ln",
"types": [
"route"
]
},
{
"long_name": "London",
"short_name": "London",
"types": [
"postal_town"
]
},
{
"long_name": "Greater London",
"short_name": "Greater London",
"types": [
"administrative_area_level_2",
"political"
]
},
{
"long_name": "England",
"short_name": "England",
"types": [
"administrative_area_level_1",
"political"
]
},
{
"long_name": "United Kingdom",
"short_name": "GB",
"types": [
"country",
"political"
]
},
{
"long_name": "EC1A 9EJ",
"short_name": "EC1A 9EJ",
"types": [
"postal_code"
]
}
],
"formatted_address": "59 Long Ln, London EC1A 9EJ, UK",
"geometry": {
"location": {
"lat": 51.5192377,
"lng": -0.0998815
},
"location_type": "ROOFTOP",
"viewport": {
"northeast": {
"lat": 51.52058668029149,
"lng": -0.09853251970849797
},
"southwest": {
"lat": 51.51788871970849,
"lng": -0.101230480291502
}
}
},
"partial_match": true,
"place_id": "ChIJ5UYg9FMbdkgRBOslATQK-ok",
"types": [
"cafe",
"establishment",
"food",
"point_of_interest"
]
}
],
"status": "OK"
}
我现在想知道是否存在将 OSM id 映射到 Google 位置 id 的任何现存数据库。如果有人知道任何此类服务,或任何可用于确定性地将 OSM 和 Google id 映射到高阶识别服务的高阶映射,我将非常感谢您提供的任何见解。
不,这样的数据库不存在,也不可能存在。
这样的映射需要:
- 两个数据集都是公开的。 OSM 已打开,但 Google 的数据未打开。
- 建筑物的映射方式类似。这并非总是如此。 Google 中的建筑物可能由 OSM 中的多个建筑物组成,反之亦然。
- ID稳定。我不知道 Google 的 ID,但 OSM 中的 ID 可以更改。
我正在从事一个地图项目,该项目涉及使用 Tangram(一个很棒的 webgl 地图库)在地图上可视化建筑物。 Tangram 建筑来自 Open Street Maps,并使用 OSM id:
幸运的是,我的数据来自 Google 的位置 API,它有自己的 ID 系统。使用这样的请求:
curl https://maps.googleapis.com/maps/api/geocode/json?address=Timble-Bridge,%20Yorkshire%20Britain&key=API_KEY_HERE
一个回来了(注意底部的位置 id 散列):
{
"results": [
{
"address_components": [
{
"long_name": "59",
"short_name": "59",
"types": [
"street_number"
]
},
{
"long_name": "Long Lane",
"short_name": "Long Ln",
"types": [
"route"
]
},
{
"long_name": "London",
"short_name": "London",
"types": [
"postal_town"
]
},
{
"long_name": "Greater London",
"short_name": "Greater London",
"types": [
"administrative_area_level_2",
"political"
]
},
{
"long_name": "England",
"short_name": "England",
"types": [
"administrative_area_level_1",
"political"
]
},
{
"long_name": "United Kingdom",
"short_name": "GB",
"types": [
"country",
"political"
]
},
{
"long_name": "EC1A 9EJ",
"short_name": "EC1A 9EJ",
"types": [
"postal_code"
]
}
],
"formatted_address": "59 Long Ln, London EC1A 9EJ, UK",
"geometry": {
"location": {
"lat": 51.5192377,
"lng": -0.0998815
},
"location_type": "ROOFTOP",
"viewport": {
"northeast": {
"lat": 51.52058668029149,
"lng": -0.09853251970849797
},
"southwest": {
"lat": 51.51788871970849,
"lng": -0.101230480291502
}
}
},
"partial_match": true,
"place_id": "ChIJ5UYg9FMbdkgRBOslATQK-ok",
"types": [
"cafe",
"establishment",
"food",
"point_of_interest"
]
}
],
"status": "OK"
}
我现在想知道是否存在将 OSM id 映射到 Google 位置 id 的任何现存数据库。如果有人知道任何此类服务,或任何可用于确定性地将 OSM 和 Google id 映射到高阶识别服务的高阶映射,我将非常感谢您提供的任何见解。
不,这样的数据库不存在,也不可能存在。
这样的映射需要:
- 两个数据集都是公开的。 OSM 已打开,但 Google 的数据未打开。
- 建筑物的映射方式类似。这并非总是如此。 Google 中的建筑物可能由 OSM 中的多个建筑物组成,反之亦然。
- ID稳定。我不知道 Google 的 ID,但 OSM 中的 ID 可以更改。