Перейти к содержимому
Compvision.ru
Smorodov

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

Recommended Posts

Ребят! Всем огромнейшее спасибо за помощь и ответы на вопросы) Во многом благодаря этому форуму, сегодня защитил на отлично дипломный проект с темой "авторизации пользователя ИС с помощью веб-камеры") Отдельное спасибо главному админу :thumbsu: Надеюсь, форум будет развиваться и подчерпну еще много нового от сюда)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Мои поздравления!

:goodjob::goodjob::goodjob:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

JoQeR, поздравляю! скоро тоже защищаюсь, правда у меня диссертация :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Идентификация личности с использованием алгоритмов сравнения изображений.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
:D Мой модуль авторизации делает практически тоже самое)) Чтобы не более одного человека было и тд)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

а как борются обычно с тем, что у лиц различный масштаб? тупо ресайзом?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ну я так и делал, приведение к одному размеру. ^_^

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

во-первых, что считать лицом? -обычно берут прямоугольную рамку(которая детектируется например Хааром) в которую по мимо лица может попасть еще всякий мусор, причем мы получается привязаны к прямоугольной рамке и к пикселям, а не самому лицу\чертам лица.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

нашел большую базу (видимо база звёзд из интернета)

http://www.cs.columbia.edu/CAVE/databases/pubfig/

вот тут есть еще немного о PCA,LDA и т.д.

http://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/BRUNELLI/VisMac2008.pdf

для нормализации ярости используют Census transform

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Идентификация личности с использованием алгоритмов сравнения изображений.

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

А можешь выложить сам проект?:)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

можно сразу грузить в грей, конвертировать скорее надо т.к. полезной информации в 3-х каналах не так много(опять же цвет волос) или можно по 3-м каналам отдельно смотреть.

Если сразу грузить в сером, то зачем еще и конвертировать?

Почему цвет волос отнесен к бестолковой информации, когда по этом признаку можно проводить распознавание

Что можно вынести при отдельном рассмотрении каждого канала?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Если сразу грузить в сером, то зачем еще и конвертировать?

сразу грузить в грей = конвертировать в rgb2gray.

думаю что с 3-х каналов не так много доп. информации будет.

еще неплохо наверно пронормировать, вроде как whitening называется(на форуме было).

или нормализация яркости.

Почему цвет волос отнесен к бестолковой информации, когда по этом признаку можно проводить распознавание

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

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

Что можно вынести при отдельном рассмотрении каждого канала?

видимо ничего.

либо использовать грей, либо конкатенировать 3 канала в 1 вектор.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Можно ли восстановить нормальную цветовую гамму, если изначально на вход подается изображение в одном цвете (в зеленом, например)?

Поделиться сообщением


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

можно догадаться(для определенного типа объектов, т.е. какое то обучение), но в общем случае думаю нет.

но зачем?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
но зачем?

Портрет человека в одном цвете. Стало интересно, как вернуть первоначальные цвета

Поделиться сообщением


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

типа как раскрашивают старые ч/б фильмы (хотя там наверно вручную)

но теоретически можно использовать алгоритмы машинного обучения.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Имеется только одна фотография. Значит никак?

если не имеется до этого никакой обученной модели, то никак.

http://www.cs.huji.ac.il/~yweiss/Colorization/

вот кстати раскраска, но это не совсем то.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вот программа в полной комплектации:

attachicon.gifPCA_recognition.rar

На этой неделе раза 4 на разных компах запускал.

Здравствуйте. Переделываю под Embarcadero RAD Studio 2010. Выдает здесь ошибку

"void  APIDrawIpl(int x,int y,IplImage* _Grab,void *HANDLE)

{
HDC hMemDC,hDC;
hDC=GetDC(HANDLE);
hMemDC = CreateCompatibleDC(hDC);
HBITMAP Bitmap=CreateRGBBitmap(_Grab);
SelectObject(hMemDC,Bitmap);
BitBlt(hDC,x,y,_Grab->width,_Grab->height,hMemDC,0,0,SRCCOPY);
DeleteObject(Bitmap);
DeleteDC(hMemDC);
DeleteDC(hDC);

}"

[bCC32 Error] Unit2.cpp(85): E2034 Cannot convert 'void *' to 'HWND__ *'

  Full parser context
    Unit2.cpp(83): parsing: void APIDrawIpl(int,int,_IplImage *,void *)
[bCC32 Error] Unit2.cpp(85): E2342 Type mismatch in parameter 'hWnd' (wanted 'HWND__ *', got 'void *')
  Full parser context
    Unit2.cpp(83): parsing: void APIDrawIpl(int,int,_IplImage *,void *)

Помогите, если сможете

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте учётную запись или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать учётную запись

Зарегистрируйтесь для создания учётной записи. Это просто!

Зарегистрировать учётную запись

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу

×