Обычная видеоаналитика обводит человека рамкой, и на этом всё: чинит он задвижку или просто прошёл мимо — неизвестно. GuardDetector читает поток с камеры как последовательность событий: работа началась, работа продолжается, кто-то прошёл, началось нарушение СИЗ. У каждого события есть начало и длительность, поэтому в отчёт попадают случаи, а не кадры. Ниже — одна реальная смена на предприятии по производству минеральных удобрений, кадр за кадром.
Показатели измерены для статьи, поданной на конференцию ECCV 2026 (эксперимент 5), на процессоре Intel Core i7-13700 в 4 потока.
Кадры без обработки, уменьшены для веба; лица размыты при записи. Между двумя показанными кадрами шкала идёт по кадрам, у которых есть разметка, но нет картинки.
Прибор оценивает четыре последних кадра сразу, поэтому отличает «продолжает работать» от «только подошёл». Если кадров пока меньше четырёх, последний повторяется — так модель понимает, что картина не меняется.
Считаем случаи, а не кадры: нарушение длиной в двенадцать кадров — это одна тревога, а не двенадцать.
Каждый размеченный кадр смены — на этом графике. Кликните в любом месте, и запись перемотается туда.
Тот же приём, которым языковые модели находят имена и даты в тексте, только по времени. Вместо координат рамок сеть выдаёт на каждый кадр метку: B — событие началось, I — продолжается, O — ничего не происходит. Из этих меток сразу известно, когда событие началось и сколько длилось.
| Токен | Точность | Полнота | F1 |
|---|---|---|---|
| O — фон | 0,85 | 1,00 | 0,92 |
| B-PPE_violation | 1,00 | 0,78 | 0,87 |
| I-PPE_violation | 1,00 | 0,92 | 0,96 |
| B-machinery_trouble | 0,92 | 0,65 | 0,76 |
| I-machinery_trouble | 0,94 | 0,82 | 0,87 |
| B-people_work | 0,90 | 0,74 | 0,81 |
| I-people_work | 0,90 | 0,92 | 0,91 |
| Взвешенное среднее | 0,92 | 0,83 | 0,87 |
На обработку кадра уходит 4,75 ± 1,63 мс, 210,7 кадров в секунду, только процессор. Лучше всего распознаётся продолжение события: когда оно уже началось, окно легко его удерживает.
Пять типов событий в этом внедрении: people_work — работа у оборудования, people_pass — проход, PPE_violation — нарушение СИЗ, crowd — скопление людей, machinery_trouble — неисправность оборудования. В одном кадре может быть несколько событий сразу. Для обучения достаточно подписать кадры названиями событий — рамки и маски рисовать не нужно.
«Работает у агрегата» и «прошёл мимо» — разные события. Вы получаете время, реально проведённое у оборудования, а не счётчик силуэтов.
У нарушения СИЗ есть начало и длительность. Тревога поднимается один раз, а не на каждый кадр, и в отчёт попадает, сколько нарушение продолжалось.
Больше 200 кадров в секунду на промышленном процессоре без видеокарты, в пыли и парах цеха грануляции. Видео не покидает площадку — наружу уходят только события.
Для обучения нужны только подписи к кадрам. Из прибора выходит список событий с временем — ни одного лица, ни одного кадра.
Пришлите неделю записи с одной камеры и список того, что хотите отслеживать. Вернёмся с готовой лентой событий по вашей записи.