Самосековое приложение, основанное на глубоком обучении для маркировки посещаемости студентов, признавая лица студента на видеозаписи наблюдения в классе.
Веб -приложение в Python для распознавания лиц студента в классе из видео наблюдения и отмечаю посещаемость в листе Excel. Алгоритмы глубокого обучения, такие как MTCNN и FACENET, используются для обнаружения и распознавания лица соответственно. И, используя фламбурку , было создано веб -приложение.
Следующие вещи должны быть правильно установлены на вашей машине.
Для установки пакетов используйте команду pip install .
Требуемое количество изображений (по крайней мере 10) для каждого студента следует собирать и хранить в отдельных папках. Папки должны быть названы в соответствующем названии студентов. Путь к папкам может быть Root_folder/attendance/facenet/dataset/raw/

Здесь используется алгоритм обнаружения лица MTCNN . Он принимает Root_folder/attendance/facenet/dataset/raw/ как вход и возвращает Root_folder/attendance/facenet/dataset/aligned/ как вывод. По сути, он обнаруживает лица, выравнивает область лица каждого изображения и хранит ее в согласованном каталоге.
Запустите следующую команду в командной строке.
$ python attendance/facenet/src/align/align_dataset_mtcnn.py
attendance/facenet/dataset/raw attendance/facenet/dataset/aligned
--image_size 160 --margin 32

Выходной набор данных с шага 2 подается в классификатор машины поддержки вектора , который генерирует 512 -размерный вектор для лиц каждого студента и обучает классификатора сгенерированным векторам.
Запустите следующие команды в командной строке.
$ python attendance/facenet/src/classifier.py TRAIN
attendance/facenet/dataset/aligned attendance/facenet/src/20180402-114759/
attendance/facenet/src/20180402-114759/my_classifier.pkl
--batch_size 1000 --min_nrof_images_per_class 10 --nrof_train_images_per_class 10 --use_split_datasetСоздайте пустую папку с именем отчетов . Это предназначено для хранения отчета о посещаемости Excel Sheets , который автоматически генерируется, когда алгоритм Facenet распознает студентов. Это реализовано с использованием модуля Python XLSXWRITER .
Теперь запустите веб -приложение от $ python run.py Он покажет адрес Localhost, такой как http://127.0.0.1:5000/ , который будет URL для веб -приложения.
Во время запуска приложения он перенаправляется на домашнюю страницу. На этой странице есть гиперссылка для добавления класса . В основном он просит пользователя ввести детали студента. Предоставленные данные хранятся в базе данных SQLite .
Примечание. Имя каждого введенного ученика должно быть таким же, как и название набора данных студента, созданного на шаге 1 .
Нажав гиперссылку Take , он перенаправляет вас на страницу, где пользователю необходимо загрузить изображение в классе.
Примечание: изображение должно быть в хорошем разрешении, а также содержит четкие лица всех студентов.
После загрузки изображения это требуется как -нибудь для обработки. Вы можете просмотреть данные об запуске фона в командной строке. Затем он создает лист Excel в папке отчетов, который содержит детали посещаемости.