digiKam
Loading...
Searching...
No Matches
kd_nodesface.h
Go to the documentation of this file.
1/* ============================================================
2 *
3 * This file is a part of digiKam
4 *
5 * Date : 2019-06-08
6 * Description : Node of KD-Tree for vector space partitioning.
7 *
8 * SPDX-FileCopyrightText: 2020 by Nghia Duong <minhnghiaduong997 at gmail dot com>
9 * SPDX-FileCopyrightText: 2024 by Michael Miller <michael underscore miller at msn dot com>
10 *
11 * SPDX-License-Identifier: GPL-2.0-or-later
12 *
13 * ============================================================ */
14
15#pragma once
16
17// C++ includes
18
19#include <vector>
20
21// Qt includes
22
23#include <QVector>
24#include <QMap>
25
26// Local include
27
28#include "digikam_opencv.h"
29#include "kd_nodebase.h"
30
31namespace Digikam
32{
33
35{
36public:
37
38 explicit KDNodeSFace(const cv::Mat& nodePos,
39 const int identity,
40 int splitAxis,
41 int dimension);
42 // cv::Ptr<cv::FaceRecognizerSF> net);
43 virtual ~KDNodeSFace() override;
44
45protected:
46
47 KDNodeBase* createNode(const cv::Mat& nodePos,
48 const int identity,
49 int splitAxis,
50 int dimension) override;
51
53 const cv::Mat& queryPosition,
54 const cv::Mat& currentPosition,
55 float sqRange,
56 float cosThreshold,
57 int nbDimension
58 ) const override;
59
60private:
61
62/*
63 // Hide this constructor so we don't use it.
64
65 explicit KDNodeSFace(const cv::Mat& nodePos,
66 const int identity,
67 int splitAxis,
68 int dimension);
69*/
70 // Disable
71 KDNodeSFace(const KDNodeSFace&) = delete;
72 KDNodeSFace& operator=(const KDNodeSFace&) = delete;
73
74private:
75
76/*
77 cv::Ptr<cv::FaceRecognizerSF> m_net = nullptr;
78*/
79};
80
81} // namespace Digikam
Definition kd_nodebase.h:34
Definition kd_nodesface.h:35
virtual ~KDNodeSFace() override
Definition kd_nodesface.cpp:47
KDNodeBase::NodeCompareResult nodeCompare(const cv::Mat &queryPosition, const cv::Mat &currentPosition, float sqRange, float cosThreshold, int nbDimension) const override
Definition kd_nodesface.cpp:65
KDNodeBase * createNode(const cv::Mat &nodePos, const int identity, int splitAxis, int dimension) override
Definition kd_nodesface.cpp:51
Definition datefolderview.cpp:34
Definition kd_nodebase.h:82