Как распознать человека на фото за 15 минут
Рассказываем, как пользоваться готовыми нейронными сетями из интернета на примере RetinaNet.
Любой ребенок уже через несколько часов после рождения хорошо отличает лицо матери. Разве не удивительно?
Предлагаю вам погрузиться в далекое детство и снова попробовать научиться распознавать людей. Но теперь придется пользоваться не глазами, а моделями компьютерного зрения и библиотеками машинного обучения.
В конце вы поймете, что эти слова не так уж и страшны и, возможно, заинтересуетесь изучением искусственного интеллекта.
Всё необходимое будет прямо в браузере. Достаточно иметь аккаунт Google и 15 минут свободного времени.
Шаг 1
Переходим по ссылке в Google Colab и создает новый блокнот: File – New notebook.
Шаг 2
Чтобы приступить к обнаружению объектов, необходимо загрузить какую-нибудь уже обученную модель обнаружения объектов. Воспользуемся RetinaNet. Вставляем код:
Чтобы выполнить код необходимо нажать Run слева от данной строки. И так будем делать после каждого блока кода.
Шаг 3
Еще немного придется попрограммировать. Новый блок кода добавляется кнопкой +Code:
Установим библиотеку компьютерного зрения — OpenCV, библиотеку ImageAI, которая позволяет выполнить обнаружение объектов на изображениях, а также библиотеку машинного обучения TensorFlow и нейросетевую библиотеку Keras конкретных версий. Это все нужно, чтобы заработало :)
Шаг 4
Немного кода на языке Python. Все таки библиотеки надо не только установить, но и подключить:
Шаг 5
Подгружаем обученную модель RetinaNet. Потерпите, еще немного.
Шаг 6
Теперь интереснее. Пора загрузить файлы изображений. Это делается в боковом меню блокнота с помощью кнопки Upload.
Возьмем для примера вот такое изображение с именем 0.jpg:
Шаг 7
Выполняем распознавание объектов для изображения с именем 0.jpg и сохраняем результат в файл 0_out.jpg. Разумеется, имя вашего изображения может быть какое-угодно:
Шаг 8
Изображение можно посмотреть в папке проекта, либо вывести на экран в самом блокноте:
Результат
Наша нейросеть легко определила людей, а вот смартфон с вероятностью 53% посчитала стулом :)
Данная инструкция иллюстрирует основной алгоритм работы с большинством библиотек и теперь вы сможете сами находить интересующие вас нейросети в интернете (например, в телеграм-канале NeuralShit) и пользоваться ими.
Делитесь в комментариях сколько времени у вас ушло на всю работу. Если возникнут сложности, обязательно подскажу.