Библиотека распознавания лиц [закрыто]



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



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



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



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

679   11  

11 ответов:

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

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

  2. нейротехнологий - информацию об их распознавание лиц SDK. Эта компания имеет оба предварительная информация о ценах и фактическая 30-дневная пробная версия их SDK.

  3. Pittsburgh Pattern Recognition - (приобретенный Google) информацию об их Facial Tracking and Recognition SDK. Демо, что они предоставьте помощь в оценке их технологии, но не их SDSK. Вам нужно будет связаться с ними для получения информации о ценах.

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

обновление

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

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

я выпустил libfacerec, современная библиотека распознавания лиц для OpenCV C++ API (лицензия BSD). libfacerec не имеет дополнительных зависимостей и реализует метод собственных поверхностей, метод Фишерфейсов и гистограммы локальных бинарных паттернов. Части библиотеки будут включены в 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. Оба проекта в facerec также включают в себя несколько методов перекрестной проверки для оценки алгоритмов:

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

  • Turk, M., and Pentland, A. собственные поверхности для распознавания.. Журнал когнитивной нейробиологии 3 (1991), 71-86.
  • Belhumeur, P. N., Hespanha, J., and Kriegman, D. собственные поверхности против Fisherfaces: распознавание с использованием класса конкретной линейной проекции.. IEEE Transactions on Pattern Analysis and Machine Intelligence 19, 7 (1997), 711-720.
  • Ахонен, т., Хадид, А. и Пиетикайнен, М. лицо Распознавание с помощью локальных бинарных паттернов.. Компьютерное зрение - ECCV 2004 (2004), 469-481.

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

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

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

далее это может быть интересно:

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

Библиотека Извлечения Функций -FELib относится к "лицо Аннотация ядра Трансдуктивная Фишера, Дискриминантный,"

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

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

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

вы должны смотреть на http://libccv.org/

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

(...и, смею сказать, довольно чертовски удивительно)

Edit: стоит также отметить, что это одна из немногих библиотек, которая не зависит от 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, он может быть использован для нескольких интерфейсов тоже.

следующим шагом будет FisherFaces. Попробуйте и проверьте, работают ли они на вас. здесь хорошее сравнение.

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

Comments

    Ничего не найдено.