digiKam Developer Documentation: Digikam::FaceDetector Class Reference

| digiKam Developer Documentation Professional Photo Management with the Power of Open Source

Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | List of all members
Digikam::FaceDetector Class Reference

## Public Member Functions
| FaceDetector ()
| Provides face detection, that means the process of selecting those regions of a full image which contain face.
| FaceDetector (const FaceDetector &other)
QString | backendIdentifier () const
QList< QRectF > | detectFaces (const DImg &image, const QSize &originalSize=QSize())
| Scan an image for faces.
QList< QRectF > | detectFaces (const QImage &image, const QSize &originalSize=QSize())
| Scan an image for faces.
QList< QRectF > | detectFaces (const QString &imagePath)
FaceDetector & | operator= (const FaceDetector &other)
QVariantMap | parameters () const
int | recommendedImageSize (const QSize &availableSize=QSize()) const
void | setParameter (const QString &parameter, const QVariant &value)
| Tunes backend parameters.
void | setParameters (const QVariantMap &parameters)

## Static Public Member Functions
static QRect | toAbsoluteRect (const QRectF &relativeRect, const QSize &size)
static QList< QRect > | toAbsoluteRects (const QList< QRectF > &relativeRects, const QSize &size)
static QRectF | toRelativeRect (const QRect &absoluteRect, const QSize &size)
static QList< QRectF > | toRelativeRects (const QList< QRect > &absoluteRects, const QSize &size)

## Constructor & Destructor Documentation

## ◆ FaceDetector()

Digikam::FaceDetector::FaceDetector | ( |  | ) |

This class provides shallow copying The class is fully reentrant (a single object and its copies are not thread-safe). Deferred creation is guaranteed, that means creation of a FaceDetector object is cheap, the expensive creation of the detection backend is performed when detectFaces is called for the first time.

## Member Function Documentation

## ◆ detectFaces() [1/2]

QList< QRectF > Digikam::FaceDetector::detectFaces | ( | const DImg & | image,
|  | const QSize & | originalSize = `QSize()`
| ) |  |

Return a list with regions possibly containing faces. If the image has been downscaled anywhere in the process, provide the original size of the image as this may be of importance in the detection process.

Returns
  Found faces are returned in relative coordinates.

## ◆ detectFaces() [2/2]

QList< QRectF > Digikam::FaceDetector::detectFaces | ( | const QImage & | image,
|  | const QSize & | originalSize = `QSize()`
| ) |  |

Return a list with regions possibly containing faces. If the image has been downscaled anywhere in the process, provide the original size of the image as this may be of importance in the detection process.

Returns
  Found faces are returned in relative coordinates.

## ◆ recommendedImageSize()

int Digikam::FaceDetector::recommendedImageSize | ( | const QSize & | availableSize = `QSize()` | ) | const

Returns
  the recommended size if you want to scale images for detection. Larger images can be passed, but may be downscaled.

## ◆ setParameter()

void Digikam::FaceDetector::setParameter | ( | const QString & | parameter,
|  | const QVariant & | value
| ) |  |

Available parameters:

"speed" vs. "accuracy", 0..1, float "sensitivity" vs. "specificity", 0..1, float.

For both pairs: a = 1-b, you can set either. The first pair changes the ROC curve in a trade for computing time. The second pair moves on a given ROC curve towards more false positives, or more missed faces.