Усе про розпізнавання облич для бізнесу

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

Розпізнавання облич стало одним із найбільш обговорюваних термінів останнього десятиліття.

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

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

Після прочитання статті ви отримаєте чітке розуміння технології розпізнавання облич та її впливу на бізнес.

Отже, почнемо!

Еволюція технології розпізнавання облич

Технологія розпізнавання облич існує вже деякий час, незважаючи на велику увагу ЗМІ. Першим значним алгоритмічним проривом у цій галузі стала структура виявлення об’єктів Віоли-Джонса, опублікована у 2001 році. Хоча вона розроблена для загальної ідентифікації об’єктів на зображеннях, її швидко адаптували для виявлення облич, досягнувши значних успіхів. Головною перевагою алгоритму була його швидкість: процес навчання був повільним, але виявлення відбувалося надзвичайно швидко.

На початку 2000-х років, середній персональний комп’ютер міг обробляти зображення розміром 300×300 пікселів за 0,07 секунди (детальніше тут). Точність, хоча й не зрівняна з людською, становила вражаючі 90%.

Справжній прогрес відбувся у 2010-2020 роках, коли згорткові нейронні мережі стали основним методом розпізнавання облич. Це стало можливим завдяки доступності обчислювальних потужностей та великим обсягам пам’яті, що з’явилися завдяки хмарним обчисленням IaaS. Вперше комп’ютери почали регулярно перевершувати людей у розпізнаванні облич, особливо при обробці великої кількості випадкових об’єктів.

Джерело: medium.com

Як функціонує розпізнавання облич?

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

Розглянемо кожен з етапів:

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

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

Джерело: csc.kth.se

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

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

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

Джерело:warddatascience.com

Міркування щодо розгортання: серверна та клієнтська сторони

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

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

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

Наскільки точне розпізнавання облич?

Точність розпізнавання облич — поняття нечітке, оскільки існує багато факторів, що впливають на результати (погане освітлення, обличчя частково закрите волоссям, низька якість камери). Нейронні мережі потрібно налаштовувати для вирішення конкретних проблем, що обмежує їхню сферу застосування. Наприклад, промислова система розпізнавання облич може мати точність 100% в одному випадку, а в іншому – лише 20%, якщо потрібно ідентифікувати обличчя на переповненій фотографії.

У одному дослідженні, певний алгоритм розпізнавання облич досяг точності 98,52%, що вище, ніж людська точність 97,53% у тому ж тесті. В іншому дослідженні, в криміналістиці поєднання людського судження та алгоритмів давало кращі результати.

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

Де використовується розпізнавання облич?

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

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

Джерело: labnol.org

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

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

Джерело: gistreel.com

Щоб ці фільтри працювали, контури обличчя мають бути точно розпізнані. Те саме стосується Face Swap. Детальніше про можливості Snapchat у розпізнаванні облич можна дізнатися тут.

Uber використовує розпізнавання облич для перевірки особи водіїв-партнерів, щоб підвищити безпеку. Компанія використовує Microsoft Face API для ідентифікації водіїв в реальному часі, навіть в умовах слабкого освітлення.

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

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

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

Джерело: theconversation.com

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

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

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

Синдром ДіДжорджа зустрічається приблизно у 1 з 6000 дітей і викликає деформації різних частин тіла. Розпізнавання облич, з точністю 96,6%, дає нову надію хворим на цей синдром, особливо в країнах, де немає доступу до дорогих методів діагностики.

У галузі авіаперевезень розпізнавання облич поступово витісняє звичайні посадкові талони. Вже існують обнадійливі результати щодо використання технології для ідентифікації пасажирів під час проходження контролю. Адміністрація транспортної безпеки США (TSA) розробила план щодо широкого використання біометрії на основі розпізнавання облич.

Суперечливе використання розпізнавання облич

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

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

Джерело: sbs.com

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

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

Джерело: businessinsider.com

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

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

Порівняння популярних API розпізнавання облич

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

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

OpenCV

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

Це точна бібліотека комп’ютерного зору з відкритим кодом, доступна для всіх платформ програмування. Приклад показує, як створити систему розпізнавання облич за допомогою Python і OpenCV у 25 рядках коду!

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

Amazon Rekognition

Rekognition є потужним сервісом від Amazon Web Services (AWS). Це керована служба для платформи AWS. Якщо ви вже використовуєте AWS, то Rekognition може бути найкращим вибором.

Rekognition пропонує такі функції:

  • Аналіз у реальному часі (для зображень та відео, що завантажуються на S3)
  • Аналіз обличчя (стать, колір волосся, вираз обличчя, відкриті чи закриті очі тощо)
  • Відстеження об’єктів (захоплення траєкторії об’єктів у відео)
  • Виявлення сцен та діяльності (у приміщенні/на вулиці, гра у футбол)
  • Модерація небезпечного контенту (наприклад, зображення оголеного тіла)

Основною перевагою Rekognition є його інтеграція з AWS. З іншого боку, буде важко використовувати його з іншими сервісами.

Kairos

На відміну від Rekognition, Kairos надає штучний інтелект через API, дозволяючи вам повністю контролювати свої дані та сервери. Kairos позиціонує себе як сервіс, що надає конфіденційність та критикує Amazon та інші компанії, які співпрацюють з урядами (так само як і ACLU).

Kairos працює із зображеннями та відео, а також має усі функції сучасного API розпізнавання облич. Він пропонує деякі функції Rekognition, але якщо вони вам не потрібні, і ви вже керуєте своїми даними, то Kairos може бути хорошим вибором.

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

Google Cloud Vision

Google розрізняє свої сервіси розпізнавання облич для зображень та відео. API для зображень називається Cloud Vision, а для відео – Video Intelligence.

Сервіс для зображень схожий на те, що пропонує AWS. Відеосервіс має функцію каталогізації та пошуку, що буде корисно для компаній, які мають великі відеоархіви.

Проте Video Intelligence не має функцій розпізнавання облич, які, здається, є лише в Cloud Vision. Функції відстеження об’єктів та виявлення тексту знаходяться в бета-версії, що поступається пропозиціям Amazon.

API Azure Face

Microsoft активно розвиває свої хмарні сервіси, і API Azure Face є гарним прикладом цього. Він має всі цікаві функції (виявлення, ідентифікація, групування облич, пошук схожих облич, розпізнавання емоцій) та однаково добре працює з відео.

Варто відзначити, що Azure також пропонує сервіс комп’ютерного зору Custom Vision Service, який дозволяє використовувати власні дані для навчання моделей.

Подібно до сервісу Google, на головній сторінці є майданчик для тестування API.

Чи є суттєві відмінності між цими керованими сервісами розпізнавання облич? Не дуже. Конкуренція в цій сфері є високою, і нові функції з’являються постійно. Якщо ви вже прив’язані до певної екосистеми, використання відповідного сервісу розпізнавання облич має сенс. В іншому випадку ви можете обрати іншого постачальника, якщо ваші потреби є специфічними (контроль даних, просте виявлення).

Системи протидії розпізнаванню облич

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

Джерело: digitaltrends.com

Хоча ці окуляри ще не доступні на ринку, дослідники стверджують, що їх можна легко надрукувати на 3D-принтері.

Ще однією цікавою розробкою став запуск окулярів Eko на Kickstarter. Цей продукт, хоч і був скасований, використовував просту ідею: звичайні сонцезахисні окуляри за 45 доларів, які відбивали світло, заважаючи роботі камер та систем відеоспостереження.

Як і в сфері кібербезпеки, фахівці у сфері розпізнавання облич постійно вдосконалюють свої навички. У 2014 році з’явився <a