Создание приложения React Native для добавления пользователей в службу распознавания лиц
В этом руководстве описано, как приступить к работе с примером приложения регистрации лиц. Приложение демонстрирует рекомендации по получению значимого согласия на добавление пользователей в службу распознавания лиц и получение высококачественных данных лиц. Интегрированная система может использовать такое приложение, чтобы обеспечить сенсорный контроль доступа, идентификацию, отслеживание посещаемости или киоск персонализации на основе данных лица.
Когда пользователи запускают приложение, он отображает подробный экран согласия. Если пользователь дает согласие, приложение запрашивает имя пользователя и пароль, а затем записывает высококачественное изображение лица с помощью камеры устройства.
Пример приложения написан с использованием JavaScript и платформы React Native. Его можно развернуть на устройствах Android и iOS.
Необходимые компоненты
- Подписка Azure — создайте бесплатную учетную запись.
- Получив подписку Azure, создайте ресурс Распознавания лиц на портале Azure, чтобы получить ключ и конечную точку. После развертывания ресурса выберите элемент Перейти к ресурсу.
- Для подключения приложения к API Распознавания лиц потребуется ключ и конечная точка из созданного ресурса.
Внимание
Вопросы безопасности
- Для локальной разработки и первоначального ограниченного тестирования приемлемо (но не рекомендуется) использовать переменные среды для хранения ключа API и конечной точки. Для пилотных и окончательных развертываний ключ API должен храниться безопасно, что, скорее всего, предполагает использование промежуточной службы для проверки маркера пользователя, созданного во время входа.
- Никогда не храните ключ API или конечную точку в коде или фиксируйте их в системе управления версиями (например, git). Если это произошло по ошибке, вам необходимо немедленно сгенерировать новый ключ/конечную точку API и отозвать предыдущие.
- Рекомендуется использовать отдельные ключи API для разработки и производства.
Настройка среды разработки
Клонируйте репозиторий git для примера приложения.
Чтобы настроить среду разработки, следуйте документации React Native. Выберите React Native CLI Quickstart. Выберите свою ОС для разработки и Android в качестве целевой ОС. Выполните действия в разделах Установка зависимостей и Среда разработки Android.
Загрузите предпочтительный текстовый редактор, например Visual Studio Code.
Получите конечную точку FaceAPI и введите портал Azure на вкладке Обзор вашего ресурса. Не возвращайте свой ключ API Распознавания лиц в удаленный репозиторий.
Предупреждение
Только для локальной разработки и тестирования можно ввести ключ API и конечную точку в качестве переменных среды. Для окончательного развертывания храните ключ API в безопасном месте, а не в коде или переменных среды. Ознакомьтесь с руководством по проверке подлинности служб ИИ Azure для других способов проверки подлинности службы.
Запустите приложение с помощью эмулятора виртуального устройства Android из Android Studio или на собственном устройстве Android. Чтобы протестировать приложение на физическом устройстве, следуйте соответствующей документации React Native.
Настройка приложения для бизнеса
Теперь, когда вы настроили пример приложения, вы можете настроить его в соответствии с вашими собственными потребностями.
Например, на странице согласия может потребоваться добавить сведения о конкретных ситуациях:
Добавьте дополнительные инструкции для повышения точности проверки.
Многие проблемы распознавания лиц вызваны некачественными изображениями. Ниже перечислены некоторые факторы, которые могут привести к снижению производительности модели.
- Размер лица (лиц, находящихся на удалении от камеры).
- Ориентация лица (лица видны не полностью).
- Плохое освещение (низкая освещенность или подсветка), что влияет на экспозицию и вызываем слишком много шума на изображении.
- Окклюзион (частично скрытые или обструкированные лица), включая аксессуары, такие как шляпы или толстые очки
- Размытие (например, при быстром перемещении лица во время снимка).
Служба обеспечивает проверку качества изображения, чтобы на основании указанных выше факторов помочь вам выбрать, имеет ли изображение достаточное качество, чтобы добавить клиента или попытаться распознать лицо. В этом приложении показано, как получить доступ к кадрам с камеры устройства, обнаруживать качество, отображать сообщения пользовательского интерфейса пользователю, чтобы помочь им записать изображение с более высоким качеством, выбрать кадры высокого качества и добавить обнаруженное лицо в службу API распознавания лиц.
Пример приложения предлагает функциональные возможности для удаления сведений пользователя и возможности для чтения. Вы можете включить или отключить эти операции на основе бизнес-требований.
Чтобы расширить функциональные возможности приложения для полного взаимодействия, ознакомьтесь с обзором других функций для реализации и рекомендаций.
Настройка базы данных для сопоставления каждого пользователя с их идентификатором
Необходимо использовать базу данных для хранения изображения лица вместе с метаданными пользователя. Номер социального страхования или другой уникальный идентификатор человека можно использовать в качестве ключа для поиска идентификатора лица.
Безопасные методы передачи ключа подписки и конечной точки в службу распознавания лиц см. в руководстве по безопасности служб искусственного интеллекта Azure.
Развертывание приложения
Во-первых, убедитесь, что приложение готово к развертыванию в рабочей среде. Удалите все ключи или секреты из кода приложения и убедитесь, что выполнены рекомендации по обеспечению безопасности.
Когда вы будете готовы выпустить приложение для рабочей среды, создайте файл APK, готовый к выпуску, который является форматом файла пакета для приложений Android. Этот файл APK должен быть подписан с использованием закрытого ключа. С помощью этой сборки выпуска можно приступить к распространению приложения на устройства напрямую.
Следуйте инструкциям по подготовке к выпуску , чтобы узнать, как создать закрытый ключ, подписать приложение и создать APK выпуска.
После создания подписанного APK ознакомьтесь с документацией по публикации приложения , чтобы узнать больше о том, как освободить приложение.
Связанный контент
В этом руководстве вы узнали, как настроить среду разработки и начать работу с примером приложения. Если вы не знакомы с React Native, вы можете ознакомиться с документацией по началу работы, чтобы получить дополнительные сведения. Также может быть полезно ознакомиться с API Распознавания лиц. Ознакомьтесь с другими разделами о добавлении пользователей, прежде чем начинать разработку.