
Тайлы Street View похожи на 2D-тайлы, за исключением того, что они содержат панорамные изображения, снятые на уровне улицы. С помощью Street View вы можете исследовать мировые достопримечательности, увидеть чудеса природы и заглянуть внутрь таких мест, как музеи, арены, рестораны или небольшие магазины. Эта конечная точка API предоставляет вам доступ к:
- Плитки Google Maps Street View
- Метаданные Street View
- миниатюры Street View
Вы можете объединять фрагменты изображений, снятые с уровня улицы, для создания реалистичного панорамного эффекта. Также вы можете запрашивать до 100 идентификаторов панорам для набора местоположений (например, маршрута) и получать более подробные метаданные о положении камеры.
Для объединения фрагментов панорам Street View требуется программа просмотра. Например, пользовательская программа просмотра панорам Street View .
Получив ключ API, вы можете получить доступ к изображениям Street View, выполнив следующие шаги.
Получите токен сессии . Убедитесь, что значение параметра
mapTypeустановлено наstreetview.Используйте токен сессии, чтобы получить идентификатор панорамы (panoId) для одного или нескольких географических местоположений.
Используйте идентификаторы панорамы из ответа на запрос panoId, чтобы получить:
Метаданные Street View . Вы также можете получить метаданные Street View, передав набор координат и радиус.
Методы просмотра улиц
Доступ к изображениям и метаданным Street View можно получить одним из следующих четырех способов.
| Метод | Описание |
|---|---|
https://tile.googleapis.com/v1/streetview/tiles | Возвращает отдельные фрагменты Street View. Вы можете получить фрагменты Street View с шестью уровнями масштабирования: от 512 пикселей до 13 312 пикселей. |
https://tile.googleapis.com/v1/streetview/panoIds | Позволяет выполнять массовый поиск до 100 местоположений. Возвращает идентификаторы панорам для всех местоположений, для которых имеются изображения. |
https://tile.googleapis.com/v1/streetview/thumbnail | Возвращает миниатюрное JPEG-изображение сцены Street View. Позволяет указать заголовок, шаг, размеры и поле зрения. Минимальные размеры — 16x16 пикселей. Максимальные размеры — 250x600 пикселей. |
https://tile.googleapis.com/v1/streetview/metadata | Предоставляет подробную информацию об указанной панораме. В частности, указывается соответствующий адрес и ссылки на соседние панорамы. |
Поиск панорам Street View
Идентификатор панорамы для одного или нескольких географических местоположений можно найти, передав их координаты ( lat , lng ) методу panoIds . Тело запроса представляет собой объект JSON, содержащий массив locations и, при необходимости, radius , как показано в следующем примере кода JSON.
curl -X POST -d '{ "locations": [ {"lat": -33.883837, "lng": 151.209307}, {"lat": -33.883700, "lng": 151.210307}, {"lat": 0, "lng": 0} ], "radius": 50 }' \ -H 'Content-Type: application/json' \ "https://tile.googleapis.com/v1/streetview/panoIds?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY"
-
locations - Массив
locationsдолжен содержать как минимум один набор значений координат, но вы можете включить и больше — максимум 100. -
radius - Значение
radius(измеряется в метрах) определяет радиус круга вокруг заданного местоположения, в котором будет производиться поиск панорам. Значение по умолчанию — 50 метров.
Ответ PanoId
API Map Tiles пытается найти панораму, ближайшую к каждому местоположению, и возвращает её идентификаторы. Успешный запрос panoIds возвращает JSON-объект, содержащий массив panoIds . Массив содержит список идентификаторов панорам в порядке их запроса. Если API Map Tiles не может найти ни одной панорамы для запрошенных местоположений, в этом месте массива возвращается пустая строка. Пример можно увидеть в следующем JSON-коде.
{
"panoIds": [
"ACfH-n2HcBvRry_3oc9grw",
"f5DJZatBAAAXHlooS2wKbw",
""
]
}
Вы можете использовать panoIds для:
- Запросить метаданные для просмотра улиц
- Запросить миниатюры для просмотра улиц
- Запросить фрагменты Street View
Метаданные Street View
Запросы метаданных Street View получают информацию о панорамах. Запрос метаданных Street View — это HTTPS-запрос GET. Вы можете получить информацию о панорамах двумя способами:
Если вы передадите
pano_id, то API Map Tiles вернет метаданные для этой панорамы.Но если вы передадите
latиlng, то API Map Tiles вернет метаданные для ближайшей панорамы в пределах заданного радиуса поиска.
Передайте набор координат и радиус.
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN&key=YOUR_API_KEY &lat=lat &lng=lng &radius=meters"
Поскольку идентификаторы панорамы являются временными, мы рекомендуем передавать набор координат и значение radius в первоначальном запросе метаданных Street View. Пример см. в следующем фрагменте кода.
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &lat=47.62066 &lng=-122.34923 &radius=50"
Передайте панораму изображения Street View
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=panoId"
Ответ метаданных
Приведённый ниже JSON-код представляет собой пример типичного ответа с метаданными.
{
"panoId": "rZ9KeTyhA11i0VppYNzsSg",
"lat": 37.420864219339165,
"lng": -122.08446528377291,
"imageHeight": 6656,
"imageWidth": 13312,
"tileHeight": 512,
"tileWidth": 512,
"heading": 94.35,
"tilt": 88.39652,
"roll": 1.7181772,
"imageryType": "outdoor",
"date": "2023-01",
"copyright": "© 2023 Google",
"reportProblemLink": "https://cbks0.googleapis.com/cbk?output=report&panoid=rZ9KeTyhA11i0VppYNzsSg&cb_client=api&cbp=1,0,,0,0&hl=en-US&gl=us",
"addressComponents": [
{
"longName": "United States",
"shortName": "United States",
"types": [
"country"
]
},
{
"longName": "Mountain View, California",
"shortName": "Mountain View, California",
"types": [
"locality"
]
},
{
"longName": "Charleston Rd",
"shortName": "Charleston Rd",
"types": [
"route"
]
},
{
"longName": "1635",
"shortName": "1635",
"types": [
"street_number"
]
}
],
"links": [
{
"panoId": "Yw4pqzA4FEq1qs-BwZSvSQ",
"heading": 274.47998046875,
"text": "Charleston Rd"
},
{
"panoId": "1cODYwFRw1aZ45IignDIMw",
"heading": 94.47999572753906,
"text": "Charleston Rd"
}
]
}
Ниже приведён список определений полей в теле ответа.
-
panoId - Уникальный идентификатор этой панорамы. Не следует полагаться на то, что идентификаторы панорам будут действительны дольше, чем в течение одной пользовательской сессии.
-
lat,lng - Координаты (широта и долгота) панорамы. Эти значения могут отличаться от координат, указанных в запросе, поскольку местоположение определяется по ближайшей панораме.
-
imageHeight,imageWidth - Размеры сшитого панорамного изображения.
-
tileHeight,tileWidth - Размеры одного фрагмента панорамы.
-
heading - Направление по компасу, измеренное в градусах, по часовой стрелке от севера. Направление возвращается в диапазоне [0,360], где 0 означает направление строго на север.
-
tilt - Наклон панорамы, измеренный в градусах от южного полюса панорамы до горизонта. Возвращаемые значения находятся в диапазоне [0, 180]. Значение 90 градусов указывает на то, что горизонт уже выровнен по экватору панорамы.
-
roll - Вращение по часовой стрелке вокруг линии зрения, примененное к панораме для выравнивания горизонта. Возвращаемые значения находятся в диапазоне [0, 360].
-
imageryType - Указывает тип изображения. Допустимые значения:
indoorиoutdoor. -
date - Дата, когда был сделан снимок. Не все изображения содержат данные о дате. Но если они доступны, это поле содержит комбинацию года (ГГГГ) и месяца (ММ). Например: 2023-05 или 2024.
-
copyright - Текст об авторских правах, который необходимо указать в качестве источника вместе с изображением Street View.
-
reportProblemLink - Гиперссылка, которую пользователи смогут использовать для сообщения о проблемах с этим фрагментом изображения улицы. Эта гиперссылка должна располагаться в правом нижнем углу изображения и содержать текст, например, «Сообщить о проблеме с этим изображением».
-
addressComponent - Структурированный геокод , содержащий подробную информацию об адресе панорамы. Для получения дополнительной информации см. раздел «Запросы и ответы геокодирования» в документации по API геокодирования.
-
links - Список идентификаторов панорам, которые ссылаются на эту. Также содержит направление, по которому находится ссылка. Например, если направление — 180°, то связанная панорама находится точно южнее текущей панорамы. Обратите внимание, что из-за временного характера идентификаторов панорам не следует полагаться на них более чем в течение одной пользовательской сессии.
миниатюры Street View
Вы можете запросить изображения Street View в формате thumbnail . Миниатюры — это не мозаичные изображения с заданными пользователем размером, заголовком, шагом и полем зрения. Изображения миниатюр имеют более низкое разрешение, чем мозаичные изображения, и меньший размер файла. Запрос миниатюры осуществляется путем отправки GET-запроса на конечную точку thumbnail , как показано в следующем прототипе кода.
curl "https://tile.googleapis.com/v1/streetview/thumbnail?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=panoId &height=FROM_16_TO_250 &width=FROM_16_TO_600 &pitch=FROM-90_TO_90 &yaw=FROM-360_TO_360 &fov=FROM_30_TO_120"
Рассмотрим следующий пример кода, который загружает миниатюру изображения Street View, сделанного в Уистлере, Канада.
curl "https://tile.googleapis.com/v1/streetview/thumbnail?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=Zzl28rqGJgaL2IdkUleP8A &height=200 &width=200 &pitch=0 &yaw=250 &fov=80" --output /tmp/example_thumbnail.png
![]()
Необходимые параметры
-
panoId - Уникальный идентификатор нужной миниатюры. Значения идентификаторов панорамы можно получить из конечной точки
panoIdsили из конечной точкиmetadata— обе принимают географические координаты и возвращают соответствующийpanoId. -
session - Действительный токен сессии .
-
key - Ваш API-ключ .
Дополнительные параметры
-
height - Задает высоту миниатюры в пикселях, в диапазоне от 16 до 250 пикселей. Если высота не указана, по умолчанию используется максимально допустимое значение в 250 пикселей. Если указано значение, выходящее за пределы диапазона, миниатюра автоматически подстраивается под ближайшее допустимое значение.
-
width - Задает ширину миниатюры в пикселях, от 16 до 600 пикселей. Если ширина не указана, по умолчанию используется максимально допустимое значение в 600 пикселей. Если указано значение, выходящее за пределы диапазона, миниатюра автоматически подстраивается под ближайшее допустимое значение.
-
pitch - Задает угол наклона камеры относительно вертикальной оси. Допустимые значения находятся в диапазоне
-90до90(включительно). Значение по умолчанию — 0. -
yaw - Задает направление камеры вдоль горизонтальной оси. Допустимые значения находятся в диапазоне
-360до360(включительно). Значение по умолчанию — 0. -
fov - Задает горизонтальное поле зрения, выраженное в градусах, с максимальным значением 120. При работе с областью просмотра фиксированного размера, например, с изображением Street View заданного размера, поле зрения соответствует масштабированию; меньшие значения указывают на более высокий уровень масштабирования. Значение по умолчанию — 90.
фрагменты изображений Street View
Получив panoId , вы можете запросить фрагмент изображения Street View. Запросы фрагментов — это HTTPS GET-запросы. Рассмотрим следующий пример.
curl "https://tile.googleapis.com/v1/streetview/tiles/z/x/y?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=panoId"
В этом примере кода z — это уровень масштабирования, а x и y — координаты нужного фрагмента панорамы Street View. Уровни масштабирования в панорамах Street View должны находиться в диапазоне [0,5], где 0 соответствует максимально широкому полю зрения.
| Уровень масштабирования | Примерное поле зрения |
|---|---|
| 0 | 360° |
| 1 | 180° |
| 2 | 90° |
| 3 | 45° |
| 4 | 22,5° |
| 5 | 11,25° |
Ответы на запросы Street View Tiles
Успешный запрос на получение тайла Street View возвращает изображение в формате и размере, указанных в ответе на запрос createSession .

При нулевом уровне масштабирования вся панорама преобразуется в фрагмент размером tileWidth на tileHeight . Поскольку панорамы больше по оси x, фрагмент будет содержать пустое пространство по оси y:

При пятом уровне масштабирования используется панорама в полном размере, разделенная на фрагменты.
Информация об авторских правах
Необходимо отображать информацию об авторских правах для каждой панорамы Street View. Отображаемая строка может различаться для разных панорам. Чтобы получить информацию об авторских правах, необходимо запросить метаданные Street View , после чего можно обратиться к полю copyright в ответе. Дополнительную информацию см. в разделе «Атрибуция данных» .