Compvision.ru: Программа распознавания лиц методом главных компонент - Compvision.ru

Перейти к содержимому

  • 5 страниц +
  • 1
  • 2
  • 3
  • Последняя »
  • Вы не можете создать новую тему
  • Вы не можете отвечать в этой теме

Программа распознавания лиц методом главных компонент

#1 Пользователь не на сайте   Smorodov 

  • Администратор
  • Группа: Главные администраторы
  • Сообщений: 2 882
  • Регистрация: 29-Апрель 09
  • Репутация: 367

Отправлено 13 Июнь 2009 - 11:30

Программа распознавания лиц методом главных компонент

Размещенное изображение

Архив здесь: Прикрепленный файл  PCA_recognition.rar (3,22Мб)
Количество загрузок: 984
1

#2 Пользователь не на сайте   Smorodov 

  • Администратор
  • Группа: Главные администраторы
  • Сообщений: 2 882
  • Регистрация: 29-Апрель 09
  • Репутация: 367

Отправлено 26 Ноябрь 2009 - 02:46

Нашел еще хорошую статью по этому поводу:

http://www.rusdoc.ru/articles/raspoznavani...igenface/18804/
0

#3 Пользователь не на сайте   4torta 

  • Новичок
  • Pip
  • Группа: Пользователи
  • Сообщений: 1
  • Регистрация: 23-Март 10
  • Репутация: 0

Отправлено 28 Апрель 2010 - 05:53

Здравствуйте. Не подскажите как правильно выбрать пороговое значение похожести, чтобы разделять лица на категории "лицо есть в базе" и "лица в базе нет" ? Читал, что это значение выбирается эмпирически, но вот механизма выбора не встретил. И еще интересно, влияет ли выбор классификатора (евклидово расстояние, Махалонобиса и т.п) на механизм выбора этого порогового значения?
0

#4 Пользователь не на сайте   Smorodov 

  • Администратор
  • Группа: Главные администраторы
  • Сообщений: 2 882
  • Регистрация: 29-Апрель 09
  • Репутация: 367

Отправлено 28 Апрель 2010 - 08:13

Просмотреть сообщение4torta (28.4.2010, 21:53):

Здравствуйте. Не подскажите как правильно выбрать пороговое значение похожести, чтобы разделять лица на категории "лицо есть в базе" и "лица в базе нет" ? Читал, что это значение выбирается эмпирически, но вот механизма выбора не встретил. И еще интересно, влияет ли выбор классификатора (евклидово расстояние, Махалонобиса и т.п) на механизм выбора этого порогового значения?


Есть немного по этой теме здесь (в конце темы):
http://www.compvisio...hp?showtopic=81
0

#5 Пользователь не на сайте   tybik 

  • Активный участник
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 71
  • Регистрация: 03-Март 10
  • Репутация: 0

Отправлено 12 Май 2010 - 11:47

Извините за глупый вопрос. Но просматривая программму я не понял почему Кол-во векторов базиса =кол-ву изображений -1. И еще вопрос можно ли подавать на обучение по несколько фотографий одного лица?
0

#6 Пользователь не на сайте   tybik 

  • Активный участник
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 71
  • Регистрация: 03-Март 10
  • Репутация: 0

Отправлено 12 Май 2010 - 11:52

И еще вопрос там в прогармме есть параметры
//-----------------------------------
//-----------------------------------
CvTermCriteria Tc;
Tc.type=CV_TERMCRIT_NUMBER | CV_TERMCRIT_EPS;
Tc.max_iter=100;
Tc.epsilon=0.001;

параметр Tc.max_iter=100; я так понимаю это максимальное кол-во главных компонент
а что значит параметр Tc.epsilon=0.001; ??
0

#7 Пользователь не на сайте   Smorodov 

  • Администратор
  • Группа: Главные администраторы
  • Сообщений: 2 882
  • Регистрация: 29-Апрель 09
  • Репутация: 367

Отправлено 12 Май 2010 - 12:51

Просмотреть сообщениеtybik (12.5.2010, 15:52):

И еще вопрос там в прогармме есть параметры
//-----------------------------------
//-----------------------------------
CvTermCriteria Tc;
Tc.type=CV_TERMCRIT_NUMBER | CV_TERMCRIT_EPS;
Tc.max_iter=100;
Tc.epsilon=0.001;

параметр Tc.max_iter=100; я так понимаю это максимальное кол-во главных компонент
а что значит параметр Tc.epsilon=0.001; ??

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

#8 Пользователь не на сайте   tybik 

  • Активный участник
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 71
  • Регистрация: 03-Март 10
  • Репутация: 0

Отправлено 13 Май 2010 - 07:14

можно ли подавать на обучение по несколько фотографий одного лица?
0

#9 Пользователь не на сайте   holmes 

  • Участник
  • PipPip
  • Группа: Пользователи
  • Сообщений: 13
  • Регистрация: 11-Январь 10
  • Репутация: 0

Отправлено 02 Июнь 2010 - 11:35

Можно. Вчера переписал на Delphi по-своему и тестировал, неплохо распознает в реал-тайм c вэб-камеры. Сорс на Delphi есть в топе cvCvtColor.
0

#10 Пользователь не на сайте   tipabot 

  • Участник
  • PipPip
  • Группа: Пользователи
  • Сообщений: 21
  • Регистрация: 12-Ноябрь 10
  • Репутация: 0

Отправлено 24 Ноябрь 2010 - 10:19

Тоже решил переделать в реал-тайм но есть проблемы
Первая проблема это нахождение лица в кадре, с текущим алгоритмом конечно можно определить что есть лицо или нет но как определить его расположение в кадре?
Вторая проблема это получение изображения лица и приведение его к стандарту (одинаковому масштабу лица)?

может ответы и очевидны но я пока в этом деле не мастер :(
Прошу помочь заранее спасибо
0

#11 Пользователь не на сайте   holmes 

  • Участник
  • PipPip
  • Группа: Пользователи
  • Сообщений: 13
  • Регистрация: 11-Январь 10
  • Репутация: 0

Отправлено 30 Ноябрь 2010 - 03:26

я делал так:
- нахожу при помощи каскадов Хаара самое крупное лицо
- корректирую размер полученного прямоугольника под соотношение сторон изображений в базе изображений
- ищу ближайшее совпадение

правда это все осталось на уровне теста, потому как точность меня не устроила. надо будет попробовать на hidden markov model.
завтра могу выложить получившийся код на дельфе.
0

#12 Пользователь не на сайте   tipabot 

  • Участник
  • PipPip
  • Группа: Пользователи
  • Сообщений: 21
  • Регистрация: 12-Ноябрь 10
  • Репутация: 0

Отправлено 30 Ноябрь 2010 - 04:00

holmes
Я как бы уже разобрался (примерный алгоритм лежит в башке) но еще сам не реализовал (времени нет) пока почитываю про opencv в целом и математику. Однако спасибо за отклик. Может в дальнейшем обращусь за советами.

Цитата

правда это все осталось на уровне теста, потому как точность меня не устроила.

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

#13 Пользователь не на сайте   holmes 

  • Участник
  • PipPip
  • Группа: Пользователи
  • Сообщений: 13
  • Регистрация: 11-Январь 10
  • Репутация: 0

Отправлено 01 Декабрь 2010 - 09:15

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

а точность действительно хромает. я в этих алгоритмах слабо разбираюсь, так что может чего и не докрутил.
по крайней мере он иногда меня с подругой путал (это уже ни в какие рамки ...)
0

#14 Пользователь не на сайте   alix999 

  • Новичок
  • Pip
  • Группа: Пользователи
  • Сообщений: 1
  • Регистрация: 01-Март 11
  • Репутация: 0

Отправлено 14 Март 2011 - 07:20

Добрый день, я в этом деле новичок. Хотелось бы узнать по примеру. Скачал готовый пример, библиотеки, прикрутил их и не могу скомпилировать.
Выдает: _fm_acos is not member of std
что мне делать?! я в с++ вообще не понимаю, хотя на object pascal пишу.
По учебе надо предоставить проогу - распознование лиц. В принципе можно брать и чужие, но знать надо как они работают.
p.s. может кто бы более опытнй мог сбросить *.ехе мне ?! чтоб ямог продемонстрировать и рассказать (по исходникам) принцип работы распознования по главным компонентам.
0

#15 Пользователь не на сайте   Smorodov 

  • Администратор
  • Группа: Главные администраторы
  • Сообщений: 2 882
  • Регистрация: 29-Апрель 09
  • Репутация: 367

Отправлено 14 Март 2011 - 06:43

В первом посте есть пример, и вроде с екзешником.
Чтобы работал надо скачать библиотеку версии 1.1pre1a там все дллки.
0

#16 Пользователь не на сайте   elected 

  • Новичок
  • Pip
  • Группа: Пользователи
  • Сообщений: 1
  • Регистрация: 20-Март 11
  • Репутация: 0

Отправлено 20 Март 2011 - 07:19

Просмотреть сообщениеSmorodov (14 Март 2011 - 06:43 ):

В первом посте есть пример, и вроде с екзешником.
Чтобы работал надо скачать библиотеку версии 1.1pre1a там все дллки.

Хотел узнать есть ли пример этой или похожей программы на Delphi ?
Очень нужно
0

#17 Пользователь не на сайте   I`m_beginner 

  • Активный участник
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 34
  • Регистрация: 03-Сентябрь 10
  • Репутация: 0
  • Gender:Male

Отправлено 26 Март 2011 - 02:27

Просмотреть сообщениеtybik (12 Май 2010 - 11:47 ):

Извините за глупый вопрос. Но просматривая программму я не понял почему Кол-во векторов базиса =кол-ву изображений -1. И еще вопрос можно ли подавать на обучение по несколько фотографий одного лица?

и все-таки вопрос остался открытым, почему же так numEvgen = numSample - 1;
почему кол-во векторов не равно количеству исходных изображений ?
0

#18 Пользователь не на сайте   nicolas_88 

  • Новичок
  • Pip
  • Группа: Пользователи
  • Сообщений: 5
  • Регистрация: 19-Ноябрь 10
  • Репутация: 0

Отправлено 22 Апрель 2011 - 10:28

Здравствуйте. Скачал исходник программы. При запуске в С++Builder возникает ошибка External exception C000001D. Помогите. Не могу понять в чем причина.
0

#19 Пользователь не на сайте   Smorodov 

  • Администратор
  • Группа: Главные администраторы
  • Сообщений: 2 882
  • Регистрация: 29-Апрель 09
  • Репутация: 367

Отправлено 23 Апрель 2011 - 03:18

Скорее всего не установлены msvcr:
http://www.microsoft...&displaylang=en
http://www.microsoft...0d-3802b2af5fc2
0

#20 Пользователь не на сайте   nicolas_88 

  • Новичок
  • Pip
  • Группа: Пользователи
  • Сообщений: 5
  • Регистрация: 19-Ноябрь 10
  • Репутация: 0

Отправлено 23 Апрель 2011 - 05:57

Просмотреть сообщениеSmorodov (23 Апрель 2011 - 03:18 ):

Скорее всего не установлены msvcr:
http://www.microsoft...&displaylang=en
http://www.microsoft...0d-3802b2af5fc2


Установил не помогает(((( Не знаю, что делать.
0

Сообщить об этой теме:


  • 5 страниц +
  • 1
  • 2
  • 3
  • Последняя »
  • Вы не можете создать новую тему
  • Вы не можете отвечать в этой теме

1 посетителей читают эту тему
0 пользователей, 1 гостей, 0 скрытых


shortrange-innocent
shortrange-innocent
shortrange-innocent
shortrange-innocent