Questions about face recognition, training, and tagging
Michael Miller
michael_miller at msn.com
Fri May 9 00:08:09 BST 2025
Hi Tom,
I hope you’re having a good day.
1. When face recognition or training is happening, will digiKam write a face region to the metadata if the face has already been manually tagged? In other words, will it duplicate an existing tag and region?
digiKam shouldn’t duplicate the face tag and region. We do a few checks for overlapping regions and ignore the automatically found region if it overlaps with an existing region.
1. I manually tag heads rather than faces, e.g. the rectangle I draw around someone might contain a face, a blurred face, a slightly obscured face, or the back of someone’s head. Can the training algorithm distinguish among these and use only reliable data? Does the Face Image Quality Assessment cull instances like these? If it doesn’t or can’t, do I need to move these tagged instances to the Ignored category?
Yes, it should use only reliable data. There are multiple checks in place such as checking for noise, blur, and properly extracted face metrics. All checks have to pass before we use a face for training, regardless if it was automatically found or manually added.
1. Is there a setting where the training algorithm will only train within the range of clear full-frontal to profile faces (e.g. not partially obscured, blurred, etc.)?
I think most of this question is answered in my previous reply, but partial view face and profile faces are useful to the algorithm to recognize the person in similar poses, so they can potentially be used for training. This shouldn’t degrade the classifier (matching algorithm).
1. In a previous face recognition run where the accuracy was set to 7, the algorithm detected many unrecognized faces. For the most part, it put these in the Unknown category. However, for one particular face it claimed recognition of previously tagged faces that weren’t even close to the face in question. Is this because the training data for that particular face was wonky? Is there a way to retrain for a single person/face?
Yes. I’ve seen this before where one face for some unexplained reason is “wonky”. I’ve tried multiple times to reproduce the “wonkiness”, but have been unsuccessful so far.
1. What happens if I set the face detection and recognition accuracy to 100%? Will it recognize anything?
Setting the face accuracy to 10 isn’t setting it to 100%. There is a usable range for every AI/ML model, and almost never do we set anything to 100%. When you set the facial recognition threshold to 10, you’re actually setting the confidence factor threshold returned from the model to about 86% for YuNet (detection) and 61% for SFace (recognition). Similarly, setting the accuracy to 0 isn’t setting the it 0%. Extensive testing has shown that anything above these thresholds doesn’t improve accuracy, but does increase false negatives (should be a match, but is rejected). If you really want to get into the weeds, search for a file called dnnmodels.conf in your digiKam program directory. This will show you many of the under-the-covers settings used.
Cheers,
Mike
On May 8, 2025, at 4:55 PM, Tom Cunningham <TWCunningham627 at outlook.com> wrote:
This is for digiKam 8.6.0 under Windows 11.
1. When face recognition or training is happening, will digiKam write a face region to the metadata if the face has already been manually tagged? In other words, will it duplicate an existing tag and region?
2. I manually tag heads rather than faces, e.g. the rectangle I draw around someone might contain a face, a blurred face, a slightly obscured face, or the back of someone’s head. Can the training algorithm distinguish among these and use only reliable data? Does the Face Image Quality Assessment cull instances like these? If it doesn’t or can’t, do I need to move these tagged instances to the Ignored category?
3. Is there a setting where the training algorithm will only train within the range of clear full-frontal to profile faces (e.g. not partially obscured, blurred, etc.)?
4. In a previous face recognition run where the accuracy was set to 7, the algorithm detected many unrecognized faces. For the most part, it put these in the Unknown category. However, for one particular face it claimed recognition of previously tagged faces that weren’t even close to the face in question. Is this because the training data for that particular face was wonky? Is there a way to retrain for a single person/face?
5. What happens if I set the face detection and recognition accuracy to 100%? Will it recognize anything?
Thanks for any help you can provide.
Take care,
Tom
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/digikam-users/attachments/20250508/9caae764/attachment-0001.htm>
More information about the Digikam-users
mailing list