Bug 498062

Summary: Incorect faces cause incorect suggest
Product: [Applications] digikam Reporter: cyclikov <tu4con>
Component: Faces-WorkflowAssignee: Digikam Developers <digikam-bugs-null>
Status: REPORTED ---    
Severity: wishlist CC: caulier.gilles, michael_miller
Priority: NOR    
Version First Reported In: 8.6.0   
Target Milestone: ---   
Platform: Microsoft Windows   
OS: Microsoft Windows   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description cyclikov 2024-12-30 15:53:24 UTC
If a tag has one or two incorrectly marked persons, it makes a lot of incorrect suggests.  If the collection is small, you can ‘manually’ check every face, but I have a collection of over 100 people and between 10-50 and 3000 faces in each, which makes checking impossible. Even with an accuracy parameter of ‘10’, you can sometimes add the wrong face.
It is not clear how to remove the tag from an incorrectly tagged face, for example if I want to add it later. I have to move the existing rectangle, draw a new one and remove the incorrectly marked face.
Maybe we should add functionality to check faces inside the tag, like asking ‘is this person really this person’ or just ‘bad quality, not to be using’.
Or if many times a suggestion is rejected or deleted, show what causes such suggestions and suggest how it can be fixed.

Also unclear behaviour when enabling OpenCV: very slow recognition. Without (On CPU) is faster, but multithreading can cause program crash. (Build: digiKam-8.6.0-20241229T180202-Qt6-Win64)
Comment 1 Michael Miller 2025-01-25 15:21:58 UTC
(In reply to cyclikov from comment #0)
> If a tag has one or two incorrectly marked persons, it makes a lot of
> incorrect suggests.  If the collection is small, you can ‘manually’ check
> every face, but I have a collection of over 100 people and between 10-50 and
> 3000 faces in each, which makes checking impossible. Even with an accuracy
> parameter of ‘10’, you can sometimes add the wrong face.
> It is not clear how to remove the tag from an incorrectly tagged face, for
> example if I want to add it later. I have to move the existing rectangle,
> draw a new one and remove the incorrectly marked face.
In the People sidebar on the left, then select the person who has the incorrectly confirmed face.  Find the face in the list.  Right-click on the face and select Remove Tag.  Select the incorrect name tag from the face. 

Doing this will move the face back to "Unknown" without removing the rectangle.


> Maybe we should add functionality to check faces inside the tag, like asking
> ‘is this person really this person’ or just ‘bad quality, not to be using’.
> Or if many times a suggestion is rejected or deleted, show what causes such
> suggestions and suggest how it can be fixed.
We're working on an idea to help identify incorrectly tagged faces.

> 
> Also unclear behaviour when enabling OpenCV: very slow recognition. Without
> (On CPU) is faster, but multithreading can cause program crash. (Build:
> digiKam-8.6.0-20241229T180202-Qt6-Win64)
Can you please try the latest daily build and see if the problem still exists?  There have been several changes since December.

Cheers,
Mike
Comment 2 cyclikov 2025-01-26 13:07:18 UTC
(In reply to Michael Miller from comment #1)
> > Also unclear behaviour when enabling OpenCV: very slow recognition. Without
> > (On CPU) is faster, but multithreading can cause program crash. (Build:
> > digiKam-8.6.0-20241229T180202-Qt6-Win64)
> Can you please try the latest daily build and see if the problem still
> exists?  There have been several changes since December.

Face rebuild and recognition still faster on Ryzen 3700x than on RTX 3600Ti. Because of this, you have to use digikam without OpenCV. Using multithreading is no longer causes crashes on the latest build.

Perhaps it is worth doing as in Picasa or other programs where unknowns are grouped. This will allow you to remove animals, statues or faces from advertising banners (there can be hundreds of them).

AutoTags does not work. It just crashes. (I tried different models, single- or multithreading, with or without OpenCV)
Comment 3 Michael Miller 2025-01-26 17:39:38 UTC
(In reply to cyclikov from comment #2)

> AutoTags does not work. It just crashes. (I tried different models, single-
> or multithreading, with or without OpenCV)

Can you please provide a debug log when you're doing autotags?

Cheers,
Mike
Comment 4 cyclikov 2025-01-26 20:10:27 UTC
> Can you please provide a debug log when you're doing autotags?

...
digikam.metaengine: Loading metadata with ‘Exiv2’ backend from ‘Z:/Photo/2025/01.15 Lobachevsky University/DSCB6300.jpg’
digikam.dimg: ‘Z:/Photo/2025/01.15 Lobachevsky University/DSCB6301.jpg’ : ‘JPEG’ file identified
digikam.metaengine: Loading metadata with ‘Exiv2’ backend from ‘Z:/photo/2025/01.15 Lobachevsky University/DSCB6298.jpg’
digikam.metaengine: Loading metadata with ‘Exiv2’ backend from ‘Z:/Photo/2025/01.15 Lobachevsky University/DSCB6297.jpg’
digikam.metaengine: Loading metadata with ‘Exiv2’ backend from ‘Z:/Photo/2025/01.15 Lobachevsky University/DSCB6299.jpg’
digikam.metaengine: Loading metadata with ‘Exiv2’ backend from ‘Z:/Photo/2025/01.15 Lobachevsky University/DSCB6302.jpg’
digikam.metaengine: Loading metadata with ‘Exiv2’ backend from ‘Z:/Photo/2025/01.15 Lobachevsky University/DSCB6301.jpg’
An exception was raised at address 0x00007FF9DEF19AF0 (digikamgui.dll) in digikam.exe: 0xC0000005: read access violation at address 0x000002EB1DADAD2094.

second attempt with another album
...
digikam.general: Preview quality: 0
digikam.metaengine: Loading metadata with ‘Exiv2’ backend from ‘Z:/Photo/College/Other/DSCF5983.JPG’
digikam.general: Try to load DImg preview from: ‘Z:/Photo/College/Other/DSCF5983.JPG’
digikam.dimg: ‘Z:/Photo/College/Other/DSCF5983.JPG’ : ‘JPEG’ file identified
digikam.metaengine: Loading metadata with ‘Exiv2’ backend from ‘Z:/Photo/College/Beautiful Places of College/Other/DSCF5983.JPG’
digikam.metaengine: Exif colour-space tag is sRGB. Using default sRGB ICC profile.
digikam.general: Try to get preview from ‘Z:/Photo/College/Other/DSCF5984.JPG’
digikam.general: Preview quality: 0
digikam.metaengine: Loading metadata with ‘Exiv2’ backend from ‘Z:/Photo/College/Other/DSCF5984.JPG’
digikam.general: Try to load DImg preview from: ‘Z:/Photo/College/Beautiful College Sites/Other/DSCF5984.JPG’
digikam.dimg: ‘Z:/Photo/College/DSCF5984.JPG’ : ‘JPEG’ file identified
digikam.metaengine: Loading metadata with ‘Exiv2’ backend from ‘Z:/Photo/College/College Beautiful Places/Other/DSCF5984.JPG’
An exception was raised at address 0x00007FF9DEF19AF0 (digikamgui.dll) in digikam.exe: 0xC0000005: read access violation at address 0x0000019F1C35A094.
Comment 5 caulier.gilles 2025-04-11 20:30:36 UTC
Hi,

The digiKam 8.7.0 pre-release for Windows have been rebuild from scratch today
with many improvements and updates especially with the face management
workflow. Please test with this version to see if the problem is reproducible.

Link to download: https://files.kde.org/digikam/

Thanks in advance

Gilles Caulier