Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Алгоритмы > Поиск лица на фотографии и сравнение его с базой |
Автор: Chilintano 15.3.2009, 23:39 |
Всем привет! У меня стоит задача определить, является ли человек на фотографии, полученной с веб-камеры, пользователем системы или нет, сравнив полученный снимок со снимком в БД. Для этого необходимо найти черты лица на фото, затем отметить основные антропометрические точки лица, но как найти лицо и отметить точки я не знаю. ![]() Похожая задача была тут http://forum.vingrad.ru/forum/topic-186484/unread-1/kw-%D1%80%D0%B0%D1%81%D0%BF%D0%BE%D0%B7%D0%BD%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BB%D0%B8%D1%86-%D1%81%D1%80%D0%B0%D0%B2%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5-%D1%84%D0%BE%D1%82%D0%BE/hl/%25D1%2580%25D0%25B0%25D1%2581%25D0%25BF%25D0%25BE%25D0%25B7%25D0%25BD%25D0%25B0%25D0%25B2%25D0%25B0%25D0%25BD%25D0%25B8%25D0%25B5+%25D0%25BB%25D0%25B8%25D1%2586%25D0%25B0/index.html В Интернете искал, искал много и долго. Есть много методов, но конкретно никто ничего не пишет. Все в общем, как будто сами кто писал не знают как это делается, либо жалко выложить свои труды. Подскажите, как мне определить на фото лицо и как выделить указанные точки!!! |
Автор: leneCaress 18.3.2009, 14:46 |
вообщем мысль первая - поиск зон где имеет смысл искать лица (во всяком случае в цифромыльницах) осуществляется по цвету (цвет лица штука довольно мало где еще встречающаяся в природе или в интерьере) мысль вторая - для распознавания некоторых опорных точек можно применять корреляционный метод. мысль третья - сначала находи глаза возможные положения глаз(корреляционным методом, например... хотя можно и нейросетью), потом находи точки которые лучше всего подходят под геометрическое положение глаз. потом - искажай картинку так чтобы глаза были в фиксированных позициях (и остальные части лица скорее всего тоже будут близко к некотрым стандартным положениям)... потом - тем же корреляционным методом находишь другие ключевые точки... а вообще - такие штуки - это типа ноу-хау =) совершенно нормально что их никто не описывает. |
Автор: Pavia 19.3.2009, 22:12 |
Плохо искал. Есть обзорная статья по методам там все расписанно довольно хорошо. Но если копать еще в глубь то можно найти еще больше методов. Там и твой рисунок. http://neuroface.narod.ru/files/preprint_neuroface.rar На сайте доступны также и исходники. http://neuroface.narod.ru/ Обычно используют skin effect. Пробуют на изоброжении найти цвета близкии к коже. Алгоритм много где описан и даже реализован в OpenCV. Есть работы которые ищут лица без привязки к цвету кожы. Дальше пробуют выдилять особенности. Можно заметить что самым популярным является алгоритм Виоллы Дженнис который легко найти в интернете. И распознование при помощи нейронной сети. Еще пополярным является разложение Габора и др. Я думаю без труда можно нарыть исходники на языке java |
Автор: azesmcar 19.3.2009, 22:25 |
http://www.codeproject.com/KB/audio-video/face_detection.aspx вот еще..определения месторасположения лица на C++ |
Автор: dereyly 22.3.2009, 02:09 | ||
Интересно, можете дать ссылку или латинское написание А распознавать чем только не пробовали - Нейронные сети: -- LVQ -- MLP -- Хопфилд -- Сверточные НС - Методы главных компонент и лица фишера - Марковские модели Так же некоторые использовали фильтры Габора, Фурье преобразование, представление Собеля Детектирование лиц я бы тоже советовал начать с выделения лица по цвету, что сильно сокращает размерность поиска для следующего алгоритма... |
Автор: Pavia 22.3.2009, 03:25 |
Вот ихняя статья. http://research.microsoft.com/en-us/um/people/viola/pubs/detect/violajones_ijcv.pdf |
Автор: dereyly 22.3.2009, 19:55 |
Спасибо, Оказывается я уже читал эту статью =), Любопытное использование Хааровских примитивов и алгоритма Адабуст. Вроде бы в OpenCV реализовали этот алгоритм, хоть переобучить его мне там неудалось, а с перепрограммированием зашился =( |
Автор: OldMauser 29.4.2009, 04:17 |
Chilintano, получилось у вас решить поставленную задачу? Я сам работаю над этой задачей, те же проблемы что и у вас.. |
Автор: k0s 28.5.2009, 20:38 |
2 Chilintano очень интересная тема, почему вы считаете что нужно найти именно антропометрические точки лица? 2 all да кстатия само распознавание с использованием НС считаю довольно простой задачей, больше интересно, какие алгоритмы предобработки вы используете? как справляетесь с -масштабированием -различиями в осчещенности -поворотами -различными иными исажениями и шумами и т.д. -да и как же всетаки выделить лицо на изображении ? |
Автор: Queuego 5.11.2022, 10:26 |
Модератор: Сообщение скрыто. |