Обнаружение и сравнение лиц

Я занимаюсь небольшим исследованием обнаружения и сравнения лиц для моей статьи. В настоящее время я использую быстрое распознавание лиц на основе хара, как функции, основанные на каскаде OpenCV (я буду осуществлять обучение позже). Следующий шаг - сравнение лиц. Есть ли хорошо известные алгоритмы? Это будет здорово, если есть некоторые коды С#, объясняющие их или некоторые dll, которые их реализуют.

Ответ 1

Собственные функции

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

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

Fisherfaces and Eigenfaces

Если ваши лица не выровнены, я рекомендую прочитать следующую статью:

Поддержка векторных машин

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

Две глобальные системы распознают лица путем классификации одного вектор-функции состоящий из серых значений все лицо изображение. В первом глобальном мы подготовили единый SVM классификатор для каждого человека в база данных. Вторая система состоит наборов специфических для SVM-объектов классификаторов и включает кластеризацию во время обучения.

Ответ 2

Я написал учебную и демонстрационную программу со свободным исходным кодом для выполнения распознавания лиц и распознавания лиц в реальном времени с веб-камеры (также в OpenCV):

http://www.shervinemami.info/faceRecognition.html

Ответ 3

Существует система оценки Beveridge. Они реализовали три алгоритма распознавания лиц с разными метриками. Алгоритмы реализованы для поэтому их сложно будет использовать для собственных программ.

Некоторые Java API и общие ссылки можно найти в Question в распознавании лиц.