Skip to main content
Skip table of contents

Создание кейса аналитики

Создание кейса аналитики с типом «Распознавание лиц».

Инструмент автоматической локализации человеческого лица в видеопотоке и идентификация личности человека на основе эталонной модели ресурса (фотографии) в имеющихся базах данных (ресурсах аналитики). Аналитика может применяться в различных вариантах использования, где требуется необходимость установления личности «посетителя/гостя» и реагирования на данное событие.

События:

Лицо идентифицировано - изображение, полученное с видеопотока камеры, имеет схожесть с эталонным изображением, добавленным в ресурсы аналитики

Лицо не идентифицировано - изображение, полученное с видеопотока камеры, не имеет схожесть с эталонным изображением, добавленным в ресурсы аналитики

POST/api/v1/analytic-case

Headers

Authorization

Bearer token

Accept

application/json

X-Client

ios-cctv|android-cctv|thick-legal|web

X-UUID

unique device id

Body

json

JSON
{
    "title": "Распознавание лиц",
    "type": "face",
    "cameras": [
        {
            "id": 10,
            "analytic_case_camera_user_status": null,
            "scripts": [
                {
                    "id": 26,
                    "analytic_groups": [
                        2,
                        1
                    ]
                }
            ],
            "meta": {
                "figures": [
                    {
                        "x": 0.153125,
                        "y": 0.31666666666666665
                    },
                    {
                        "x": 0.3421875,
                        "y": 0.7361111111111112
                    },
                    {
                        "x": 0.86875,
                        "y": 0.6472222222222223
                    },
                    {
                        "x": 0.78125,
                        "y": 0.125
                    }
                ],
                "threshold": 90
            }
        },
        {
            "id": 7,
            "analytic_case_camera_user_status": null,
            "scripts": [
                {
                    "id": 26,
                    "analytic_groups": [
                        2,
                        1
                    ]
                }
            ],
            "meta": {
                "figures": [
                    {
                        "x": 0.134375,
                        "y": 0.25277777777777777
                    },
                    {
                        "x": 0.4359375,
                        "y": 0.8694444444444445
                    },
                    {
                        "x": 0.8953125,
                        "y": 0.6611111111111111
                    },
                    {
                        "x": 0.7453125,
                        "y": 0.1361111111111111
                    }
                ],
                "threshold": 30
            }
        }
    ]
}

titlerequired

string

Название кейса аналитики

typerequired

string

Для данного типа кейса всегда нужно присылать значение face

camerasrequired

array

Массив объектов камер с указанием события и реакции и группы ресурсов аналитики

cameras.*.idrequired

array

Id камеры

cameras.*.scriptsrequired

array

Массив id событий и реакций

cameras.*.scripts.*.idrequired

int

Id события и реакции, см. Создание события и реакции

cameras.*.scripts.*.analytic_groupsrequired

array

Массив id групп ресурсов аналитики

cameras.*.scripts.*.analytic_groups.*required

int

Id групп ресурсов аналитики, см. Создание группы ресурсов

cameras.*.metarequired

array

Мета информация

cameras.*.meta.figurerequired

array

Выделенная область камеры, которую будет обрабатывать аналитика. Передаётся как массив координат (точки изгиба линии) в относительных значениях от 0 до 1. количество точек может быть от трёх до n. Передавать последнюю координату не надо, область будет замыкаться с первоначальной координатой

cameras.*.meta.thresholdrequired

int

Минимальный процент, от которого лицо будет считаться распознанным.

Response

201

Возвращает кейс аналитики

JSON
{
    "id": 53,
    "title": "Распознавание лиц",
    "type": "face",
    "type_pretty": "Распознавание лиц",
    "status": "active",
    "cameras": [
        {
            "id": 10,
            "group_id": 2,
            "status": "active",
            "type": "media_server_v2",
            "start_at": "",
            "created_at": "2022-12-16 10:25:55",
            "billing_id": null,
            "pretty_name": "Камера 1",
            "pretty_text": "Камеры",
            "short_address": "Камеры",
            "full_address": "Камеры",
            "lat": null,
            "lng": null,
            "azimuth": null,
            "streams": [
                {
                    "id": 19,
                    "type": "high",
                    "camera_id": 10,
                    "is_preview_from_server": true,
                    "is_archive_from_server": null,
                    "status": "active",
                    "has_sound": false,
                    "width": null,
                    "height": null
                },
                {
                    "id": 20,
                    "type": "low",
                    "camera_id": 10,
                    "is_preview_from_server": true,
                    "is_archive_from_server": null,
                    "status": "active",
                    "has_sound": false,
                    "width": null,
                    "height": null
                }
            ],
            "has_sound": false,
            "archive_ranges": [],
            "archive_recording_timetable": null,
            "is_archive_recording": false,
            "archive_recording_type": "fulltime",
            "can_change_archive_timetable": false,
            "scripts": [
                {
                    "id": 26,
                    "title": "Установить метку",
                    "schedule": [],
                    "timetable": {
                        "days": [
                            {
                                "to": "23:59:00+05:00",
                                "from": "00:00:00+05:00",
                                "type": "same_every_day",
                                "breaks": []
                            }
                        ],
                        "intervals": []
                    },
                    "status": "active",
                    "created_at": "2022-12-21 12:51:35",
                    "updated_at": "2022-12-21 12:51:35",
                    "users": [
                        {
                            "id": 5,
                            "login": "user",
                            "name": "user",
                            "parent_id": null,
                            "created_at": "2022-12-06 20:20:58",
                            "updated_at": "2022-12-21 12:57:40",
                            "access_token_id": null,
                            "can_update_password": true
                        }
                    ],
                    "event": {
                        "id": 4,
                        "name": "recognized-face",
                        "description": "Лицо идентифицировано",
                        "color": "#07D4F0",
                        "analytic_type": "face"
                    },
                    "analytic_groups": [
                        {
                            "id": 1,
                            "name": "Лица",
                            "type": "face_resource",
                            "type_pretty": "Лица",
                            "uuid": "92fa40e4-5dbe-47e2-b690-ee0ae4636d90",
                            "created_at": "2022-12-21 12:57:14",
                            "updated_at": "2022-12-21 12:57:14"
                        },
                        {
                            "id": 2,
                            "name": "Лица 2",
                            "type": "face_resource",
                            "type_pretty": "Лица",
                            "uuid": "9d3e5d3c-973a-482f-b0bc-988c698af9e0",
                            "created_at": "2022-12-21 12:57:32",
                            "updated_at": "2022-12-21 12:57:32"
                        }
                    ],
                    "extra": null
                }
            ],
            "meta": {
                "figures": [
                    {
                        "name": "Figure 1",
                        "coords": [
                            {
                                "x": 0.153125,
                                "y": 0.31666666666666665
                            },
                            {
                                "x": 0.3421875,
                                "y": 0.7361111111111112
                            },
                            {
                                "x": 0.86875,
                                "y": 0.6472222222222223
                            },
                            {
                                "x": 0.78125,
                                "y": 0.125
                            }
                        ]
                    }
                ],
                "threshold": 90
            },
            "analytic_case_camera_status": "active",
            "analytic_case_camera_status_pretty": "Камера активна",
            "analytic_case_camera_user_status": null,
            "analytic_case_camera_user_status_pretty": null,
            "event": null,
            "is_bridge": false,
            "is_favorite": false,
            "user_status": "active",
            "name": "Камера 1"
        },
        {
            "id": 7,
            "group_id": 2,
            "status": "inactive",
            "type": "media_server_v2",
            "start_at": "",
            "created_at": "2022-12-16 10:25:54",
            "billing_id": null,
            "pretty_name": "Камера 2",
            "pretty_text": "Камеры",
            "short_address": "Камеры",
            "full_address": "Камеры",
            "lat": null,
            "lng": null,
            "azimuth": null,
            "streams": [
                {
                    "id": 13,
                    "type": "high",
                    "camera_id": 7,
                    "is_preview_from_server": true,
                    "is_archive_from_server": null,
                    "status": "active",
                    "has_sound": false,
                    "width": null,
                    "height": null
                },
                {
                    "id": 14,
                    "type": "low",
                    "camera_id": 7,
                    "is_preview_from_server": true,
                    "is_archive_from_server": null,
                    "status": "active",
                    "has_sound": false,
                    "width": null,
                    "height": null
                }
            ],
            "has_sound": false,
            "archive_ranges": [],
            "archive_recording_timetable": null,
            "is_archive_recording": false,
            "archive_recording_type": "fulltime",
            "can_change_archive_timetable": false,
            "scripts": [
                {
                    "id": 26,
                    "title": "Установить метку",
                    "schedule": [],
                    "timetable": {
                        "days": [
                            {
                                "to": "23:59:00+05:00",
                                "from": "00:00:00+05:00",
                                "type": "same_every_day",
                                "breaks": []
                            }
                        ],
                        "intervals": []
                    },
                    "status": "active",
                    "created_at": "2022-12-21 12:51:35",
                    "updated_at": "2022-12-21 12:51:35",
                    "users": [
                        {
                            "id": 5,
                            "login": "user",
                            "name": "user",
                            "parent_id": null,
                            "created_at": "2022-12-06 20:20:58",
                            "updated_at": "2022-12-21 12:57:40",
                            "access_token_id": null,
                            "can_update_password": true
                        }
                    ],
                    "event": {
                        "id": 4,
                        "name": "recognized-face",
                        "description": "Лицо идентифицировано",
                        "color": "#07D4F0",
                        "analytic_type": "face"
                    },
                    "analytic_groups": [
                        {
                            "id": 1,
                            "name": "Лица",
                            "type": "face_resource",
                            "type_pretty": "Лица",
                            "uuid": "92fa40e4-5dbe-47e2-b690-ee0ae4636d90",
                            "created_at": "2022-12-21 12:57:14",
                            "updated_at": "2022-12-21 12:57:14"
                        },
                        {
                            "id": 2,
                            "name": "Лица 2",
                            "type": "face_resource",
                            "type_pretty": "Лица",
                            "uuid": "9d3e5d3c-973a-482f-b0bc-988c698af9e0",
                            "created_at": "2022-12-21 12:57:32",
                            "updated_at": "2022-12-21 12:57:32"
                        }
                    ],
                    "extra": null
                }
            ],
            "meta": {
                "figures": [
                    {
                        "name": "Figure 1",
                        "coords": [
                            {
                                "x": 0.153125,
                                "y": 0.31666666666666665
                            },
                            {
                                "x": 0.3421875,
                                "y": 0.7361111111111112
                            },
                            {
                                "x": 0.86875,
                                "y": 0.6472222222222223
                            },
                            {
                                "x": 0.78125,
                                "y": 0.125
                            }
                        ]
                    }
                ],
                "threshold": 30
            },
            "analytic_case_camera_status": "active",
            "analytic_case_camera_status_pretty": "Камера активна",
            "analytic_case_camera_user_status": null,
            "analytic_case_camera_user_status_pretty": null,
            "event": null,
            "is_bridge": false,
            "is_favorite": false,
            "user_status": "active",
            "name": "Камера 2"
        }
    ],
    "created_at": "2022-12-21 12:57:51",
    "updated_at": "2022-12-21 12:57:51",
    "analytic_files": [
        {
            "id": 1,
            "name": "8cd2c62afc562e34baf410f60fb5c389.jpeg",
            "type": "face_resource",
            "type_pretty": "Лица",
            "uuid": null,
            "body": "",
            "url": "http://127.0.0.1:8080/storage/analytic-files/2022/12/21/kmdNICDeShIrlzLxYsbJnOrSKybLFUGqqJGd1V9i.jpg",
            "created_at": "2022-12-21 12:52:04",
            "updated_at": "2022-12-21 12:52:04"
        },
        {
            "id": 2,
            "name": "6-sep-2017-beauty-salons-where-are-best-face-peeli-op.jpeg",
            "type": "face_resource",
            "type_pretty": "Лица",
            "uuid": null,
            "body": "",
            "url": "http://127.0.0.1:8080/storage/analytic-files/2022/12/21/oCF24atlYCsztS00pQdF6VErPyF9KFgVRTGxqfp0.jpg",
            "created_at": "2022-12-21 12:52:04",
            "updated_at": "2022-12-21 12:52:04"
        },
        {
            "id": 3,
            "name": "8cd2c62afc562e34baf410f60fb5c389.jpeg",
            "type": "face_resource",
            "type_pretty": "Лица",
            "uuid": null,
            "body": "",
            "url": "http://127.0.0.1:8080/storage/analytic-files/2022/12/21/kTyAPEk53tLRQbYBeeiCMOIgEI82uSa382wqdqju.jpg",
            "created_at": "2022-12-21 12:57:30",
            "updated_at": "2022-12-21 12:57:30"
        },
        {
            "id": 4,
            "name": "6-sep-2017-beauty-salons-where-are-best-face-peeli-op.jpeg",
            "type": "face_resource",
            "type_pretty": "Лица",
            "uuid": null,
            "body": "",
            "url": "http://127.0.0.1:8080/storage/analytic-files/2022/12/21/x6EMx699hPaTTfs0Qcud1ytzhZBZcT7AfuIz0soT.jpg",
            "created_at": "2022-12-21 12:57:30",
            "updated_at": "2022-12-21 12:57:30"
        }
    ],
    "color": "#E5642E",
    "available_events": [],
    "is_fails_exists": false
}
401

Токен авторизации не передан или не валидный, см. Получение токена

402

Превышен лимит лицензий для выбранного кейса аналитики

422

Возвращает JSON объект с ошибкой, см. Валидация

JSON
{
    "message": "Тут не будет информативного сообщения",
    "errors": {
        "any_key": [
            "Тут будет описана причина ошибки"
        ]
    }
}

Пример

JSON
curl -k --location --request POST 'https://vms.local/api/v1/analytic-case' \
--header 'Authorization:Bearer token' \
--header 'Accept:application/json' \
--header 'X-Client:ios-cctv|android-cctv|thick-legal|web' \
--header 'X-UUID:unique device id' \
--header 'Content-Type: application/json \
--data-raw '{
    "title": "Распознавание лиц",
    "type": "face",
    "cameras": [
        {
            "id": 10,
            "analytic_case_camera_user_status": null,
            "scripts": [
                {
                    "id": 26,
                    "analytic_groups": [
                        2,
                        1
                    ]
                }
            ],
            "meta": {
                "figures": [
                    {
                        "x": 0.153125,
                        "y": 0.31666666666666665
                    },
                    {
                        "x": 0.3421875,
                        "y": 0.7361111111111112
                    },
                    {
                        "x": 0.86875,
                        "y": 0.6472222222222223
                    },
                    {
                        "x": 0.78125,
                        "y": 0.125
                    }
                ],
                "threshold": 90
            }
        },
        {
            "id": 7,
            "analytic_case_camera_user_status": null,
            "scripts": [
                {
                    "id": 26,
                    "analytic_groups": [
                        2,
                        1
                    ]
                }
            ],
            "meta": {
                "figures": [
                    {
                        "x": 0.134375,
                        "y": 0.25277777777777777
                    },
                    {
                        "x": 0.4359375,
                        "y": 0.8694444444444445
                    },
                    {
                        "x": 0.8953125,
                        "y": 0.6611111111111111
                    },
                    {
                        "x": 0.7453125,
                        "y": 0.1361111111111111
                    }
                ],
                "threshold": 30
            }
        }
    ]
}'
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.