Розробка системи розпізнавання небажаної поведінки

Камери пишуть архів, але на інциденти доводиться реагувати постфактум. Ми розробляємо системи розпізнавання поведінки під ключ: налаштовуємо аналіз потоку з камер і виводимо оператору лише значущі події. Хибні спрацювання знижуються в рази, час реакції — до секунд.
Часті запитання

Що ламається під час розпізнавання поведінки на потоці з камер

Розпізнавання поведінки в потоці ламається не в демонстраційному режимі, а на живій зміні. Подія має сенс лише тоді, коли її хтось підтвердив і відпрацював: коли хибні спрацювання йдуть пачками, черговий перестає реагувати на тривоги, і реальний інцидент проходить повз.

Нічні зони контролю — перший провал. Інфрачервона підсвітка дає шум на матриці, фари збивають експозицію, тіні від огорожі читаються як силует. Людина зникає з кадру на кілька секунд, а правило «людина в забороненій зоні» спрацьовує на порожньому місці.

Щільний потік ламає вже супровід об’єктів. У черзі на вході люди перекривають одне одного, лінія супроводу обривається й переприв’язується до сусіда — різкий рух навішується на випадкову людину.

Незалежні вимірювання точності моделей у складних умовах, наприклад у програмах NIST, показують, що рішення одного класу різняться за часткою помилок у рази; цей розрив і визначає, скільки тривог піде у відпрацювання.

Далі підключається людина. Після двадцяти-тридцяти хвилин монотонного спостереження увага чергового падає, а якщо пошук в архіві виконується вручну, розбір одного епізоду — це години запису. Навантаження на охорону зростає, а фактична реакція падає.

Усі ці точки відмови закриваються підготовкою даних, правилами та порогами, а не заміною однієї моделі на іншу — нижче розбираємо, як це робиться.

Що дає впровадження: час реакції та частка хибних спрацювань

Перший ефект — час до оповіщення. Кадри йдуть на обробку потоком, без накопичення сегмента, тому тривожна подія потрапляє оператору за секунди, а не під час розбору зміни. Різниця принципова: в одному випадку черговий встигає втрутитися, в іншому фіксує лише факт.

Другий — частка хибних спрацювань. Поріг підбираємо за записами самого об’єкта, а не за абстрактною вибіркою: ракурси камер, освітленість, спецодяг, типові переміщення персоналу.

Поверх детектора працює класифікатор контексту — він відсікає збіги за формою, де сцена насправді штатна. Чим менше хибних тривог, тим вища довіра зміни й тим рідше систему вимикають «щоб не заважала».

Третій — охоплення зон контролю. Один інцидент, що потрапив у кілька камер, склеюється в одну подію за траєкторією людини, а не перетворюється на потік дублів. Тому зони й камери додаємо без розширення штату: на чергового припадає більше покриття, а не більше екранів. Нову зону вводимо налаштуванням області інтересу, без перенавчання моделі.

Четвертий — розвантаження чергової зміни. Ручний перегляд записів замінюється вибірковим: дивляться за фільтрами та метаданими, а не підряд. Зміна займається реакцією на підтверджені події, увага залишається рівною до кінця доби.

Ефект впровадження вимірюємо на контрольному періоді — час до оповіщення, частка хибних спрацювань, покриті зони та кількість відпрацювань на зміну.

Режими аналізу: живий потік, архів і гібридна схема

Режим аналізу задає не лише швидкість реакції, а й вимоги до каналу зв’язку, обчислювальних ресурсів і якості запису.

Живий потік обробляє кадри в міру надходження й віддає подію, поки її ще можна запобігти; архівний аналіз проганяє накопичені записи пакетно й дає повнішу картину завдяки повторному проходу по складних сценах. Гібридна схема ділить роботу: легкі правила рахуються на живому потоці, важкі моделі — за архівом.

Розвилка одна: потрібна реакція в момент події чи достатньо розбору постфактум. Для живого потоку рахуємо бюджет затримки й навантаження на канал, для архіву — глибину зберігання та швидкість пакетної обробки.

Обмеження режиму проявляються на межах: онлайн втрачає точність у слабкому світлі, архів запізнюється, гібрид вимагає узгодження подій між контурами.

Режим Коли доречний Обмеження
Правила та зони Формалізовані події: вхід у заборонену зону, перетин лінії Не розуміє контекст, спрацьовує на схожих допустимих діях
Живий потік Потрібна реакція за секунди: бійка, падіння, проникнення Чутливий до каналу й освітлення, частину сцен доводиться спрощувати
Архівний аналіз Розбір інцидентів, звітність, пошук за записами за період Реакція постфактум, результат з’являється через час після події
Гібридна схема Критичні зони — на живому потоці, решта — пакетно Два контури: складніше налаштування пріоритетів і узгодження подій

На практиці режим обирають не для об’єкта загалом, а для кожної зони окремо — далі розбираємо, як це відображається на розмітці, порогах і супроводі системи.

Порядок впровадження: від обстеження зон до передачі

Кожен етап залишає артефакт, на який спирається наступний. Пропустіть обстеження — схема зон збереться з пам’яті, а розбіжність спливе на прийманні, коли переробка зачіпає і камери, і логіку сценаріїв.

  1. Обстеження об’єкта. Обходимо периметр і внутрішні приміщення, фіксуємо реальні кути огляду, сліпі зони, перепади освітлення вдень і вночі. Одразу відсікаємо події, які на поточних камерах надійно не розрізняються.
  2. Схема зон. Кожній камері призначаємо зони контролю та правила: вхід у заборонену область, скупчення людей, залишений предмет. Схему узгоджуємо до налаштування — вона ж лягає в інструкцію зміни.
  3. Налаштування сценаріїв. Підбираємо чутливість за зонами, прибираючи хибні спрацювання від тіней, відблисків і скла, але не втрачаючи реальні події. Пороги фіксуємо в конфігурації, а не «на око».
  4. Перевірка на записах. Проганяємо сценарії на архіві: зміни з відомими інцидентами та спокійні. Рахуємо частку знайдених подій і кількість хибних тривог, правимо пороги за результатом.
  5. Приймання системи. Замовник підтверджує роботу на живому потоці за чек-лістом: реакція на контрольні події, час до тривоги в інтерфейсі, коректність повідомлень черговому.
  6. Навчання зміни. Розбираємо, як читати тривогу, що робити при підтвердженні та як позначати хибні спрацювання — ці мітки йдуть у дообучення.
  7. Передача. Віддаємо схему зон, конфігурації, регламент реакції та доступи, фіксуємо порядок супроводу й точку відкату до попередніх налаштувань.

Що залишається у вас: конфігурації, схеми, регламенти

Документи — не додаток до системи, а її частина: за ними рішення живе після здачі. Нижче — що саме залишається у вас, щоб конфігурацію можна було правити власними силами, а не чекати нас щодо кожної зміни.

  • Робоча конфігурація сценаріїв: зони інтересу, пороги чутливості, розклад активності за годинами й днями, з поясненням, чому виставлено саме це значення. Значення редагуються без нас — змінюється лише логіка, а не код.
  • Карта зон і сліпих ділянок: що реально потрапляє в кадр, де перекриття колонами або стелажами, на яких ділянках розпізнавання працює нестійко. Одразу видно, куди додати камеру, щоб закрити діру.
  • Правила доступу до записів: хто дивиться потік у реальному часі, хто має право вивантажити фрагмент, строк зберігання, журнал звернень. Ролі розведені так, щоб перегляд залишався контрольованим.
  • Регламент реакцій: яка подія кому адресується і за який час черговий зобов’язаний відреагувати, що вважається хибним спрацюванням і як його закрити в журналі.
  • Інструкції для зміни: картки на одну сторінку — як підтвердити або відхилити подію, як позначити розбір, куди ескалювати нештатний випадок.
  • Схема розгортання та поведінка при відмовах: порядок перезапуску, що деградує першим, як відкотитися на попередню версію конфігурації без втрати історії.
  • Порядок передачі рішення: доступи й ролі, навчання зміни, період, протягом якого ми залишаємося на зв’язку з питань експлуатації.

Пакет передається не архівом «на пам’ять», а з розбором на місці: проходимо по кожному пункту зі зміною та техслужбою, щоб інструкції перевірялися на живих подіях, а не читалися вперше в момент інциденту.

Кейс: склад і нічні зони — як прибрали хибні спрацювання

Розподільчий склад: нічні зони відвантаження, чергова зміна з двох операторів, аналітики на відеопотоці немає. Тривоги піднімав датчик руху — за ніч на пульт надходило 300–400 подій, з яких підтверджувалися одиниці.

Оператори перестали відкривати спливаючі вікна, і поява людини в зоні палет губилася серед тіні від навантажувача та відблиску від фар.

Що змінили

Детекцію розділили на два шари: грубий пошук руху в нічній зоні та класифікацію дії за коротким фрагментом — людина біля стелажа, навантажувач, тінь, тварина.

Пороги налаштували окремо під кожну зону й режим освітлення, а модель дообучили на записах цього ж складу: інфрачервона підсвітка, дощ, різке вмикання прожекторів.

Виведення моделі йде на периферійному вузлі поруч із камерами, на NVIDIA, тому кадри не йдуть у центр каналом зв’язку.

Що стало

Вимірювання знімали на розміченій вибірці нічних записів за однаковий період до й після, на тих самих зонах і змінах.

  • Підтверджених спрацювань — з 8% до 71%: чергова зміна розбирає короткий список замість потоку.
  • Ручної перевірки за ніч — з 350 до 40 подій.
  • Час до оповіщення — з 40 секунд до 6: сигнал іде, поки порушник ще в кадрі.
  • Чергова зміна — один оператор замість двох, другого переведено на обходи.

Правила зон і пороги лежать у конфігурації, а не в коді моделі: повернути попередній режим або перенести налаштування на другий склад можна за хвилини, без перенавчання.

Чим детекція за правилами відрізняється від навчання на розмітці

Детекція за правилами — це геометрія зон і формалізовані умови: об’єкт перетнув лінію, увійшов у заборонену область, затримався довше порога, пішов проти дозволеного напрямку.

Логіка детермінована: один епізод дає один вердикт, пороги задаються вручну, спрацювання пояснюється словами. Звідси передбачуваність моделі: поведінка перевіряється тестовими записами й не змінюється від кадру до кадру.

Межа підходу — сцени, де ознака не зводиться до координат: замах, падіння, розмахування руками, залишений предмет, бійка. Правило «рука вище плеча» не відрізнить загрозу від привітання, і тут потрібна розмітка.

Навчання на розмітці починається з підготовки прикладів: короткі фрагменти з позначеною за інтервалами поведінкою та окремий набір схожих, але допустимих ситуацій.

Модель працює з ознаками руху й пози та переноситься на нові ракурси, але якість залежить від повноти розмітки: пропущені негативи й перекіс класів дають зростання хибних тривог.

На об’єкті працює поєднання підходів. Правила тримають контекст — зону, час, напрямок, тривалість — і вмикають модель лише всередині зони та після спрацювання правила.

Модель розбирає не весь потік, а короткий інтервал, тому навантаження на обчислювач і частка хибних спрацювань падають.

Порядок впровадження: правила закривають прості та зрозумілі сценарії, потім підтверджені оператором тривоги стають прикладами для розмітки, і на них дообучується модель.

Цикл замикається — експлуатація сама нарощує набір прикладів, а правила й модель працюють як один контур контролю.

Технічні сумніви перед запуском: що запитують найчастіше

Технічні питання перед стартом стосуються не самої моделі, а її стикування з тим, що вже працює на об’єкті: камери, освітлення, архів, права доступу. Нижче — відповіді на те, що запитують найчастіше.

Чи підійдуть уже встановлені камери?

У більшості випадків так: потік іде за відкритим стандартом, реєстратор не перекодовує його на льоту. Перед стартом знімаємо тестові фрагменти з типових точок і перевіряємо ракурс, деталізацію та перекриття — непридатна камера виявляється на замірі, а не після запуску.

Що буде при зміні освітлення?

Зміна світла — головне джерело хибних спрацювань: при вмиканні ліхтарів або фарах у кадрі картинка змінюється сильніше, ніж сама поведінка. До набору даних входять записи з кожної точки в різний час доби та в негоду, а пороги спрацювання налаштовуються за зонами окремо.

Скільки зберігати фрагменти?

Зберігаємо не весь архів, а короткі фрагменти навколо події плюс метадані: час, зона, тип спрацювання. Повний запис залишається у вашій системі — ми в нього не втручаємося, строк зберігання задає ваша політика.

Хто отримує доступ до записів?

Права розмежовуються за ролями: оператор бачить подію й фрагмент, але не вивантажує масив, служба безпеки отримує розширений доступ. Перегляди та вивантаження пишуться в журнал.

Як проходить дообучення?

Помилкові спрацювання та пропуски потрапляють у чергу розмітки й додаються до набору даних. Дообучення йде з перевіркою на відкладеній вибірці, а попередня версія моделі залишається доступною для відкату.

Обговоримо задачу й повернемося з оцінкою та планом

Точність оцінки та плану впровадження залежить не від кількості камер, а від того, наскільки повно описані сцени, за якими система буде приймати рішення.

Нижче — що надіслати для розбору задачі: чернетки, вивантаження та скриншоти підійдуть, приводити матеріали до ладу не потрібно. Навіть частковий набір уже знімає половину питань.

  • Перелік зон із призначенням: периметр, каса, склад, службові проходи, паркування — по кожній окремо.
  • Схема розміщення камер: ракурси, перекриття, зони огляду — за нею видно, де сцена читається, а де потрібен доворот.
  • Сценарії порушень: що вважаємо подією — бійка, падіння, залишений предмет, прохід у заборонену зону. Так само важливі приклади норми: те, що система підсвічувати не повинна.
  • Пріоритети за зонами: які сцени потрібні з першого дня, які можна включити другою чергою.
  • Склад зміни та регламент реакції: хто дивиться оповіщення, у які години й що робить після — від цього залежить поріг спрацювання.
  • Записи за кілька типових днів, включно з ніччю та піком навантаження, — на них перевіримо розпізнавання до старту робіт.

Після розбору повернемося з оцінкою робіт і планом впровадження: черговість зон, склад обладнання та доопрацювань, точки приймання за кожною сценою. Опишіть задачу так, як зручно, — те, чого не вистачає, уточнимо самі.

Напрямки AI-розробки

Останні роботи

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1542
  • Розробка веб-додатків для компанії FEEDME
    Розробка веб-додатків для компанії FEEDME
    1394
  • Розробка веб-сайту для компанії БЕЛФІНГРУП
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    1081
  • Розробка інтернет магазину для компанії FURNORO
    Розробка інтернет магазину для компанії FURNORO
    1369
  • Розробка логотипу компанії B2B Advance
    Розробка логотипу компанії B2B Advance
    816
  • Розробка веб-додатків для компанії Enviok
    Розробка веб-додатків для компанії Enviok
    1141