Розробка системи ідентифікації обличчя (Face Identification, 1:N)

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

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

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

Людина йде через КПП, не зупиняючись, вікно за спиною дає контрове світло, голову вона повертає на 30-40 градусів — і в модуль розпізнавання потрапляє розмитий кадр із засвіченим фоном.

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

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

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

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

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

Що змінюється після впровадження: швидкість, відмови, навантаження

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

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

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

Модель обираємо за незалежними вимірами точності, наприклад NIST FRVT: на вхідному контролі частка хибних відмов знижується з 8–10% до 1–2%, при цьому хибні пропуски залишаються в допустимій смузі для об’єкта.

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

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

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

Режими ідентифікації обличчя: 1:N, 1:1 і контроль доступу

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

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

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

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

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

Як обирають на об’єкті

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

Етапи впровадження системи розпізнавання: від аудиту до приймання

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

  1. Аудит інфраструктури. Фіксуємо, що вже є на об’єкті: камери та їхні ракурси, освітлення в різний час доби, канали зв’язку, вільні обчислювальні ресурси. На виході — звіт із вузькими місцями та переліком замін.
  2. Схема розміщення. Точки встановлення, зони перекриття, вимоги до кадру — кут обличчя, мінімальний розмір. Узгоджуємо до монтажу: перенести камеру після запуску дорожче, ніж порахувати заздалегідь.
  3. Еталонна база. Збір, розмітка, дедуплікація записів і відбракування непридатних кадрів. Перевіряємо, що людина представлена кількома кадрами, — інакше порівняння помиляється.
  4. Пілотний запуск. Система працює на обмеженому контурі: одна зона або один потік. Метрики знімаємо на живому трафіку, а не на тестовій вибірці.
  5. Калібрування порогів. Підбираємо значення під задачу: де важливіше не пропустити людину, де — не пустити чужого. Протокол з обґрунтуванням залишається в замовника.
  6. Приймання за метриками. Спільний прогін за узгодженими сценаріями, включно з обривом зв’язку та перезапуском, звірка з цільовими значеннями, передача документації та навчання персоналу.

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

Комплект поставки: конфігурації, схеми, регламенти, документація

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

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

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

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

Кейс: як знизили частку хибних спрацьовувань на об’єкті

Об’єкт — прохідна з щільним потоком: у ранковий пік через неї проходить кілька тисяч людей за годину. Ідентифікацію запустили в режимі 1:N за одним архівним фото з кадрової справи, а кадри брали із загального потоку камер спостереження Hikvision.

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

Що перебудували в зніманні

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

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

Еталони перезібрали: замість одного архівного фото — набір із 5–8 кадрів з різних ракурсів і освітлення, без дрібних і змащених. Шаблон рахували за всім набором, тому вечірнє контрове світло й поворот голови перестали бути причиною відмови.

Що сталося за метриками

На контрольній вибірці частка хибних спрацьовувань упала з 1:40 до 1:250 подій, відмови розпізнавання — з 6% до 1,5%, потрапляння правильного кандидата в перший рядок списку зросло з 82% до 97%.

Прохід через турнікет скоротився з 4–6 секунд до 1–2, а оператор повернувся до розбору винятків замість ручної обробки кожного збігу.

Що робити, якщо систему розпізнавання вже розгорнуто

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

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

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

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

Ядро залишається попереднім, змінюється якість кадру на вході — а саме воно визначає результат у режимі 1:N.

Замінити ядро розпізнавання без простою. Новий движок піднімається поруч (VisionLabs або інше актуальне ядро), обидва отримують один і той самий потік і рахують паралельно. Порівнюємо видачу на реальних подіях, потім переводимо камери групами, зберігаючи відкат в один крок.

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

Часті сумніви: якість знімання, приватність, навантаження

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

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

Що буде за поганого освітлення та контрового світла?

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

Як зберігаються еталони і що потрапляє до бази?

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

Що змінюється, коли база зростає до десятків тисяч людей?

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

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

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

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

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

Що помітно прискорює перехід до оцінки та строків:

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

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

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

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

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