Link to this section Summary

Types

Type that represents an Face.EigenFaceRecognizer struct.

create

create

Link to this section Types

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

Type that represents an Face.EigenFaceRecognizer struct.

• ref. reference()

The underlying erlang resource variable.

Link to this section Functions

@spec create() :: t() | {:error, String.t()}

create

Keyword Arguments
• num_components: int.

The number of components (read: Eigenfaces) kept for this Principal Component Analysis. As a hint: There's no rule how many components (read: Eigenfaces) should be kept for good reconstruction capabilities. It is based on your input data, so experiment with the number. Keeping 80 components should almost always be sufficient.

• threshold: double.

The threshold applied in the prediction.

Return
• retval: EigenFaceRecognizer

notes Notes:

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

• THE EIGENFACES 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 Model internal data:

• num_components see EigenFaceRecognizer::create.

• threshold see EigenFaceRecognizer::create.

• eigenvalues The eigenvalues for this Principal Component Analysis (ordered descending).

• eigenvectors The eigenvectors for this Principal Component Analysis (ordered by their eigenvalue).

• mean The sample mean calculated from the training data.

• projections The projections of the training data.

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

Python prototype (for reference only):

create([, num_components[, threshold]]) -> retval
@spec create([{atom(), term()}, ...] | nil) :: t() | {:error, String.t()}

create

Keyword Arguments
• num_components: int.

The number of components (read: Eigenfaces) kept for this Principal Component Analysis. As a hint: There's no rule how many components (read: Eigenfaces) should be kept for good reconstruction capabilities. It is based on your input data, so experiment with the number. Keeping 80 components should almost always be sufficient.

• threshold: double.

The threshold applied in the prediction.

Return
• retval: EigenFaceRecognizer

notes Notes:

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

• THE EIGENFACES 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 Model internal data:

• num_components see EigenFaceRecognizer::create.

• threshold see EigenFaceRecognizer::create.

• eigenvalues The eigenvalues for this Principal Component Analysis (ordered descending).

• eigenvectors The eigenvectors for this Principal Component Analysis (ordered by their eigenvalue).

• mean The sample mean calculated from the training data.

• projections The projections of the training data.

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

Python prototype (for reference only):

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