# View Source Evision.Face.FisherFaceRecognizer (Evision v0.2.3)

# Summary

# Types

@type t() :: %Evision.Face.FisherFaceRecognizer{ref: reference()}

Type that represents an `Face.FisherFaceRecognizer`

struct.

**ref**.`reference()`

The underlying erlang resource variable.

# Functions

create

##### Keyword Arguments

**num_components**:`integer()`

.The number of components (read: Fisherfaces) kept for this Linear Discriminant Analysis with the Fisherfaces criterion. It's useful to keep all components, that means the number of your classes c (read: subjects, persons you want to recognize). If you leave this at the default (0) or set it to a value less-equal 0 or greater (c-1), it will be set to the correct number (c-1) automatically.

**threshold**:`double`

.The threshold applied in the prediction. If the distance to the nearest neighbor is larger than the threshold, this method returns -1.

##### Return

**retval**:`FisherFaceRecognizer`

### Notes:

Training and prediction must be done on grayscale images, use cvtColor to convert between the color spaces.

**THE FISHERFACES METHOD MAKES THE ASSUMPTION, THAT THE TRAINING AND TEST IMAGES ARE OF EQUAL SIZE.**(caps-lock, because I got so many mails asking for this). You have to make sure your input data has the correct shape, else a meaningful exception is thrown. Use resize to resize the images.This model does not support updating.

### Model internal data:

num_components see FisherFaceRecognizer::create.

threshold see FisherFaceRecognizer::create.

eigenvalues The eigenvalues for this Linear Discriminant Analysis (ordered descending).

eigenvectors The eigenvectors for this Linear Discriminant Analysis (ordered by their eigenvalue).

mean The sample mean calculated from the training data.

projections The projections of the training data.

labels The labels corresponding to the projections.

Python prototype (for reference only):

`create([, num_components[, threshold]]) -> retval`

create

##### Keyword Arguments

**num_components**:`integer()`

.The number of components (read: Fisherfaces) kept for this Linear Discriminant Analysis with the Fisherfaces criterion. It's useful to keep all components, that means the number of your classes c (read: subjects, persons you want to recognize). If you leave this at the default (0) or set it to a value less-equal 0 or greater (c-1), it will be set to the correct number (c-1) automatically.

**threshold**:`double`

.The threshold applied in the prediction. If the distance to the nearest neighbor is larger than the threshold, this method returns -1.

##### Return

**retval**:`FisherFaceRecognizer`

### Notes:

Training and prediction must be done on grayscale images, use cvtColor to convert between the color spaces.

**THE FISHERFACES METHOD MAKES THE ASSUMPTION, THAT THE TRAINING AND TEST IMAGES ARE OF EQUAL SIZE.**(caps-lock, because I got so many mails asking for this). You have to make sure your input data has the correct shape, else a meaningful exception is thrown. Use resize to resize the images.This model does not support updating.

### Model internal data:

num_components see FisherFaceRecognizer::create.

threshold see FisherFaceRecognizer::create.

eigenvalues The eigenvalues for this Linear Discriminant Analysis (ordered descending).

eigenvectors The eigenvectors for this Linear Discriminant Analysis (ordered by their eigenvalue).

mean The sample mean calculated from the training data.

projections The projections of the training data.

labels The labels corresponding to the projections.

Python prototype (for reference only):

`create([, num_components[, threshold]]) -> retval`