digiKam Developer Documentation
Professional Photo Management with the Power of Open Source
Loading...
Searching...
No Matches
Digikam::FacePipelineEdit Class Reference
+ Inheritance diagram for Digikam::FacePipelineEdit:

Public Member Functions

FaceTagsIface addManually (const ItemInfo &info, const DImg &image, const TagRegion &region, bool retrain=true)
 
FaceTagsIface confirmFace (const ItemInfo &info, const FaceTagsIface &face, const TagRegion &region, int tagId, bool retrain=true)
 
FaceTagsIface deleteRejectedFaceTagList (const FaceTagsIface &face)
 Delete all saved rejected face tags for the given face.
 
QList< FaceTagsIfacedeleteRejectedFaceTagLists (const ItemInfo &info)
 Delete all saved rejected face tag lists for faces in the given image.
 
FaceTagsIface editRegion (const ItemInfo &info, const FaceTagsIface &face, const TagRegion &region, int tagId=-1, bool retrain=true)
 
FaceTagsIface editTag (const ItemInfo &info, const FaceTagsIface &face, int newTagId)
 
void removeAllFaces (const ItemInfo &info)
 
void removeFace (const ItemInfo &info, const FaceTagsIface &face)
 
bool start () override
 
- Public Member Functions inherited from Digikam::FacePipelineBase
 FacePipelineBase (const FaceScanSettings &_settings)
 
- Public Member Functions inherited from Digikam::MLPipelineFoundation
virtual void cancel ()
 
bool hasFinished () const
 

Static Public Member Functions

static FacePipelineEditinstance ()
 

Protected Member Functions

void addMoreWorkers () override
 
bool classifier () override
 
bool extractor () override
 
bool finder () override
 
FaceTagsIface getRejectedFaceTagList (const FaceTagsIface &face) const
 returns a copy of FaceTagsIface object with the face tags that were rejected
 
bool loader () override
 
bool trainer () override
 
bool writer () override
 
- Protected Member Functions inherited from Digikam::FacePipelineBase
bool commonFaceThumbnailExtractor (const QString &pipelineName, QThread::Priority stagePriority, MLPipelineFoundation::MLPipelineStage thisStage, MLPipelineFoundation::MLPipelineStage nextStage, bool trainingQualityCheck=false)
 
bool commonFaceThumbnailLoader (const QString &pipelineName, QThread::Priority stagePriority, MLPipelineFoundation::MLPipelineStage thisStage, MLPipelineFoundation::MLPipelineStage nextStage)
 
double detectBlur (const cv::Mat &cvGrayImage) const
 
double detectNoise1 (const cv::Mat &cvGrayImage) const
 
double detectNoise2 (const cv::Mat &cvGrayImage) const
 
bool enqueue (MLPipelineQueue *thisQueue, MLPipelinePackageFoundation *package) override
 
bool useForTraining (const QSize &faceSize, const cv::Mat &image)
 
- Protected Member Functions inherited from Digikam::MLPipelineFoundation
bool addWorker (const MLPipelineStage &stage)
 
bool checkMoreWorkers (int totalItemCount, int currentItemCount, bool useFullCpu)
 
void clearAllQueues ()
 
virtual MLPipelinePackageFoundationdequeue (MLPipelineQueue *thisQueue)
 
void emitSignalUpdateItemCount (const qlonglong itemCount)
 Helper methods to perform signal emitting through the MLPIPELINE_FINDER_END mocro with the moc processor.
 
virtual void notify (MLPipelineNotification notification, const QString &_name, const QString &_path, const QString &_displayData, int _processed, const DImg &_thumbnail)
 
virtual void notify (MLPipelineNotification notification, const QString &_name, const QString &_path, const QString &_displayData, int _processed, const QIcon &_thumbnail)
 
virtual void notify (MLPipelineNotification notification, const QString &_name, const QString &_path, const QString &_displayData, int _processed, const QImage &_thumbnail)
 
void pipelinePerformanceEnd (const MLPipelineStage &stage, int totalItemCount, QElapsedTimer &timer)
 
void pipelinePerformanceEnd (const MLPipelineStage &stage, QElapsedTimer &timer)
 
void pipelinePerformanceStart (const MLPipelineStage &stage, QElapsedTimer &timer)
 Methods to profile the Pipeline performance.
 
MLPipelinePackageFoundationqueueEndSignal () const
 Queue helper functions.
 
void showPipelinePerformance () const
 
void stageEnd (MLPipelineStage thisStage, MLPipelineStage nextStage)
 
void stageStart (QThread::Priority threadPriority, MLPipelineStage thisStage, MLPipelineStage nextStage, MLPipelineQueue *&thisQueue, MLPipelineQueue *&nextQueue)
 
void waitForStart ()
 

Additional Inherited Members

- Public Types inherited from Digikam::FacePipelineBase
enum  FilterMode {
  ScanAll , ScanNew , TrainNew , TrainAll ,
  TrainRemove , TrainReset
}
 
enum  WriteMode { NormalWrite , OverwriteAllFaces , OverwriteUnconfirmed }
 
- Public Types inherited from Digikam::MLPipelineFoundation
enum  MLPipelineNotification { notifySkipped , notifyProcessed }
 
typedef struct Digikam::MLPipelineFoundation::_MLPipelinePerformanceProfile MLPipelinePerformanceProfile
 
typedef SharedQueue< MLPipelinePackageFoundation * > MLPipelineQueue
 
enum  MLPipelineStage {
  Finder , Loader , Extractor , Classifier ,
  Trainer , Writer , None
}
 
- Signals inherited from Digikam::MLPipelineFoundation
void finished ()
 Emitted when the last package has finished processing.
 
void processed (const MLPipelinePackageNotify::Ptr &package)
 Emitted when one package has finished processing.
 
void processing (const MLPipelinePackageNotify::Ptr &package)
 Emitted when one package begins processing.
 
void progressValueChanged (float progress)
 
void scheduled ()
 Emitted when processing is scheduled.
 
void signalAddMoreWorkers ()
 
void signalUpdateItemCount (const qlonglong itemCount)
 
void skipped (const MLPipelinePackageNotify::Ptr &package)
 Emitted when one or several packages were skipped, usually because they have already been scanned.
 
void started (const QString &message)
 Emitted when processing has started.
 
- Protected Attributes inherited from Digikam::FacePipelineBase
double blurThreshold = 4.87F
 
DNNModelBasedetectorModel = nullptr
 
const float minThumbnailSize = 0.4F
 
double noiseThreshold1 = 3.7
 
double noiseThreshold2 = 1.89
 
FaceScanSettings settings
 
- Protected Attributes inherited from Digikam::MLPipelineFoundation
bool cancelled = false
 
QAtomicInteger< int > itemsProcessed = 0
 
quint64 maxBufferSize = 2147483648
 2 GB default
 
QIcon missingIcon = QIcon::fromTheme(QLatin1String("image-missing"))
 
QMutex mutex
 
QMap< MLPipelineStage, MLPipelinePerformanceProfileperformanceProfileList
 
QElapsedTimer pipelineTimer
 
QMap< MLPipelineStage, MLPipelineQueue * > queues
 
QThreadPool * threadPool = nullptr
 
QMutex threadStageMutex
 
const int throttledQueueDepth = 1
 
QAtomicInteger< int > totalItemCount = 0
 
quint64 usedBufferSize = 0
 
QList< QFutureWatcher< bool > * > watchList
 

Member Function Documentation

◆ addMoreWorkers()

void Digikam::FacePipelineEdit::addMoreWorkers ( )
overrideprotectedvirtual

◆ classifier()

bool Digikam::FacePipelineEdit::classifier ( )
inlineoverrideprotectedvirtual

◆ extractor()

bool Digikam::FacePipelineEdit::extractor ( )
overrideprotectedvirtual

◆ finder()

bool Digikam::FacePipelineEdit::finder ( )
inlineoverrideprotectedvirtual

◆ getRejectedFaceTagList()

FaceTagsIface Digikam::FacePipelineEdit::getRejectedFaceTagList ( const FaceTagsIface face) const
protected

some FaceTagsIface objects don't have the rejectedFaceTagList set because of the way they were loaded. This function will set it to the value from the database.

◆ loader()

bool Digikam::FacePipelineEdit::loader ( )
overrideprotectedvirtual

◆ start()

bool Digikam::FacePipelineEdit::start ( )
overridevirtual

Reimplemented from Digikam::MLPipelineFoundation.

◆ trainer()

bool Digikam::FacePipelineEdit::trainer ( )
inlineoverrideprotectedvirtual

◆ writer()

bool Digikam::FacePipelineEdit::writer ( )
overrideprotectedvirtual