Создание нового изображения цели | POST /targets
Загрузите изображение для распознавания, чтобы создать новую цель
Действие
POST /targets
Аутентификация
HTTP-заголовок
Content-Type=application/json
HTTP Header: Authorization (при аутентификации с помощью API Key Token)
Параметры запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
| image | String(base64) | Да | Строка в кодировке base64 содержимого изображения. Поддерживаются форматы JPG и PNG. Максимальный размер изображения — 2 МБ. |
| active | String | Нет | "1" — активировать цель, "0" — деактивировать цель. По умолчанию "1". |
| name | String | Да | Название цели. Допустимы только английские буквы, знаки препинания, цифры. Длина от 1 до 64 символов. |
| size | String (Float) | Да | Ширина изображения цели (в см). Высота рассчитывается автоматически на основе загруженного изображения. Размер цели соответствует размеру виртуального контента. По умолчанию 20. |
| meta | String | Да | Обычно используется для хранения информации AR. Текстовый формат строки, по умолчанию "". Например: JSON-информация об объекте, base64-кодировка изображения или URL-адрес для загрузки больших файлов из облачного хранилища. Максимум 2 МБ. |
| type | String | Да | Должно быть строго задано как "ImageTarget" (с учётом регистра). |
| allowSimilar | String | Нет | Разрешить ли добавление при наличии похожего изображения. По умолчанию 0. Похожие изображения могут влиять на распознавание, рекомендуется оставить значение по умолчанию. |
Примечание
- Максимальный размер image — 2 МБ
- Максимальный размер meta — 2 МБ
Пример запроса
POST /targets/ HTTP/1.1
Host:
Date: Mon, 1 Jan 2018 00:00:00 GMT
Content-Type: application/json
{
"image":"/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgM...",
"active":"1",
"name":"easyar",
"size":"5",
"meta":"496fbbabc2b38ecs3460a...",
"type":"ImageTarget",
"timestamp": 1514736000000,
"appKey": "test_app_key",
"signature": "89985e2420899196db5bdf16b3c2ed0922c0c221"
}
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json
{
"statusCode": 0,
"result": {
"target": {
"targetId":"e61db301-e80f-4025-b822-9a00eb48d8d2",
"trackingImage":"/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgM...",
"name": "easyar",
"size": "5",
"meta": "496fbbabc2b38ecs3460a...",
"type": "ImageTarget",
"modified":1514735000000
"active":"1",
"trackableRate": 0,
"detectableRate": 0,
"detectableDistinctiveness":0,
"detectableFeatureCount", 0,
"trackableDistinctiveness", 0,
"trackableFeatureCount", 0,
"trackableFeatureDistribution", 0,
"trackablePatchContrast", 0,
"trackablePatchAmbiguity", 0
}
},
"timestamp": 1514736000000
}
Поля ответа
| Поле | Описание |
|---|---|
| statusCode | Код состояния. 0 означает успешную аутентификацию. Подробнее см. Коды состояния |
| result | Сообщение об ошибке или информация о цели |
| timestamp | Время ответа на сервере. В формате Unix timestamp (миллисекунды) |
| result.targetId | Уникальный ID цели |
| result.trackingImage | base64-строка отслеживаемого изображения |
| result.name | Название цели |
| result.size | Ширина изображения цели (в см). Высота рассчитывается автоматически. Размер соответствует виртуальному контенту |
| result.meta | Дополнительная информация в base64 (например, JSON-строка, закодированная в base64) |
| result.type | Всегда "ImageTarget" |
| result.active | "1" — активно, "0" — неактивно |
Коды ошибок
Инструкция по использованию Meta
- Связывание URL видео
- Для каждой цели можно сохранить URL видео, связанного с ней, в поле meta
- После распознавания цели в приложении используйте URL из meta для загрузки и воспроизведения видео, например
https://my_server/my_videos/my_video_001.mp4
- Связывание 3D-моделей
- Для каждой цели можно сохранить 3D-модель или Unity-пакет в поле meta
- Используйте base64-кодировку модели для хранения в meta или сохраните URL модели в метаданных
- При распознавании цели приложение отобразит 3D-модель на обнаруженной цели