digiKam
Loading...
Searching...
No Matches
facedetector.h
Go to the documentation of this file.
1/* ============================================================
2 *
3 * This file is a part of digiKam
4 *
5 * Date : 2010-09-02
6 * Description : A convenience class for a standalone face detector
7 *
8 * SPDX-FileCopyrightText: 2010 by Marcel Wiesweg <marcel dot wiesweg at gmx dot de>
9 * SPDX-FileCopyrightText: 2010 by Aditya Bhatt <adityabhatt1991 at gmail dot com>
10 * SPDX-FileCopyrightText: 2010-2024 by Gilles Caulier <caulier dot gilles at gmail dot com>
11 * SPDX-FileCopyrightText: 2024 by Michael Miller <michael underscore miller at msn dot com>
12 *
13 * SPDX-License-Identifier: GPL-2.0-or-later
14 *
15 * ============================================================ */
16
17#pragma once
18
19// Qt includes
20
21#include <QExplicitlySharedDataPointer>
22#include <QImage>
23#include <QVariant>
24
25// Local includes
26
27#include "digikam_export.h"
28#include "dimg.h"
29#include "facescansettings.h"
30
31namespace Digikam
32{
33
34class DIGIKAM_EXPORT FaceDetector
35{
36public:
37
49 FaceDetector(const FaceDetector& other);
51
52 QString backendIdentifier() const;
53
54 FaceDetector& operator=(const FaceDetector& other);
55
64 QList<QRectF> detectFaces(const QImage& image, const QSize& originalSize = QSize());
65
74 QList<QRectF> detectFaces(const DImg& image, const QSize& originalSize = QSize());
75
76 QList<QRectF> detectFaces(const QString& imagePath);
77
89 void setParameter(const QString& parameter, const QVariant& value);
90 void setParameters(const QVariantMap& parameters);
91 QVariantMap parameters() const;
92
97 int recommendedImageSize(const QSize& availableSize = QSize()) const;
98
99 static QRectF toRelativeRect(const QRect& absoluteRect, const QSize& size);
100 static QRect toAbsoluteRect(const QRectF& relativeRect, const QSize& size);
101 static QList<QRectF> toRelativeRects(const QList<QRect>& absoluteRects, const QSize& size);
102 static QList<QRect> toAbsoluteRects(const QList<QRectF>& relativeRects, const QSize& size);
103
104private:
105
106 class Private;
107 QExplicitlySharedDataPointer<Private> d;
108};
109
110} // namespace Digikam
Definition dimg.h:52
Definition facedetector.h:35
qulonglong value
Definition itemviewutilities.cpp:585
Definition datefolderview.cpp:34