Bug 471183 - Face recognition, see and edit references
Summary: Face recognition, see and edit references
Status: REPORTED
Alias: None
Product: digikam
Classification: Applications
Component: Faces-Recognition (show other bugs)
Version: 8.1.0
Platform: Microsoft Windows Microsoft Windows
: NOR wishlist
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-06-18 08:19 UTC by Andy
Modified: 2023-12-28 16:43 UTC (History)
8 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
face recognition (457.67 KB, image/jpeg)
2023-06-18 08:19 UTC, Andy
Details
Manual (53.69 KB, image/png)
2023-06-24 05:08 UTC, Andy
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Andy 2023-06-18 08:19:02 UTC
Created attachment 159757 [details]
face recognition

Hello,
I hope my suggestion is worth considering.
In my opinion, the face recognition is not very good. (With yolo and without yolo)
When I open the suggested faces list, I want to see the reference faces next to the name. I would then like to revise this list myself. For example, to erase painted faces or faces with grimaces. I hope that the incorrectly recognized faces will then be removed.
Maybe it's a good idea to improve the detection rate?

Regards
Andy
Comment 1 caulier.gilles 2023-06-18 09:16:50 UTC
Hi Tran,

I CC you in this file as this report touch your GoSC 2023 project about face management.

Gilles
Comment 2 Andy 2023-06-20 18:27:59 UTC
Hi!

Maybe it also plays a big role if blurred faces are included in the recognition. I guess digiKam doesn't detect blurred faces to exclude them from face recognition? Blurred faces are still recognizable for a human. But the program then finds jackets, cakes, faces from the altar in the church, etc. The results are totally blurry.
Comment 3 Maik Qualmann 2023-06-21 06:40:10 UTC
To ignore blurred faces we already have a bug report.
Otherwise I don't understand the wish in the Description. You can delete the face, ignore it or enter the correct name at any time.
With so many wrong faces, what accuracy value are they using?

Maik
Comment 4 caulier.gilles 2023-06-21 07:13:46 UTC
Note: face workflow is described in the online documentation :

https://docs.digikam.org/en/main_window/people_view.html

If it miss something, please lets me hear...

Gilles Caulier
Comment 5 Andy 2023-06-21 09:41:52 UTC
Hello Maik,

The accuracy value is 70.
It's difficult to describe. I hope the translator gets it right.
Several faces are suggested. The right ones will be confirmed by me.
The wrong ones are assigned the correct name.
Objects such as jackets, cakes, faces of statues or Winnetou are ignored.
Even if there are no faces, I just ignore them instead of deleting them. Because they will be recognized as a face again in the next scan.
When a face is suggested, I often open the preview. All automatically recognized frames around the faces are shown here, which I will now correctly assign here. I have to be very careful that I don't assign the face that it's actually about. Otherwise the preview is closed and a new image with the person is opened.
In the preview, I often see faces that the program didn't recognize. I draw a frame around and enter the name.
There can also be blurred or shaky faces.

My guess is that the more blurry and shaky faces I name, the more face recognition misses I get. At the moment, every suggested face for a person is actually wrong.
It's like trying to recognize faces without glasses. That doesn't go well either. :-)

Hence the question at the top, whether it is possible to remove blurred and shaky faces from face recognition. The program should only use sharp and clear faces for recognition.

Maybe I'm totally wrong with my assumption?

Andy
Comment 6 Craig 2023-06-23 09:00:56 UTC
(In reply to caulier.gilles from comment #1)
> Hi Tran,
> 
> I CC you in this file as this report touch your GoSC 2023 project about face
> management.
> 
> Gilles

Could you provide a link to this? I have tried to find it, but can't.
Comment 7 Craig 2023-06-23 09:04:19 UTC
(In reply to Andy from comment #0)
> Created attachment 159757 [details]
> face recognition
> 
> Hello,
> I hope my suggestion is worth considering.
> In my opinion, the face recognition is not very good. (With yolo and without
> yolo)
> When I open the suggested faces list, I want to see the reference faces next
> to the name. I would then like to revise this list myself. For example, to
> erase painted faces or faces with grimaces. I hope that the incorrectly
> recognized faces will then be removed.
> Maybe it's a good idea to improve the detection rate?
> 
> Regards
> Andy

Andy are you running version 8.0.0 or as stated 8.1 (pre-release)?
Comment 8 caulier.gilles 2023-06-23 09:45:01 UTC
See here :

https://community.kde.org/GSoc/2023/StatusReports/QuocHungTran

Gilles Caulier
Comment 9 Andy 2023-06-23 13:14:34 UTC
Hi Craig, I've been using version 8.1.0 for 2 weeks. I've noticed this behavior with previous versions as well. The more faces I assigned, the worse the recognition rate got.
Comment 10 Andy 2023-06-24 05:08:54 UTC
Created attachment 159875 [details]
Manual
Comment 11 Andy 2023-06-24 05:09:11 UTC
Hi!
I now understand why the wrong results are coming.
I read the manual again.
Comment 12 Craig 2023-06-24 05:20:31 UTC
(In reply to Andy from comment #2)
> Hi!
> 
> Maybe it also plays a big role if blurred faces are included in the
> recognition. I guess digiKam doesn't detect blurred faces to exclude them
> from face recognition? Blurred faces are still recognizable for a human. But
> the program then finds jackets, cakes, faces from the altar in the church,
> etc. The results are totally blurry.

Generally speaking I have found the face detection part to be very good with few incorrect detection. Indeed when the face is low light Digikam does a better job at identifying a face than I do.

I think you are correct about blurred faces are likely to cause problems for the face recognition, which is likely to be the cause of the lower rate recognition or incorrect suggestions as more pictures are added and matched. I hope that the work on this code will allow the selection of the reference pictures that the recognition is to be based against. It would be interesting if we could see the match confidence score or even the variation between the reference pictures.
Comment 13 Craig 2023-06-24 05:29:04 UTC
(In reply to Andy from comment #11)
> Hi!
> I now understand why the wrong results are coming.
> I read the manual again.

I am not sure that I agree with the manual saying that children versus adult will be a problem as the ratios between the key features on a face don't normally change that much.

The retraining of the data could be a problem and I don't think I will attempt doing that until after the next update to the digiKam face detection system is updated to allow the blocking of some albums.
Comment 14 Andy 2023-06-25 13:05:47 UTC
I tested again.
The "Reject Suggestion" function has no effect on the next face recognition. The same fake (wrong?) faces of a person will be suggested at the next detection.
Can I prevent this permanently?    (I will also open a new ticket for this.)
Comment 15 Maik Qualmann 2023-06-25 15:18:29 UTC
The problem has already been reported. We do not currently save negative face choices.

Maik
Comment 16 Craig 2023-06-26 00:12:44 UTC
(In reply to Andy from comment #14)
> I tested again.
> The "Reject Suggestion" function has no effect on the next face recognition.
> The same fake (wrong?) faces of a person will be suggested at the next
> detection.
> Can I prevent this permanently?    (I will also open a new ticket for this.)

You should add to the bug report that this problem is still occurring on 8.1.0.
https://bugs.kde.org/show_bug.cgi?id=428652
Comment 17 Andy 2023-06-30 18:06:20 UTC
Hi Mike!
I'll stop with face recognition for now. It frustrates me a little bit because I keep having to reject the same images over and over again. And because 90% of the images are assigned to the wrong people. Apparently, face recognition doesn't learn from newly assigned faces. Even very clearly recognizable faces remain in unknown or are not framed.
As a suggestion for the developers, it might help that only the last 50 added faces per person are used for face recognition??? The recognition grows with the years of life and the appearance of a person. It's just a layman's idea :-)

@Craig
The post in your link seems to be a different problem.


I'm really looking forward to the next program version.
Comment 18 Andy 2023-06-30 18:14:18 UTC
Mike = Maik!  Sorry!
Comment 19 Craig 2023-06-30 23:44:25 UTC
(In reply to Andy from comment #17)
> Hi Mike!
> I'll stop with face recognition for now. It frustrates me a little bit
> because I keep having to reject the same images over and over again. And
> because 90% of the images are assigned to the wrong people. Apparently, face
> recognition doesn't learn from newly assigned faces. Even very clearly
> recognizable faces remain in unknown or are not framed.
> As a suggestion for the developers, it might help that only the last 50
> added faces per person are used for face recognition??? The recognition
> grows with the years of life and the appearance of a person. It's just a
> layman's idea :-)
> 
> @Craig
> The post in your link seems to be a different problem.
> 
> 
> I'm really looking forward to the next program version.

I think the better option would be to be able to select which faces are to be used as a reference for the learning.

I am not sure how many pictures you have for each person, but I would imagine if you have 300 pictures that adding an additional 50 more isn't going to change the identification pattern.
Comment 20 Chris 2023-10-17 08:49:55 UTC
(In reply to Craig from comment #19)
> I think the better option would be to be able to select which faces are to
> be used as a reference for the learning.

Totally agree, this would be awesome. Manually hand-pick the best unblurred reference faces. Or at least remove blurred, grimacing, sunglassed faces from the reference list. :)
- I read that currently digikam uses the 100 latest tagged face regions per face tag for reference. So maybe one can do some magic with some database manipulation of time stamps, to make the best tags the most recent?

Coupled with a negative (rejection list per person), I think the recognition would improve a lot.