Вопрос

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

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

Я взглянул на Слабый, но, похоже, библиотека не очень пригодна для повторного использования в моих собственных приложениях.

Я доволен библиотекой на Python, Java, C ++, C или чем-то в этом роде.Лучше всего было бы, если бы его можно было запустить на компьютере с Windows, потому что в данный момент я полагаюсь на некоторый внешний код, доступный только для Windows.

Это было полезно?

Решение

Вот список коммерческих поставщиков, которые предоставляют готовые пакеты для распознавания лиц, работающие в Windows:

  1. Цибула - Информация об их SDK для распознавания лиц.Это компания, основанная профессором университета, и поэтому их веб-сайт выглядит непрофессионально.Там нет информации о ценах или демо-версии, которую вы могли бы загрузить.Вам нужно будет свяжитесь с ними для получения информации о ценах.

  2. НейроТехнология - Информация об их SDK для распознавания лиц.У этой компании есть и то, и другое предварительная информация о ценах так же , как и фактическая 30-дневная пробная версия их SDK.

  3. Распознавание образов в Питтсбурге - (Приобретено Google) Информация об их SDK для отслеживания и распознавания лиц.Демо-версии, которые они предоставляют, помогают вам оценить их технологию, но не SDSK.Вам нужно будет свяжитесь с ними для получения информации о ценах.

  4. Разумное Видение - Информация об их SDK - пакет.Их сайт позволяет вам легко получить ценовое предложение, и вы также можете заказать ознакомительный набор, который поможет вам оценить их технологию.

Другие советы

Обновить

OpenCV 2.4.2 теперь поставляется с совершенно новым резюме:: Распознаватель лиц.Пожалуйста, ознакомьтесь с очень подробной документацией по адресу:

Оригинальное Сообщение

Я освободил libfacerec ( библиотека ), современная библиотека распознавания лиц для OpenCV C ++ API (лицензия BSD).libfacerec не имеет дополнительных зависимостей и реализует метод собственных поверхностей, метод Fisherfaces и локальные гистограммы бинарных шаблонов.Части библиотеки будут включены в OpenCV 2.4.

Последняя редакция libfacerec доступна по адресу:

Библиотека была написана для OpenCV 2.3.1 с учетом предстоящего выпуска OpenCV 2.4, поэтому я не поддерживаю версии OpenCV более ранние, чем 2.3.1.Этот проект поставляется в виде проекта CMake с хорошо документированным API, также есть руководство по гендерной классификации.Вы можете ознакомиться с HTML-версией документации по адресу:

Если вы хотите понять, как работают эти алгоритмы, возможно, вам захочется прочитать мое Руководство по распознаванию лиц (включает примеры Python и GNU Octave / MATLAB).:

Существует также реализация алгоритмов на Python и GNU Octave / MATLAB в мой репозиторий на github.Оба проекта в фейсерек также включите несколько методов перекрестной проверки для оценки алгоритмов:

Соответствующими публикациями являются:

  • Терк М. и Пентленд А. Собственные поверхности для распознавания..Журнал когнитивной нейробиологии 3 (1991), 71-86.
  • Бельхумер, П.Н., Хеспанья Дж. и Кригман Д. Собственные поверхности противЛица Рыбаков:Распознавание с использованием линейной проекции, специфичной для конкретного класса..IEEE Transactions по анализу шаблонов и машинному интеллекту 19, 7 (1997), 711-720.
  • Ахонен Т., Хадид А. и Пиетикайнен М. Распознавание лиц с помощью локальных двоичных шаблонов..Компьютерное зрение - ECCV 2004 (2004), 469-481.

pam-аутентификация по лицу модуль PAM для аутентификации по лицу:но это потребовало бы некоторой работы, чтобы получить то, что вы хотите.Быстрый тест показал, что скорость распознавания не так хороша, как у VeriLook из NeuroTechnology.

Малик это еще одно программное обеспечение для распознавания лиц с открытым исходным кодом, которое использует вейвлет-дескрипторы Gabor.Но последнему обновлению исходного кода исполнилось 3 года.

С веб-сайта:"Malic - это программное обеспечение для распознавания лиц с открытым исходным кодом, которое использует вейвлет Габора.Это система распознавания лиц в реальном времени, основанная на Malib и CSU Face Identification Evaluation System (csuFaceIdEval).Использует библиотеку Malib для обработки изображений в реальном времени и часть csuFaceIdEval для распознавания лиц."

Кроме того, это могло бы представлять интерес:

габорбустинг:Научная программа, применяемая для распознавания лиц с помощью вейвлета Габора и алгоритма AdaBoost

Библиотека извлечения функций - ФЕЛиб относится к "Аннотация лица с помощью трансдуктивного дискриминанта Фишера ядра",

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

Кроме того, когда вы говорите "лучшая производительность", вы имеете в виду скорость или точность?С какой проблемой вы столкнулись?Насколько различны эти данные?Являются ли они в основном фронтальными или включают профили?

Если ваш проект снимается в кино или на телевидении, или во всем, что имеет сценарий, похоже, вы определенно хотите посмотреть на работу Марк Эверингем et эл..Программное обеспечение является Доступно, как и результаты по эпизоду с Баффи.

Вам следует взглянуть на http://libccv.org/

Он довольно новый, но предоставляет бесплатный высокоуровневый API с открытым исходным кодом для распознавания лиц.

(... и, осмелюсь сказать, чертовски потрясающе)

Редактировать:Стоит также отметить, что это одна из немногих библиотек, которая НЕ зависит от opencv, и просто для острастки, вот копия кода для распознавания лиц со страницы документации, чтобы дать вам представление о том, что для этого требуется:

#include <ccv.h>
int main(int argc, char** argv)
{
    ccv_dense_matrix_t* image = 0;
    ccv_read(argv[1], &image, CCV_IO_GRAY | CCV_IO_ANY_FILE);
    ccv_bbf_classifier_cascade_t* cascade = ccv_load_bbf_classifier_cascade(argv[2]);         ccv_bbf_params_t params = { .interval = 8, .min_neighbors = 2, .accurate = 1, .flags = 0, .size = ccv_size(24, 24) };
    ccv_array_t* faces = ccv_bbf_detect_objects(image, &cascade, 1, params);
    int i;
    for (i = 0; i < faces->rnum; i++)
    {
        ccv_comp_t* face = (ccv_comp_t*)ccv_array_get(faces, i);
        printf("%d %d %d %d\n", face->rect.x, face->rect.y, face->rect.width, face->rect.y);
    }
    ccv_array_free(faces);
    ccv_bbf_classifier_cascade_free(cascade);
    ccv_matrix_free(image);
    return 0;
} 

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

Мы используем OpenCV.Это имеет Лоты там тоже есть что-то, не связанное с распознаванием лиц, но, будьте уверены, оно действительно распознает лица.

Вы можете попробовать открыть библиотеку MVG, ее также можно использовать для нескольких интерфейсов.

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

Не совсем то, что вы ищете, но это может быть вам полезно. Распознавание лиц / Компьютерное зрение алгоритмы в MATLAB.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top