File indexing completed on 2025-01-19 03:57:55

0001 /* ============================================================
0002  *
0003  * This file is a part of digiKam project
0004  * https://www.digikam.org
0005  *
0006  * Date        : 2010-10-09
0007  * Description : Face scan settings
0008  *
0009  * SPDX-FileCopyrightText: 2010-2012 by Marcel Wiesweg <marcel dot wiesweg at gmx dot de>
0010  * SPDX-FileCopyrightText: 2012-2024 by Gilles Caulier <caulier dot gilles at gmail dot com>
0011  *
0012  * SPDX-License-Identifier: GPL-2.0-or-later
0013  *
0014  * ============================================================ */
0015 
0016 #ifndef DIGIKAM_FACE_SCAN_SETTINGS_H
0017 #define DIGIKAM_FACE_SCAN_SETTINGS_H
0018 
0019 // Local includes
0020 
0021 #include "album.h"
0022 #include "iteminfo.h"
0023 
0024 namespace Digikam
0025 {
0026 
0027 class FaceScanSettings
0028 {
0029 public:
0030 
0031     enum ScanTask
0032     {
0033         Detect,
0034         DetectAndRecognize,
0035         RecognizeMarkedFaces,
0036         RetrainAll,
0037         BenchmarkDetection,
0038         BenchmarkRecognition
0039     };
0040 
0041     /// For detect and recognize
0042     enum AlreadyScannedHandling
0043     {
0044         Skip,
0045         Merge,
0046         Rescan,
0047         ClearAll
0048     };
0049 
0050 public:
0051 
0052     explicit FaceScanSettings();
0053     ~FaceScanSettings();
0054 
0055 public:
0056 
0057     /// whole albums checked
0058     bool                                    wholeAlbums;
0059 
0060     /// Processing power
0061     bool                                    useFullCpu;
0062 
0063     /// Use Yolo V3 model
0064     bool                                    useYoloV3;
0065 
0066     /// Detection accuracy
0067     double                                  accuracy;
0068 
0069     /// Albums to scan
0070     AlbumList                               albums;
0071 
0072     /// Image infos to scan
0073     ItemInfoList                            infos;
0074 
0075     ScanTask                                task;
0076 
0077     AlreadyScannedHandling                  alreadyScannedHandling;
0078 };
0079 
0080 } // namespace Digikam
0081 
0082 #endif // DIGIKAM_FACE_SCAN_SETTINGS_H