Распознать лицо и назвать имя человека

Проект распознавания лица и поиск по базе.

Цель: К камере приближается объект (лицо человека). Обнаруживаем лицо. Сверяем с нашей базой лиц. Если находим то выдаём данные. Если не находим задаём вопрос, и после этого записываем в БД.


Ответы (1 шт):

Автор решения: KoVadim

Ок, за пол бюджета, покажу как сделать.

Вначале идем на сайт https://towardsdatascience.com/face-detection-in-2-minutes-using-opencv-python-90f89d7c0f81 и смотрим простой пример на python+open cv

import cv2

# Load the cascade
face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
# Read the input image
img = cv2.imread('test.jpg')
# Convert into grayscale
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# Detect faces
faces = face_cascade.detectMultiScale(gray, 1.1, 4)
# Draw rectangle around the faces
for (x, y, w, h) in faces:
    cv2.rectangle(img, (x, y), (x+w, y+h), (255, 0, 0), 2)
# Display the output
cv2.imshow('img', img)
cv2.waitKey()

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

Потом разбираемся, как к этому прикрутить Вашу камеру. Может камера умеет по ftp сама картинки заливать, а может нужно с нее стрим брать. Тут как минимум нужно три-четыре архитектора, что бы это спланировали. На этом сайте такие специалисты есть, посмотрите внимательно. Но стоят дорого.

Потом по [ссылке]( Вначале идем на сайт https://towardsdatascience.com/face-detection-in-2-minutes-using-opencv-python-90f89d7c0f81) смотрим, как определить, а что если на фотке есть ещё люди. Там же сразу стает понятно, как с камеры тянуть видео или с файла.

Ок, уже с камеры тянем, прямоугольники рисуем. Супер, можно подписать ещё "фейс 1", "фейс 2" и думать, что дальше.

А дальше, наверно, захочется как в детстве, дорисовать усы на эти фотки. Но для этого надо знать положение рта, носа, глаз и немного школьной тригонометрии. И, конечно же, посмотреть на этот пример https://www.pyimagesearch.com/2017/04/10/detect-eyes-nose-lips-jaw-dlib-opencv-python/

Теперь, когда уже лицо изрисовано (можно и ниндзя сделать!), а начальство довольно прогрессом (главное этот ответ не показывать!), можно немного расслабиться, а потом открываем офф документацию, школьный учебник по алгебре (что бы значка ∑ не испугаться) и изучаем эту статью

А потом уже прикручиваем базу, редакторы и людей, что бы подписать правильных. И связываем с реальной СКУД, что бы пропускало кого нужно и как нужно. Но это уже отдельный бюджет и отдельный вопрос на SO.

П.С.

Перечитал вопрос внимательно

К камере приближается объект (лицо человека).

представил себе эту картину - само лицо приближается к камере...

→ Ссылка