digiKam
Loading...
Searching...
No Matches
Digikam::OpenCVDNNFaceRecognizer Class Reference

#include <opencvdnnfacerecognizer.h>

Classes

class  Private
 

Public Types

enum  Classifier { SVM = 0 , OpenCV_KNN , Tree , DB }
 

Public Member Functions

void clearTraining (const QList< int > &idsToClear)
 
 OpenCVDNNFaceRecognizer (Classifier method, FaceScanSettings::FaceRecognitionModel recModel)
 OpenCVDNNFaceRecognizer:Master class to control entire recognition using OpenFace algorithm.
 
QVector< int > recognize (const QList< QPair< QImage *, QString > > &inputImages)
 
int recognize (const QPair< QImage *, QString > &inputImage)
 
bool registerTrainingData (const cv::Mat &preprocessedImage, int label)
 register training data for unit test.
 
bool remove (const QString &hash)
 
void setNbNeighbors (int k)
 
void setThreshold (int threshold)
 
void train (const QList< QPair< QImage *, QString > > &images, const int label)
 
int verifyTestData (const cv::Mat &preprocessedImage)
 predict label of test data for unit test.
 
 ~OpenCVDNNFaceRecognizer ()
 

Static Public Member Functions

static cv::Mat prepareForRecognition (const cv::Mat &cvinputImage)
 
static cv::Mat prepareForRecognition (QImage &inputImage)
 

Member Enumeration Documentation

◆ Classifier

Enumerator
SVM 

Support Vector Machines (https://docs.opencv.org/4.x/dc/dd6/ml_intro.html#ml_intro_svm)

OpenCV_KNN 

K-Nearest Neighbors (https://docs.opencv.org/4.x/dc/dd6/ml_intro.html#ml_intro_knn)

Tree 

K-Nearest Neighbors Tree (https://en.wikipedia.org/wiki/K-nearest_neighbors_algorithm)

DB 

Closest Neighbors Tree from the database.

Constructor & Destructor Documentation

◆ OpenCVDNNFaceRecognizer()

Digikam::OpenCVDNNFaceRecognizer::OpenCVDNNFaceRecognizer ( Classifier  method,
FaceScanSettings::FaceRecognitionModel  recModel 
)
explicit

OpenCVDNNFaceRecognizer:Master class to control entire recognition using OpenFace algorithm.

References Digikam::OpenCVDNNFaceRecognizer::Private::ref.

◆ ~OpenCVDNNFaceRecognizer()

Digikam::OpenCVDNNFaceRecognizer::~OpenCVDNNFaceRecognizer ( )

Member Function Documentation

◆ clearTraining()

void Digikam::OpenCVDNNFaceRecognizer::clearTraining ( const QList< int > &  idsToClear)

Clear specified trained data.

References Digikam::FaceDb::clearDNNTraining(), and Digikam::FaceDbAccess::db().

◆ prepareForRecognition() [1/2]

cv::Mat Digikam::OpenCVDNNFaceRecognizer::prepareForRecognition ( const cv::Mat &  cvinputImage)
static

Returns a cvMat created from the cvinputImage, optimized for recognition.

◆ prepareForRecognition() [2/2]

cv::Mat Digikam::OpenCVDNNFaceRecognizer::prepareForRecognition ( QImage &  inputImage)
static

◆ recognize() [1/2]

QVector< int > Digikam::OpenCVDNNFaceRecognizer::recognize ( const QList< QPair< QImage *, QString > > &  inputImages)

Try to recognize a list of given images. Returns a list of identity ids. If an identity cannot be recognized, returns -1.

◆ recognize() [2/2]

int Digikam::OpenCVDNNFaceRecognizer::recognize ( const QPair< QImage *, QString > &  inputImage)

◆ registerTrainingData()

bool Digikam::OpenCVDNNFaceRecognizer::registerTrainingData ( const cv::Mat &  preprocessedImage,
int  label 
)

◆ remove()

bool Digikam::OpenCVDNNFaceRecognizer::remove ( const QString &  hash)

◆ setNbNeighbors()

void Digikam::OpenCVDNNFaceRecognizer::setNbNeighbors ( int  k)

Set K parameter of K-Nearest neighbors algorithm.

References Digikam::OpenCVDNNFaceRecognizer::Private::kNeighbors.

Referenced by Digikam::FacialRecognitionWrapper::Private::applyParameters().

◆ setThreshold()

void Digikam::OpenCVDNNFaceRecognizer::setThreshold ( int  threshold)

◆ train()

void Digikam::OpenCVDNNFaceRecognizer::train ( const QList< QPair< QImage *, QString > > &  images,
const int  label 
)

◆ verifyTestData()

int Digikam::OpenCVDNNFaceRecognizer::verifyTestData ( const cv::Mat &  preprocessedImage)

The documentation for this class was generated from the following files: