Как настроить распознавание лица для входа в Ubuntu и другие дистрибутивы Linux

Несмотря на все опасения, функция распознавания лиц становится все более популярной среди потребителей. Большинство последних устройств на базе Android и iOS оснащены функцией разблокировки устройства с помощью аутентификации по лицу.

Как только вы привыкнете к разблокировке по лицу или отпечатку пальца, ввод пароля покажется вам утомительным и скучным занятием.

В операционной системе Windows компания Microsoft предлагает функцию Windows Hello, которая позволяет мгновенно проходить аутентификацию по лицу.

В Linux разблокировка по лицу не является встроенной функцией. Ни один дистрибутив Linux, насколько я знаю, не предоставляет функцию разблокировки по лицу из коробки.

Но, как говорится, есть оболочка, есть путь. В Linux часто встречаются альтернативные вещи и инструменты, которые можно настроить для выполнения определенной задачи.

В этом руководстве я покажу вам, как настроить разблокировку лица в Ubuntu. Вы можете использовать это руководство и для других дистрибутивов Linux.

Вам необходимо иметь навыки работы с терминалом и командами Linux, поскольку вы будете использовать инструмент командной строки Linux.

Howdy: Система аутентификации с распознаванием лиц в стиле Windows Hello для Linux

Howdy – это программное обеспечение с открытым исходным кодом, которое дает вам возможность войти в систему Linux с помощью системы распознавания лиц. Считайте, что это альтернатива Windows Hello для Linux с открытым исходным кодом. Здесь ваши данные хранятся локально на вашем компьютере.

Howdy использует встроенные ИК-излучатели и веб-камеру для распознавания вашего лица. Он создан с использованием OpenCV и Python.

Howdy использует систему аутентификации PAM, что означает, что вы можете не только войти в систему с помощью своего лица, но и использовать его для sudo, su и в большинстве других ситуаций, когда вам нужно использовать пароль вашей учетной записи. Однако в моем тестировании он не смог разблокировать вход в систему в KUbuntu, возможно это связано с SDDM, но пароль в терминале отлично разблокируется с помощь моего лица.

Установка Howdy на Ubuntu и другие дистрибутивы Linux

Разработчик Howdy предоставляет удобный PPA, который упрощает установку Howdy на дистрибутивы на базе Ubuntu.

Откройте терминал и выполните следующие команды на Ubuntu:

sudo add-apt-repository ppa:boltgolt/howdy
sudo apt update
sudo apt install howdy

Howdy – это большое программное обеспечение, и оно устанавливает огромное количество программных библиотек. Для меня он показал около 140 МБ размера загрузки и 600 МБ размера диска после установки.

Во время установки программа попросит вас выбрать тип аутентификации: Fast, Balanced и Secure. Я выбрал Balanced, потому что не хочу ждать слишком долго, но и не хочу, чтобы это было менее безопасно.

screenshot 20220111 160401
Выберите уровень разблокировки по лицу Ubuntu

Во время установки программа жалуется на добавление /usr/local/bin в PATH, но для меня он уже был там. Вы можете проверить это для своей системы.

Для Debian вы можете загрузить файл DEB. Пользователи Arch/Manjaro могут установить его из AUR.

Пользователи Fedora могут использовать репозиторий COPR:

sudo dnf copr enable luya/howdy
sudo dnf install howdy

Пользователи openSUSE могут найти инструкции по установке здесь.

В крайнем случае, вы можете получить исходный код на репозитории GitHub.

Поскольку в этом руководстве я использую Kubuntu 21.10, некоторые шаги могут использовать команду apt, но я думаю, что вы можете использовать менеджер пакетов вашего дистрибутива для этих шагов.

Настройка разблокировки лица в Ubuntu и других Linux с помощью Howdy

Давайте посмотрим, как настроить его для распознавания лиц.

Изменение файла конфигурации

Перед использованием Howdy необходимо изменить конфигурационный файл, чтобы указать устройство веб-камеры.

В большинстве систем Linux устройством для веб-камеры должно быть /dev/video0, но вы должны убедиться в этом с помощью команды v4l2-ctl.

Сначала установите v4l-utils:

sudo apt install v4l-utils

Теперь используйте команду v4l2-ctl для получения списка устройств

linuxcool@fox-pc:~$ v4l2-ctl --list-devices
Integrated_Webcam_HD: Integrate (usb-0000:00:14.0-5):
/dev/video0
/dev/video1

Почему два (или более) видеоустройства? Вам нужно проверить возможности устройства. Устройство должно иметь возможность захвата видео, а не только захвата метаданных.

Вы можете проверить это с помощью команды v4l2-ctl -device=/dev/video0 -all и затем посмотреть в разделе возможностей. В большинстве случаев это должно быть первое устройство, т.е. /dev/video0.

Прочтите:  Как установить Ubuntu 22.04 Desktop [пошаговое руководство с картинками]

Теперь вам нужно установить путь к устройству в конфигурации Howdy. Вы можете сделать это, открыв вручную файл /lib/security/howdy/config.ini для редактирования или использовать команду ниже, чтобы открыть файл конфигурации для редактирования в вашем текстовом редакторе на базе терминала по умолчанию:

sudo howdy config

Найдите строку, начинающуюся с device_path. Измените ее значение на /dev/video0 или любое другое значение пути для вашего устройства веб-камеры.

screenshot 20220113 111335
screenshot 20220113 111335

Сохраните и выйдите из файла. Теперь вы готовы к работе.

Добавьте свое лицо для распознавания лица

Howdy – это инструмент командной строки. Вы должны делать все в терминале.

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

Используйте следующую команду, чтобы связать лицо с текущим пользователем, т.е. с вами.

sudo howdy add

Она не показывает, как выглядит ваше лицо, открывая камеру, поэтому вам следует посмотреть в веб-камеру, чтобы ваше лицо было запечатлено правильно.

Он попросит вас добавить идентификатор к лицу. Вы можете назвать его как угодно. Я использовал такие термины, как очки, с наушниками и т.д.

Я предлагаю добавить еще несколько вариантов вашего лица, особенно если вы носите очки. Просто выполняйте команду sudo howdy add каждый раз, когда вы хотите добавить лицо.

Howdy будет готов к работе, как только вы добавите лицо. Чтобы проверить это, откройте новый терминал и выполните команду с sudo. Вы заметите, что ваша веб-камера замигает и пытается распознать лицо. Если лицо не распознано, появится сообщение об ошибке и будет предложено использовать пароль.

Чтобы добавить лицо для другого пользователя, необходимо указать имя пользователя:

sudo howdy -U имя пользователя add

Вам не нужно беспокоиться о запуске Howdy после перезагрузки. Howdy запускается автоматически при каждой загрузке.

Список всех известных моделей лица для пользователя

Вы можете посмотреть, какие модели лиц связаны с пользователем с помощью опции list. Если вы не укажете имя пользователя, будет показан результат для текущего пользователя.

sudo howdy list

Очистить некоторые или все модели лиц

Когда вы перечислили все модели лиц для пользователя, вы можете использовать опцию remove, чтобы удалить определенную модель лица. Вам нужно будет указать ID модели лица, а не ярлык.

sudo howdy remove face_ID

Вы можете удалить все модели лиц с помощью следующей команды:

sudo howdy clear

Отключение и повторное включение Howdy

Вы можете временно отключить Howdy с помощью этой команды:

sudo howdy disable 1

Вы можете снова включить его, используя ту же опцию отключения, но с 0 в качестве аргумента:

sudo howdy disable 0

Удаление Howdy из вашей системы

Вы можете использовать менеджер пакетов вашего дистрибутива для удаления Howdy.

В Ubuntu используйте следующую команду:

sudo apt remove howdy

Вам также следует удалить PPA:

sudo add-apt-repository -r ppa:boltgolt/howdy

Для других дистрибутивов используйте метод удаления, соответствующий методу установки, который вы использовали.

Заключение

Настраивать разблокировку лица в Linux очень интересно. Я думаю, это может послужить основой для нескольких хороших проектов для Raspberry Pi. Это забавное упражнение на выходных, чтобы сделать что-то подобное.

Однако я не рекомендую устанавливать его на критически важных объектах инфраструктуры или серверах. Распознавание лиц не очень безопасно.

Использование разблокировки по лицу на вашей личной системе Linux – это одно, но, пожалуйста, не используйте ее на серверах или рабочих машинах.

Надеюсь, вам понравилось это руководство “Сделай сам” (если это можно так назвать). Дайте мне знать, если вы хотите видеть больше подобных уроков на LinuxCool в будущем.

Оцените?
+1
13
+1
1
+1
0
+1
0
+1
0
+1
0
+1
0
Поделитесь с друзьями
Admin
Admin

Люблю Linux

Статей: 474
Подписаться
Уведомить о
guest
2 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии