Сяобай должен видеть! Три вещи, которые вам нужно знать о распознавании лиц!

алгоритм
Сяобай должен видеть! Три вещи, которые вам нужно знать о распознавании лиц!

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

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

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

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

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

Он используется для обнаружения лиц в режиме реального времени для наблюдения и отслеживания людей или объектов. Он широко используется в камерах для идентификации многократного появления в кадрах камер Ex-Mobile и цифровых зеркальных фотокамер. Facebook также использует алгоритмы распознавания лиц для обнаружения и идентификации лиц на изображениях.

Метод обнаружения лица:

Ян, Кригман и Ахуджа предложили классификацию методов обнаружения лиц. Эти методы делятся на четыре категории, а алгоритмы обнаружения лиц могут принадлежать к двум или более группам. Эти категории следующие:

1. На основе знаний:

Методы, основанные на знаниях, основаны на наборах правил, которые обнаруживают лица на основе человеческих знаний. Ex- Лицо должно иметь нос, глаза и рот на определенном расстоянии и в определенном положении друг от друга. Большой проблемой этих методов является сложность установления подходящего набора правил. Если правила слишком общие или слишком подробные, может быть много ложных срабатываний. Одного этого метода недостаточно, чтобы найти много лиц на нескольких изображениях.

2. На основе функции:

Методы, основанные на признаках, находят лица, извлекая их структурные особенности. Сначала он обучается как классификатор, а затем используется для различения лицевых и нелицевых областей. Идея состоит в том, чтобы преодолеть ограничения нашего инстинктивного знания лиц. Этот метод разделен на несколько шагов, и даже с большим количеством фотографий лиц они сообщают об успехе в 94%.

3. Соответствие шаблону:

Методы сопоставления шаблонов используют предопределенные или параметризованные шаблоны лиц для поиска или обнаружения лиц посредством корреляции между шаблонами и входными изображениями. Например, человеческое лицо можно разделить на глаза, контуры лица, нос и рот. Кроме того, модель лица может быть построена из ребер только с использованием методов обнаружения ребер. Этот метод прост в реализации, но недостаточен для распознавания лиц. Однако для решения этих проблем были предложены деформируемые шаблоны.

4. По внешнему виду:

Методы, основанные на внешнем виде, полагаются на набор делегированных обучающих изображений лиц для поиска моделей лиц. Методы, основанные на внешнем виде, превосходят другие методы производительности. Как правило, методы, основанные на внешнем виде, основаны на методах статистического анализа и машинного обучения для поиска соответствующих особенностей изображений лиц. Этот метод также используется для выделения признаков распознавания лиц.

Модели, основанные на внешнем виде, далее делятся на подметоды обнаружения лиц следующим образом.

4.1. На основе собственных граней:

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

4.2. На основе распределения:

Алгоритмы, такие как PCA и дискриминант Фишера, могут использоваться для определения подпространств, представляющих лицевые узоры. Существует обученный классификатор, который правильно идентифицирует экземпляры целевого класса шаблонов из шаблонов фонового изображения.

4.3. Нейронные сети:

Нейронные сети успешно решили многие проблемы обнаружения, такие как обнаружение объектов, обнаружение лиц, обнаружение эмоций и распознавание лиц.

4.4. Машина опорных векторов:

SVM — это линейные классификаторы, которые максимизируют разницу между гиперплоскостью решений и примерами в обучающем наборе. Осуна и др. Сначала примените этот классификатор к распознаванию лиц.

4.5 Разреженная сеть веялок:

Они определяют разреженную сеть, состоящую из двух линейных единиц или целевых узлов, один из которых представляет лицевые паттерны, а другой — нелицевые паттерны. Это менее трудоемко и эффективно.

4.6 Наивный байесовский классификатор:

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

4.7 Скрытая марковская модель:

Штаты модели являются функциями лица, обычно описываемые как Pixel Plips. HMMS часто используются в сочетании с другими методами для создания алгоритмов обнаружения.

4.8 Информационно-теоретические подходы:

Марковские случайные поля (MRF) можно использовать для паттернов лица и связанных с ними особенностей. Марковские процессы максимизируют различие между классами, используя дивергенцию Кульбака-Лейблера. Таким образом, этот метод можно использовать для распознавания лиц.

4.9 Индуктивное обучение:

Этот метод использовался для обнаружения человеческих лиц. Для этой цели используются такие алгоритмы, как C4.5 Куинлана или FIND-S Митчелла.

Как работает распознавание лиц:

Существует много методов обнаружения лиц, и с помощью этих методов мы можем идентифицировать лица более точно. Эти методы имеют почти идентичные процедуры обнаружения лиц, такие как OpenCV, Neural Networks, Matlab и т. д. Обнаружение лиц работает путем обнаружения нескольких лиц на изображении. Здесь мы используем OpenCV для обнаружения лиц, и есть несколько шагов для операции обнаружения лиц, а именно:

Сначала импортируйте изображение, указав его местоположение. Затем преобразуйте изображение из RGB в оттенки серого, так как в оттенках серого легко распознавать лица.

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

Следующим шагом является использование алгоритма признаков Хаара, предложенного Вуаля и Джонсом для обнаружения лиц. Этот алгоритм используется для поиска местоположения лица в кадре или изображении. Все человеческие лица имеют некоторые общие свойства человеческих лиц, например, область вокруг глаз темнее, чем у его соседей, а область носа ярче, чем область вокруг глаз.

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

Следующим шагом является указание координат x, y, w, h, это формирует прямоугольную рамку на изображении, чтобы показать местоположение лица или, можно сказать, интересующую область на изображении. После этого он может сделать прямоугольную рамку в интересующей области, где обнаружено лицо. Существует множество других методов обнаружения, используемых вместе для обнаружения, таких как обнаружение улыбки, обнаружение глаз, обнаружение моргания и т. д.

Как запустить детектор лица (веб-камеру) в реальном времени:

Требования для запуска кода — Python, OpenCV, веб-камера, Numpy.

#import libraries
import cv2
import numpy as np
#import classifier for face and eye detection
face_classifier = cv2.CascadeClassifier(‘Haarcascades/haarcascade_frontalface_default.xml’)
# Import Classifier for Face and Eye Detection
face_classifier = cv2.CascadeClassifier(‘Haarcascades/haarcascade_frontalface_default.xml’)
eye_classifier = cv2.CascadeClassifier (‘Haarcascades/haarcascade_eye.xml’)
def face_detector (img, size=0.5):
# Convert Image to Grayscale
gray = cv2.cvtColor (img, cv2.COLOR_BGR2GRAY)
faces = face_classifier.detectMultiScale (gray, 1.3, 5)
If faces is ():
return img
# Given coordinates to detect face and eyes location from ROI
for (x, y, w, h) in faces
x = x — 100
w = w + 100
y = y — 100
h = h + 100
cv2.rectangle (img, (x, y), (x+w, y+h), (255, 0, 0), 2)
roi_gray = gray[y: y+h, x: x+w]
roi_color = img[y: y+h, x: x+w]
eyes = eye_classifier.detectMultiScale (roi_gray)
for (ex, ey, ew, eh) in eyes:
cv2.rectangle(roi_color,(ex,ey),(ex+ew,ey+eh),(0,0,255),2)
roi_color = cv2.flip (roi_color, 1)
return roi_color
# Webcam setup for Face Detection
cap = cv2.VideoCapture (0)
while True:
ret, frame = cap.read ()
cv2.imshow (‘Our Face Extractor’, face_detector (frame))
if cv2.waitKey (1) == 13: #13 is the Enter Key
break
# When everything done, release the capture
cap.release ()
cv2.destroyAllWindows ()

В последние месяцы мы обновили множество связанных процессов исследований и разработок в области анализа пешеходов.Для основных платформ TSINGSEE Qingxi Video мы будем постепенно интегрировать функции интеллектуального анализа в ближайшем будущем, чтобы сформировать новую платформу интеллектуального анализа.Добро пожаловать все Следите за обновлениями.