🌇 British Pathe — один из пионеров в съемке мировой кинохроники.
С 1896 по 1978 год компания сняла более 85 тысяч документальных роликов, посвященных основным событиям истории, модным тенденциям, путешествиям, технологиям, науке и культуре
Сегодня камеры стоят почти везде. В торговом центре они считают посетителей, на заводе следят за безопасностью, в логистике помогают оптимизировать процессы, а в офисе фиксируют, кто зашёл и кто вышел. Камера сама по себе — это просто глаз. Настоящая магия начинается тогда, когда поверх видео накладывается аналитика: нейросети, которые в реальном времени ищут людей, считают объекты, оценивают движение.
Но у этой магии есть обратная сторона — она очень прожорливая. Видеопотоки нужно прогонять через нейросети, и на больших данных даже мощные сервера начинают задыхаться. Особенно если система собрана «из коробки» и не оптимизирована.
Проблема клиента
С такой ситуацией к нам и пришёл клиент. У него уже стояла система видеоаналитики: несколько десятков камер, подключённых к серверу с GPU. Всё вроде бы работало, но слишком медленно. За тридцать секунд система успевала обработать всего четыре видеопотока.
Для живого бизнеса это означало одно: бизнес не получит информацию в моменте. Ведь, к моменту когда видео будет обработано, оно станет уже неактуальным. А теперь представьте, что речь идёт не об офисе, а о заводе или складе, где важна каждая секунда и где от скорости зависит безопасность людей.
Первое решение, которое обсуждали у клиента, было максимально простое: «давайте купим ещё одну видеокарту». Казалось бы, логично: больше железа — больше мощности. Но стоимость оборудования в такой конфигурации была бы сравнима с ценой небольшой машины, и это только начало расходов. К железу пришлось бы докупать софт, поддерживать инфраструктуру, а эффект при этом не гарантирован.
Мы предложили другой путь: оптимизировать систему так, чтобы она работала быстрее на том, что уже есть.
С чего начали
Мы всегда начинаем с диагностики. Сели и посмотрели, как именно устроен процесс. Выяснилось, что система работала «по накатанной»:
каждый видеопоток подавался в нейросеть отдельно,
обработка шла строго по очереди,
процессор и видеокарта работали не синхронно и большую часть времени простаивали.
Отдельная история была с разрешением входных кадров. В сеть загонялись изображения 640×480. Для бытовой камеры это кажется скромным размером, но для нейросети это лишние пиксели. Сеть честно пыталась их проглотить, только толку от этого не было. Людей в кадре это не делало «более узнаваемыми», зато ресурсы уходили в никуда.
Почему уменьшение разрешения — не страшно
Один из мифов видеоаналитики: «чем выше качество изображения, тем лучше результат». На самом деле это не всегда так. В задачах распознавания людей важны крупные контуры, движения, ключевые признаки. Увеличение разрешения до абсурда лишь добавляет лишние детали — плитка на полу, трещины на стенах, мелкие артефакты, которые для задачи не имеют никакого значения.
Мы начали постепенно уменьшать размер входных кадров. Эксперименты показали, что оптимальная точка — примерно 416×256. Это почти в полтора раза меньше исходного, но качество распознавания людей сохранилось. Зато скорость обработки резко выросла.
Параллельная обработка и балансировка
Следующим шагом было изменение самой логики работы. Если раньше система напоминала кассу в магазине, где очередь из десяти человек обслуживает один кассир, то мы сделали так, чтобы работало сразу несколько касс. Видео стали обрабатываться параллельно, и сразу загрузка ресурсов выросла в разы.
Здесь важно было грамотно распределить задачи между CPU и GPU. До оптимизации они работали несогласованно: GPU простаивал, пока процессор готовил данные, а процессор ждал, пока GPU «пережёвывает» ролик. Мы сделали так, чтобы GPU занимался инференсом, пока новые фреймы готовятся на CPU. Теперь оба ресурса загружены равномерно.
Результат
Когда мы закончили оптимизацию и запустили систему в работу, цифры приятно удивили даже нас. Вместо четырёх видеопотоков за 30 секунд система теперь обрабатывала 22. Почти шестикратное ускорение — без покупки нового оборудования.
Для клиента это означало экономию бюджета, отказ от дорогостоящего расширения инфраструктуры и при этом полноценное выполнение задач. Люди в кадре распознавались так же корректно, система перестала «задыхаться», и бизнес наконец получил инструмент, на который можно было опереться.
Что это показало
Опыт с этим проектом стал для нас хорошей иллюстрацией нескольких важных принципов.
Во-первых, в работе с нейросетями не всегда выигрывает максимальное разрешение. Иногда лишние пиксели только мешают.
Во-вторых, оптимизация алгоритмов и архитектуры часто даёт больший эффект, чем покупка нового «железа».
И в-третьих, тюнинг моделей — это отдельная инженерная задача, которая требует экспериментов, тестов и внимательного анализа. Но результат того стоит.
Итог
Сегодня эта система работает у клиента без перебоев и обрабатывает почти в шесть раз больше видеопотоков, чем раньше. Это не просто цифры в отчёте — это реальная разница между системой, которая еле справляется, и системой, которая помогает бизнесу работать эффективнее и безопаснее.
Для нас этот проект стал напоминанием о том, что оптимизация — это тоже искусство. Где-то оно заключается в архитектуре, где-то в правильной балансировке ресурсов, где-то в настройке самой модели. Но результат всегда один: система работает быстрее, а клиент получает больше пользы.
Каждый день мимо двери моего подъезда проходят десятки людей. Иногда это знакомые соседи, но чаще - курьеры или случайные гости.
Домофонная камера всё записывает, но вручную пересматривать часы видео бессмысленно. Мне стало интересно: можно ли разово прогнать архив записей через алгоритмы компьютерного зрения и посмотреть, как быстро GPU справится с такой задачей.
Это был чисто экспериментальный проект: не «система слежки», а тест производительности и возможностей CUDA в связке с dlib и face_recognition.
На словах всё выглядело просто, а на деле пришлось пройти целый квест из несовместимых программ, капризных драйверов и упрямой библиотеки распознавания лиц. Но в итоге я собрал рабочее окружение и хочу поделиться опытом - возможно, это поможет тем, кто столкнётся с похожими проблемами.
Часть 1: Битва за dlib с CUDA-ускорением на Ubuntu
dlib - это популярная библиотека на Python для компьютерного зрения и машинного обучения, особенно известная своим модулем распознавания лиц. Она умеет искать и сравнивать лица. Однако «из коробки» через pip она работает только на CPU, что для задач с большим объёмом данных ужасно медленно.
У меня видеокарта NVIDIA GeForce RTX 5060 Ti 16 ГБ и здесь на помощь приходит CUDA-ускорение - технология NVIDIA, позволяющая выполнять вычисления на графическом процессоре видеокарты. Для распознавания лиц это критично: обработка видео с несколькими тысячами кадров на CPU может занять часы, тогда как с GPU - минуты. CUDA задействует сотни параллельных потоков, что особенно эффективно для матричных операций и свёрточных сетей, лежащих в основе face_recognition.
Именно поэтому моя цель была не просто «запустить dlib», а сделать это с полной поддержкой GPU.
Эта часть рассказывает о том, как простая, на первый взгляд, задача превратилась в двухдневную борьбу с зависимостями, компиляторами и версиями ПО.
Расписываю по шагам - может быть кто-то найдёт эту статью через поиск и ему пригодится.
1. Исходная точка и первая проблема: неподходящая версия Python
Задача: установить face_recognition и его зависимость dlib на свежую Ubuntu 25.04.
Предпринятый шаг: попытка установки в системный Python 3.13.
Результат: ошибка импорта face_recognition_models. Стало ясно, что самые свежие версии Python часто несовместимы с библиотеками для Data Science, которые обновляются медленнее.
Решение: переход на pyenv для установки более стабильной и проверенной версии Python 3.11.9. Это был первый правильный шаг, решивший проблему с совместимостью на уровне Python.
2. Вторая проблема: dlib работает, но только на CPU
Предпринятый шаг: после настройки pyenv и установки зависимостей (numpy, opencv-python и т.д.), dlib и face_recognition успешно установились через pip.
Результат: скрипт анализа видео работал ужасно медленно (несколько минут на одно видео). Мониторинг через nvidia-smi показал 0% загрузки GPU.
Диагноз: стандартная установка dlib через pip скачивает готовый бинарный пакет ("wheel"), который собран без поддержки CUDA для максимальной совместимости. Чтобы задействовать GPU, dlib нужно компилировать из исходного кода прямо на моей машине.
3. Третья, главная проблема: конфликт компиляторов CUDA и GCC
Предпринятый шаг: попытка скомпилировать dlib из исходников с флагом -DDLIB_USE_CUDA=1.
Результат: сборка провалилась с ошибкой. Анализ логов показал, что cmake находит CUDA Toolkit 12.6, но не может скомпилировать тестовый CUDA-проект. Ключевая ошибка: error: exception specification is incompatible with that of previous function "cospi"
Диагноз: мой системный компилятор GCC 13.3.0 (стандартный для Ubuntu 25.04) был несовместим с CUDA Toolkit 12.6. Новые версии GCC вносят изменения, которые ломают сборку с более старыми версиями CUDA.
4. Попытки решения конфликта компиляторов
Шаг №1: установка совместимого компилятора. Я установил gcc-12 и g++-12, которые гарантированно работают с CUDA 12.x.
Шаг №2: ручная сборка с указанием компилятора. Я пытался собрать dlib вручную, явно указав cmake использовать gcc-12:
Результат: та же ошибка компиляции. cmake, несмотря на флаги, по какой-то причине продолжал использовать системные заголовочные файлы, конфликтующие с CUDA.
Шаг №3: продвинутый обходной маневр (wrapper). Я создал специальный скрипт-обертку nvcc_wrapper.sh, который должен был принудительно "подсовывать" nvcc (компилятору NVIDIA) нужные флаги и использовать gcc-12. Результат: снова неудача. Ошибка 4 errors detected in the compilation... осталась, что указывало на фундаментальную несовместимость окружения.
Капитуляция перед реальностью Несмотря на все предпринятые шаги - использование pyenv, установку совместимого компилятора GCC-12 и даже создание wrapper-скриптов - dlib так и не удалось скомпилировать с поддержкой CUDA на Ubuntu 25.04.
Похоже проблема была не в моих действиях, а в самой операционной системе. Использование не-LTS релиза Ubuntu для серьезной разработки с проприетарными драйверами и библиотеками (как CUDA) - это путь, полный боли и страданий.
Принял решение установить Ubuntu 24.04 LTS, для которой NVIDIA предоставляет официальную поддержку CUDA Toolkit 12.9 Update 1.
Часть 2: чистый лист и работающий рецепт
Установил Ubuntu 24.04 LTS - систему с долгосрочной поддержкой, для которой NVIDIA предоставляет официальный CUDA Toolkit и драйверы. Это был шаг назад, чтобы сделать два вперёд.
Но даже на чистой системе путь не был устлан розами. Первые попытки установки нужной версии Python через apt провалились (в репозиториях Noble Numbat её просто не оказалось), что вернуло меня к использованию pyenv. После нескольких итераций, проб и ошибок, включая установку CUDA Toolkit и отдельно cuDNN (библиотеки для нейросетей, без которой dlib не видит CUDA), родился финальный, работающий рецепт.
Проверка pyenv. Скрипт начинается с проверки наличия pyenv. Это позволяет использовать нужную версию Python (3.11.9), а не системную, избегая конфликтов.
Установка системных библиотек. Для компиляции dlib из исходного кода необходимы инструменты сборки (build-essential, cmake) и библиотеки для работы с математикой и изображениями (libopenblas-dev, libjpeg-dev). Скрипт автоматически их устанавливает.
Важно: скрипт предполагает, что CUDA Toolkit и отдельно cuDNN уже установлены по официальным инструкциям NVIDIA для вашей системы - они по ссылкам.
Создание чистого venv. Создаем изолированное виртуальное окружение, чтобы зависимости нашего проекта не конфликтовали с системными. Скрипт удаляет старое окружение, если оно существует, для гарантированно чистой установки.
Ключевой момент: установка dlib. Это сердце всего процесса. Команда pip install dlib с особыми флагами:
--no-binary :all: — этот флаг принудительно запрещает pip скачивать готовый, заранее скомпилированный пакет (wheel). Он заставляет pip скачать исходный код dlib и начать компиляцию прямо на вашей машине.
--config-settings="cmake.args=-DDLIB_USE_CUDA=1" — а это инструкция для компилятора cmake. Мы передаем ему флаг, который говорит: «При сборке, пожалуйста, включи поддержку CUDA».
Именно эта комбинация заставляет dlib собраться с поддержкой GPU на Ubuntu 24.04 LTS чтобы использовать видеокарту, а не в стандартном CPU-only варианте.
# --- Проверка наличия pyenv --- if ! command -v pyenv &> /dev/null; then echo -e "\n\033[1;31m[ERROR] pyenv не найден. Установи pyenv перед запуском.\033[0m" exit 1 fi
echo -e "\n[INFO] Выбор версии Python $PYTHON_VERSION_TARGET через pyenv..." pyenv local $PYTHON_VERSION_TARGET echo "[INFO] Текущая версия Python: $(python --version)"
# --- Проверка системных библиотек --- echo -e "\n[INFO] Проверка и установка системных библиотек для dlib..." sudo apt update sudo apt install -y build-essential cmake libopenblas-dev liblapack-dev libjpeg-dev git
# --- Очистка и создание виртуального окружения --- if [ -d "$VENV_DIR" ]; then echo "[INFO] Удаление старого виртуального окружения '$VENV_DIR'..." rm -rf "$VENV_DIR" fi
echo "[INFO] Создание виртуального окружения '$VENV_DIR'..." python -m venv "$VENV_DIR"
Камера, смотрящая на лифтовой холл. Фото из интернета
После победы над зависимостями у меня есть полностью рабочее окружение с CUDA-ускорением. Настало время применить его к реальным данным. Мои исходные данные - это архив видеозаписей с двух IP-камер, которые пишут видео на сетевой накопитель Synology Surveillance Station (есть аналоги). Для приватности я заменю реальные имена камер на условные:
podiezd_obshiy\ - камера, смотрящая на лифтовой холл.
dver_v_podiezd\ - камера из домофона, направленная на улицу.
Внутри каждой папки видео отсортированы по каталогам с датами в формате ГГГГММДД с суффиксом AM или PM. Сами файлы имеют информативные имена, из которых легко извлечь дату и время записи: podiezd_obshiy-20250817-160150-....mp4.
Камера из домофона, направленная на улицу. Здесь качество гораздо лучше потому что камера цифровая, а не аналоговая как у меня из квартирного домофона. Это фото из интернета
Я использовал стандартную библиотеку argparse. Она позволяет задавать ключевые параметры прямо из командной строки:
--model: выбор детектора лиц (hog или cnn).
--scale: коэффициент масштабирования кадра. Уменьшение кадра (например, до 0.5) ускоряет обработку, но может пропустить мелкие лица.
--skip-frames: количество пропускаемых кадров. Анализировать каждый кадр избыточно и медленно; достаточно проверять каждый 15-й или 25-й.
Скрипт находит все .mp4 файлы в указанной директории и запускает основной цикл, обрабатывая каждый видеофайл.
1. Детекция лиц: HOG против CNN
face_recognition предлагает два алгоритма детекции: HOG (Histogram of Oriented Gradients) и CNN (Convolutional Neural Network). HOG - классический и очень быстрый метод, отлично работающий на CPU. CNN - это современная нейросетевая модель, гораздо более точная (особенно для лиц в профиль или под углом), но крайне требовательная к ресурсам.
Раз я так боролся за CUDA, выбор очевиден - будем использовать cnn. Это позволит находить лица максимально качественно, не жертвуя скоростью.
2. Уникализация личностей
Как скрипт понимает, что лицо на двух разных видео принадлежит одному и тому же человеку? Он преобразует каждое найденное лицо в face_encoding - вектор из 128 чисел, своего рода уникальный «цифровой отпечаток».
Когда появляется новое лицо, его «отпечаток» сравнивается со всеми ранее сохраненными. Сравнение происходит с определенным допуском (tolerance). Установил его равным 0.6 - это золотая середина, которая позволяет не путать разных людей, но и узнавать одного и того же человека при разном освещении или угле съемки.
3. Умный подсчет: один файл - один голос
Простая логика подсчета привела бы к абсурдным результатам: если курьер провел у двери 30 секунд, его лицо могло бы быть засчитано 50 раз в одном видео. Чтобы этого избежать, я ввел простое, но эффективное правило: считать каждое уникальное лицо только один раз за файл.
4. Создание красивых иконок
Чтобы в кадр попадала вся голова с прической и частью шеи, я добавил в функцию create_thumbnail логику с отступами. Она берет размер найденного лица и увеличивает область кадрирования на 50% по вертикали и горизонтали. Так превью в отчете выглядят гораздо лучше и живее.
5. Генерация наглядного HTML-отчета
Финальный штрих - вся собранная информация (иконки, количество появлений) упаковывается в красивый и понятный HTML-отчет. Никаких сложных фреймворков: с помощью f-string и небольшого блока CSS генерируется страница, на которой все уникальные личности в этом эксперименте отсортированы по частоте появлений.
Часть 4: результаты и выводы
Для эксперимента я посчитал уникальных людей в выборке. Скрипт я запускал разово, отдельно для каждой камеры - это не постоянно работающий сервис, а скорее любопытная исследовательская игрушка.
Результаты оказались наглядными, но и показали пределы технологии. Качество распознавания напрямую зависит от исходного видео: камера домофона с узким углом и посредственным сенсором даёт мыльную картинку, на которой детали лица часто теряются. Для сравнения, камера 2,8 мм 4 Мп в лифтовом холле (широкоугольный объектив и матрица с разрешением 2560×1440) выдаёт значительно более чёткие кадры - глаза, контуры лица и текстура кожи читаются лучше, а значит, алгоритм реже ошибается.
Но и здесь есть нюанс: один и тот же человек в куртке и без неё, в кепке или с распущенными волосами, зачастую определяется как разные личности - видимо надо где-то крутить настройки. Поэтому цифры в отчёте стоит воспринимать не как абсолютную истину, а как любопытную статистику, показывающую общее движение людей, а не точный учёт.
Заключение
От простой идеи - «разово прогнать архив записей через алгоритмы компьютерного зрения и посмотреть, как быстро GPU справится с такой задачей» - я прошёл путь через череду технических ловушек: несовместимые версии Python, упёртый dlib, капризы CUDA и GCC.
К тому же это не сервис, а исследовательская проверка возможностей GPU.
Приложению Bitchat не требуются ни телефонные номера, ни электронная почта — только сеть блютус. Таким образом создается суперзащищенная сеть из ближайших устройств в радиусе 300 м.
📹 Она распознаёт действия: пьёт, ест, ходит в лоток, просто гуляет. 💬 Отправляет уведомления владельцу с фото и комментарием. ✅ Различает нескольких питомцев и ведёт статистику по каждому.
📌Функции: - Двусторонняя аудиосвязь. - Управление через приложение (вращение камеры, отслеживание). - Звук “чириканья” для привлечения внимания животного.
🔹Цена вопроса: Сама камера - $100. ИИ-функции (подписка): $12/мес(для одного питомца) или $17/мес (для двух).
Пару десятилетий назад систему распознавания лиц можно было увидеть разве что в шпионских боевиках. Сегодня это практически неотъемлемая часть смартфона и даже инфраструктуры крупных городов. Что это за технология, как она работает и где применяется?
Как зародились системы распознавания лиц
Первые исследования по идентификации лиц проводились еще в 1960 году. Вуди Бледсо, профессор Техасского университета, основал свою небольшую компанию Panoramic Research Incorporated, где тестировал всевозможные алгоритмы, в том числе по распознаванию символов, вместе с коллегами. Несмотря на то, что особых успехов компания не снискала, согласно неподтвержденным источником оставаться на плаву ей позволяло ЦРУ.
Вуди Бледсо мечтал создать «интеллектуальную машину», в возможности которой входило распознавание лиц. В 1963 году он представил проект, согласно которому его система должна была идентифицировать по фотографиям десять лиц. Сегодня это выглядит ничтожно, но в те годы вычислительная техника представляла собой массивные шкафы с магнитными лентами и перфокартами. Не существовало даже универсального метода для элементарной оцифровки фотографий.
Спустя четыре года проб и ошибок было решено распознавать лицо на основе нескольких ключевых точек: нос, губы, ширина рта и так далее. Созданная система в итоге смогла идентифицировать лица, опираясь на вводимые данные и предлагая правильный вариант фотографии. Однако оставалась проблема с улыбкой, разными ракурсами и возрастами для одного того же человека. Из-за таких изменений алгоритм мог идентифицировать одного и того же человека на фотографиях как разных людей.
В итоге к 1967 году была спроектирована более совершенная система, которая уже успешно идентифицировала лица на основе обычных вырезок из газет. Что самое важное, была доказана высокая эффективность. Человек справлялся с сопоставлением подгруппы из 100 человек за три часа. Машина — за три минуты, пусть и с некоторыми огрехами.
В 1973 году удалось создать автоматизированную систему, которая из цифровых фотографий была способна самостоятельно извлекать данные о чертах лица. Ранее эти параметры приходилось вводить вручную. Несмотря на все эти достижения, практическое применение системы распознавания лиц началось лишь с 2010-х годов.
Причин несколько:
Рост вычислительной мощности. Только в последние годы производительность компьютерной техники стала достаточной, чтобы обрабатывать такие большие объемы данных.
Сформированная база. Десятилетия назад у корпораций и государственных органов не было фотографий не то что обычных граждан, но и многих преступников. Сегодня эта проблема решена благодаря социальным сетям и цифровой базе документов.
Развитие камер. Лишь в последние годы появились относительно недорогие камеры с достаточным качеством съемки, что позволило применять их массово как в смартфонах, так и в системах наблюдения.
Как работает система распознавания лиц
Распознавание лица — многоэтапный процесс. В первую очередь задействуются системы считывания, именно они получают снимок лица человека и передают его в центр обработки данных.
Обнаружение — первый этап. В кадр камер обычно попадает не только лицо, но и множество других объектов окружения. Человек сразу же способен определить, где автомобиль, где задний план, а где находится и сам человек. Но для компьютера любая фотография — это всего лишь набор пикселей. Решением этой проблемы стал метод Виолы — Джонса, разработанный в 2001 году.
Он основан на использовании специальных паттернов (масок), чтобы определять светлые и темные зоны. По специальной формуле из темных и светлых пикселей выполняются вычисления, на основании которых выносится результат, соответствует ли маска обрабатываемому участку изображения. В человеческом лице можно выделить конкретные паттерны. Как только алгоритм находит определенное число совпадений, он выносит вердикт — вот в этой зоне расположено человеческое лицо. Предварительно алгоритм обучают на других лицах.
Однако в последние несколько лет все больше систем уже используют нейросети. Они точнее, менее чувствительны к ракурсу съемки, а при достаточном аппаратном обеспечении еще и быстрее.
Нормализация — второй этап после обнаружения лица. Чтобы в дальнейшем было проще определять ключевые параметры, система пытается выстроить «идеальный кадр» — лицо, которое смотрит строго прямо. Здесь могут выполняться различные преобразования вроде поворота, изменения масштаба и других деформаций.
Построение «отпечатка лица» — следующий шаг. Как именно оно выполняется — зависит от используемого алгоритма. Все разнообразие методов можно разделить на две большие группы: геометрические и машинные.
Геометрические методы анализируют отличительные признаки изображений лица и формируют определенный массив данных на их основе. Массив сравнивается с эталоном и, если совпадение выше определенного порога — лицо найдено.
Для анализа обычно используются ключевые точки, между которыми вычисляются расстояния. Количество требуемых точек также зависит от каждого конкретного алгоритма — может использоваться от 68 до 2000 маркеров.
К геометрическим алгоритмам относится метод гибкого сравнения на графах, скрытые Марковские модели, метод главных компонент и другие.
Машинные методы — это нейросети. Они обучаются на огромной базе изображений и, анализируя совокупность определенных признаков, в итоге определяют совпадения лиц. Если максимально упростить, то для каждого фото формируется определенный вектор. Например, для трех фото (Анджелины Джоли и два Бреда Питта) мы получим три разных вектора. Разница между фотографиями Питта будет минимальной, что позволяет сделать вывод — на фото один и тот же человек.
У крупнейших компаний имеются авторские алгоритмы, которые постепенно модифицируются. Например, в 2018 году в тестировании NIST были представлены больше десяти алгоритмов от ведущих компаний в сфере распознавания лиц. Первое место заняла китайская компания Megvii, второе — российская VisionLabs, а замкнула тройку французская фирма OT-Morpho. К другим известным проектам также стоит отнести систему DeepFace (Meta**), FaceNet (Google) и Amazon Rekognition.
Помимо 2D-распознования лиц с коэффициентом ошибок в 0,1% существует технология 3D-распознования. Для нее коэффициент составляет всего 0,0005%. В таких системах используются лазерные сканеры с оценкой дальности или сканеры со структурированной подсветкой поверхности. Самая известная технология — FaceID от компании Apple, однако и у топовых Android-смартфонов также имеются системы распознавания с построением 3D-карты.
Применение систем распознавания лиц
Технология распознавания лиц используется в самых разнообразных сферах, как правило, в той или иной мере связанных с обеспечением безопасности.
Первая и одна из самых больших областей — городские системы видеонаблюдения. Практически во всех крупных развитых странах уже используется или одобрена биометрическая идентификация. Городские камеры в режиме реального времени распознают сотни тысяч лиц, сравнивая результаты с огромными базами данных. Это позволяет оперативно разыскивать преступников и нелегальных мигрантов. Аналогичные системы стоят практически во всех аэропортах, а также многих вокзалах.
Например, в 2018 году во время чемпионата мира по футболу в городах России камеры видеонаблюдения были подключены к системе Find Face Security, благодаря чему удалось выявить и задержать более 150 преступников. Система работает больше чем на десяти стадионах страны. В Китае алгоритмы получают данные со 170 миллионов камер. Если преступник попадется на одну из них, то, например, в Пекине его арестуют уже через семь минут!
Однако число камер — не абсолютный показатель. Например, площадь Пекина составляет 16 410 км², а это около 70 камер на квадратный километр . Площадь Парижа — всего 105 км², здесь плотность камер намного выше — 255 штук на квадратный километр! При этом следует учитывать и места расположения — многие проулки все равно останутся в «слепой зоне».
Одной из самых современных является система распознавания лиц в Москве. Используемые алгоритмы способны обрабатывать около одного миллиарда изображений всего за 0,5 секунды. При этом используется одновременно сразу четыре разных алгоритма распознавания от компаний NtechLab, TevianFaceSDK, VisionLabsLuna Platform и Kipod.
С 2018 года в России также начала работать ЕБС — единая биометрическая система, которая собирает «отпечатки» лиц и голоса пользователей. Благодаря этой разработке появилась возможность оформить какие-либо услуги в банках и других финансовых организациях без непосредственного посещения.
Второе по важности применение систем распознавания лиц — коммерческое. Сюда можно отнести:
Банковские услуги. Распознавание лиц позволяет не только идентифицировать мошенников и людей из черного списка, но и упрощает получение услуг. Например, в России уже проводились пилотные проекты по использованию банкоматов с идентификацией по лицу.
Системы контроля доступа. Обеспечить безопасность предприятия и даже офиса намного проще с развитой системой видеонаблюдения и распознаванием лиц. Это не только упрощает доступ, но и позволяет оперативно выявлять любых людей, которые несанкционированно проникли на территорию.
Сфера торговли. Интеллектуальные системы в магазинах могут предлагать вам, например, одежду подходящего размера, распознав вас по лицу. И это не говоря про быструю оплату по лицу.
Медицина. Продвинутые алгоритмы будут способны выявить отдельные эмоции, например, приступы эпилепсии или инсульты.
Мобильная техника. Идентификация по лицу уже стала таким же популярным методом авторизации, как и отпечаток пальца.
Чем грозит технология
Конечно, в теории быстрое обнаружение опасных преступников всего по паре снимков лица — отличная перспектива. Вот только на практике этика применения технологии нередко может выходить за рамки.
Например, у ФБР есть достаточно большая база под названием Next Generation Identification (NGI) — к 2014 году в ней было уже около 100 миллионов фотографий. Вот только оказалось, что в базе содержатся не только фото преступников, но и людей, которые никогда не привлекались. Более того, используемые алгоритмы гарантировали точность всего в 80-85%. Можно не только забыть про анонимность в глобальном масштабе — ошибки системы вполне могут превратить вас в преступника, если вы на него похожи или просто попали неудачно в кадр камеры.
Другая проблема — усиленная слежка со стороны корпораций. У многих из них и так уже имеется исчерпывающий цифровой портрет, включая ваши фотографии, геолокации и отпечатки пальцев. Однако благодаря данным систем распознавания лиц такие корпорации смогут отслеживать ваши передвижения буквально по минутам. Получается, даже если вы никогда и нигде не выкладывали свои фотографии в социальных сетях и даже на смартфоне, ваше лицо все равно может попасть в чьи-то базы данных.
Немаловажен и тот факт, что по лицу вас могут найти не только государственные органы, но и в принципе любой человек. После же недоброжелателям не составит труда отыскать и другие данные — адрес, телефон и так далее. Все это может вылиться в различные виды мошенничества, угроз и не только.
Во многих странах уже подаются иски на корпорации и государственные структуры, но в крупных городах работа систем распознавания лиц будет неизбежной. Остается только надеяться, что их использование будет максимально правомерным. Впрочем, защититься все еще можно. Алгоритмы несовершенные, поэтому кепка, маска и даже очки могут внести существенные погрешности, из-за которых будет проблематично считать ваш «отпечаток лица»
В Москве появилось первое умное здание с Алисой. В июне его жители смогут с помощью Алисы на Станциях и ТВ Станциях отвечать на звонки домофона, открывать двери и оформлять электронные пропуска для гостей.
Позже появится возможность выводить трансляцию с общедомовых камер на экран ТВ Станции или Станции Дуо Макс.
А до конца июня жильцы в разных регионах страны смогут управлять домофонами компании «Наш дом» голосом через устройства с Алисой.