2013-04-09 3 views
-1

Я пытаюсь создать код для распознавания лиц с помощью python. Теперь я могу поместить все мои образы базы данных в один двумерный массив, чтобы иметь возможность применить к ним анализ основных компонентов (PCA). Я нашел класс под названием PCA в matplotlib, но мне интересно, как его использовать для распознавания лиц.Как использовать класс PCA от matplotlib для распознавания лиц?

Вот описание указанного класса:

class matplotlib.mlab.PCA(a) 
compute the SVD of a and store data for PCA. Use project to project the data onto a reduced set of dimensions 

Inputs: 

a: a numobservations x numdims array 
Attrs: 

a a centered unit sigma version of input a 

numrows, numcols: the dimensions of a 

mu : a numdims array of means of a 

sigma : a numdims array of atandard deviation of a 

fracs : the proportion of variance of each of the principal components 

Wt : the weight vector for projecting a numdims point or array into PCA space 

Y : a projected into PCA space 

The factor loadings are in the Wt factor, ie the factor loadings for the 1st principal component are given by Wt[0] 

ответ

1

Они Ключевое понятие проецировании лица в более высокой размерности пространства, а затем измерить расстояние между ними в этом пространстве.

Я цитирую из этого документа (выглядит как присвоение для класса):

http://www.umiacs.umd.edu/~knkim/KG_VISA/PCA/FaceRecog_PCA_Kim.pdf

«PCA вычисляет базис пространства, которое представлено его подготовки векторов Эти базисные векторы,. фактически собственные векторы, вычисленные PCA, находятся в направлении наибольшей дисперсии векторов обучения. Как было сказано ранее, мы называем их собственными поверхностями.

Каждое собственное изображение может быть просмотрено как функция. Когда конкретная грань проецируется на пространство лица, его вектор в пространство лица описывают важность o f каждой из этих особенностей в лице. Лицо выражается в пространстве лица по его собственным коэффициентам (или весам). Мы можем обрабатывать большой вектор ввода, изображение лица, только принимая его маленький вектор веса в пространстве лица. Это означает, что мы можем восстановить исходную грань с некоторой ошибкой, так как размерность пространства изображения намного больше размерности пространства лица.

В этом отчете давайте рассмотрим только идентификацию лица. Каждое лицо в обучающем наборе преобразуется в пространство лица, а его компоненты хранятся в памяти. Лицевое пространство должно быть заполнено этими известными лицами. Линейка ввода задается системе, а затем она проецируется на пространство лица. Система вычисляет свое расстояние от всех сохраненных граней «

Есть несколько руководств доступны Вот мои любимые:..

+0

Хотя эти ссылки могут ответить на вопрос, лучше включить здесь основные части ответа и предоставить ссылку для справки. Ответные ссылки могут стать недействительными, если связанная страница изменится. – Matsemann