Bug 398376 - UI problems making face management very hard
Summary: UI problems making face management very hard
Status: RESOLVED WORKSFORME
Alias: None
Product: digikam
Classification: Applications
Component: Faces-Workflow (show other bugs)
Version: 5.9.0
Platform: Debian testing Linux
: NOR normal
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-09-07 18:44 UTC by Reiner Nix
Modified: 2021-02-13 15:47 UTC (History)
5 users (show)

See Also:
Latest Commit:
Version Fixed In: 7.2.0
Sentry Crash Report:


Attachments
Choosing a caption using the drop down box in the full image view (159.26 KB, image/png)
2018-09-07 18:44 UTC, Reiner Nix
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Reiner Nix 2018-09-07 18:44:21 UTC
Created attachment 114836 [details]
Choosing a caption using the drop down box in the full image view

The face detection and management is a big step forward and I like it.
I like to give some feedback about my experiences with the hope that an improvement is also useful for many other digikam users.

Using the face detection, digikam has some problems making face management very hard. 

The issues are related to the label / caption hierarchy. For correctness to my setup, I am using german  but I guess this should not really matter. Here a snippet of the hierarchy I have setup:

Stichwörter (the root)
 |-- Lebewesen
 | |-- Personen und Haustiere
 |   |-- Familie
 |   | |-- Anne
 |   | |-- Reiner
 |   |
 |   |-- Freunde
 |   | |-- Mueller
 |   | | |-- Maria
 |   | | |-- Michel
...
 |-- Personen // created by Digikam as default place for face recognition

Before face detection was available I had already manually labelled many images with face tags. Of cource face tags means that I have had created a label (caption) subtree, see "Personen und Haustiere". 
For the face detection another subtree below "Personen" is automatically introduced which caused problems.

Problems:
1) When running face detection on an image which was previously labelled at whole, the caption cannot be choosen to be re-assigned particulary fro whe image to the face. Moreover it is not possible to choose it (maybe because it is already assigned to the image?). I think that should be possible because this caption is related to the person no matter where it is attached to the image or to the designated face in the same image. And the face detection mechanism cannot be configured to ignore this album forever (which would be a work-around only).

2) It is not possible that I can manually configure my subtree in the captions named "Personen und Haustiere" to be used for the face detection.
Moving to the automatic created "Personen" top-level subtree is not my wish because of using another system and it would place much work to me.

3) Due to the difference between the preset top-level tree of captions, some captions below "Personen und Lebewesen" and some below "Personen" are used.
I. e. creating new captions during the management will be placed below "Personen" while choosing old ones use those below "Personen und Lebewesen". This leads to a mess. For me all, new and old, captions should be below "Personen und Lebewesen".

4) After the face recognition was done and I do the assignment using a known caption with the drop-down combo box as supported in the full image view. As the hierarchy of captions is huge by high number of captions and deep hierarchy the displayed combo box is too small - even I am working using a 4k display, which provides much more space. Please have a look to the attached screenshoot.

5) Using the dialog to run the face detection only within a subset of all albums, will display a combo box for the albums. But it is not possible to reset the previous made selection with a single action. Instead I have manually to run through the whole hierarchie of almbums and try to find which one was selected in the previous run. 
A suggestion would be to have a list of all albums on the left side and the choosen albums are displayed on the right side. For example, this concept is used for example when configuring the buttons in a KDE menu bar.

6) Any face detected need to be assigned to a caption. But what is the best way to remember that a face is to be ignored? For example my family and me did visit a historic metal mine on holidays. My family was part of a larger visitor group. Thus on some images there were quite more faces detected than I am familar with and for which I like to provide captions.

7) Regression error: with the current release (5.9.0) the face detection does not correctly work on the choosen album. Instead quite more albums will be used. Of course the check mark "Gesamte Almbumsammlung" (All Albums) has been not checked. In my previous digikam release (5.6.0) this was working as expected.


Best regards,
Reiner
Comment 1 MarcP 2019-04-13 16:43:17 UTC
I am partial of having a flat (non-hierarchical) people list, separated from the hierarchical tag list. everything would be much simpler. I think most picture management software handles faces that way.

And then, maybe, some system could be added to "categorize" people (e.g. Relatives, Coworkers, Friends, etc.). But I don´t know how that could be carried out without causing a mess.
Comment 2 caulier.gilles 2019-12-23 15:33:24 UTC
7.0.0-beta1 is out with new Face Recognition algorithm based on Deep
Learning/Neural Network API from OpenCV

https://download.kde.org/unstable/digikam/

Please test and give us a feedback

Thanks in advance
Gilles Caulier
Comment 3 caulier.gilles 2019-12-26 17:37:58 UTC
Git commit 05b9a534d89234b7571d5dade8067c490ab896cf by Gilles Caulier.
Committed on 26/12/2019 at 17:30.
Pushed by cgilles into branch 'master'.

Faces Workflow simplication and improvements: remove face scan dialog and embed Face scan settings in People left sidebar.
disable settings view while a face job is running.
Catch face detector tool complete/cancelled signal to re-enable settings view.
By this way, this will prevent to run 2 concurrent face jobs at the same time.
Related: bug 412168, bug 380336

M  +45   -31   core/app/views/sidebar/leftsidebarwidgets.cpp
M  +1    -0    core/app/views/sidebar/leftsidebarwidgets.h
M  +1    -1    core/utilities/facemanagement/CMakeLists.txt
R  +15   -45   core/utilities/facemanagement/widgets/facescanwidget.cpp [from: core/utilities/facemanagement/widgets/facescandialog.cpp - 089% similarity]
R  +9    -11   core/utilities/facemanagement/widgets/facescanwidget.h [from: core/utilities/facemanagement/widgets/facescandialog.h - 079% similarity]
R  +8    -11   core/utilities/facemanagement/widgets/facescanwidget_p.h [from: core/utilities/facemanagement/widgets/facescandialog_p.h - 090% similarity]
M  +1    -1    core/utilities/maintenance/facesdetector.cpp
M  +3    -3    core/utilities/maintenance/facesdetector.h
M  +1    -0    core/utilities/maintenance/maintenancetool.cpp
M  +11   -3    core/utilities/maintenance/maintenancetool.h

https://invent.kde.org/kde/digikam/commit/05b9a534d89234b7571d5dade8067c490ab896cf
Comment 4 Daniel 2020-01-02 01:01:24 UTC
(In reply to caulier.gilles from comment #3)
> Git commit 05b9a534d89234b7571d5dade8067c490ab896cf by Gilles Caulier.
> Committed on 26/12/2019 at 17:30.
> Pushed by cgilles into branch 'master'.
> 
> Faces Workflow simplication and improvements: remove face scan dialog and
> embed Face scan settings in People left sidebar.
> disable settings view while a face job is running.
> Catch face detector tool complete/cancelled signal to re-enable settings
> view.
> By this way, this will prevent to run 2 concurrent face jobs at the same
> time.
> Related: bug 412168, bug 380336
> 
> M  +45   -31   core/app/views/sidebar/leftsidebarwidgets.cpp
> M  +1    -0    core/app/views/sidebar/leftsidebarwidgets.h
> M  +1    -1    core/utilities/facemanagement/CMakeLists.txt
> R  +15   -45   core/utilities/facemanagement/widgets/facescanwidget.cpp
> [from: core/utilities/facemanagement/widgets/facescandialog.cpp - 089%
> similarity]
> R  +9    -11   core/utilities/facemanagement/widgets/facescanwidget.h [from:
> core/utilities/facemanagement/widgets/facescandialog.h - 079% similarity]
> R  +8    -11   core/utilities/facemanagement/widgets/facescanwidget_p.h
> [from: core/utilities/facemanagement/widgets/facescandialog_p.h - 090%
> similarity]
> M  +1    -1    core/utilities/maintenance/facesdetector.cpp
> M  +3    -3    core/utilities/maintenance/facesdetector.h
> M  +1    -0    core/utilities/maintenance/maintenancetool.cpp
> M  +11   -3    core/utilities/maintenance/maintenancetool.h
> 
> https://invent.kde.org/kde/digikam/commit/
> 05b9a534d89234b7571d5dade8067c490ab896cf

With the Face scan settings in People left sidebar, it is harder to move tags in the upper half into a different category, especially on lower resolution screen. (It only shows 5 entries on the tag tree for me). One solution might be to make face scan setting widget collabsable and only show the main scan button.
Comment 5 caulier.gilles 2020-01-02 04:40:12 UTC
Git commit dfbc6c4ad6f79d15a245e3178e1c52cf317385a0 by Gilles Caulier.
Committed on 02/01/2020 at 04:39.
Pushed by cgilles into branch 'master'.

remove icon and text on header of people sidebar to optimize space

M  +1    -21   core/app/views/sidebar/peoplesidebarwidget.cpp
M  +5    -0    core/utilities/facemanagement/widgets/facescanwidget.cpp

https://invent.kde.org/kde/digikam/commit/dfbc6c4ad6f79d15a245e3178e1c52cf317385a0
Comment 6 caulier.gilles 2020-01-02 05:23:14 UTC
Git commit 51e4e8a91d0ec395a94499085cb952bb86496603 by Gilles Caulier.
Committed on 02/01/2020 at 05:19.
Pushed by cgilles into branch 'master'.

People sidebar layout optimization for small screen : host Workflow settings in tab widget as existing "Search in" and "Settings" tabs.
CCBUGS:398376

M  +36   -25   core/libs/album/widgets/albumselectors.cpp
M  +40   -24   core/libs/album/widgets/albumselectors.h
M  +11   -24   core/utilities/facemanagement/widgets/facescanwidget.cpp
M  +5    -5    core/utilities/facemanagement/widgets/facescanwidget.h
M  +3    -4    core/utilities/facemanagement/widgets/facescanwidget_p.h

https://invent.kde.org/kde/digikam/commit/51e4e8a91d0ec395a94499085cb952bb86496603
Comment 7 caulier.gilles 2020-01-02 05:28:08 UTC
Point 5/ from original comment:

Use context menu over albums/tags tree-view to reset selection.

Point 7/ from original comment:

Not reproducible with 7.0.0-beta1
Comment 8 caulier.gilles 2020-01-02 09:45:53 UTC
Maik,

About original file description, i'm sure that points 1/, 2/, 3/, 4/, and 6/ have are duplicates entries or are fixed more and less with current implementation.

This file is the heel, as it report more than one wish/bug at the same place. If we can factoring, it will be more easy to solve step by step each points.

If this file must still open, it must be the subject of one topic only...

Gilles
Comment 9 caulier.gilles 2020-01-03 11:55:49 UTC
Maik, 

If i understand well all pending points from this file :

1/ the wish is to be able to use image metadata a face tag keyword. Right ?
For me it's a duplicates of bug #407866
2/ duplicates of bug #395501 ?
3/ duplicates of bug #392008 ?
4/ Cannot reproduce with my Hdpi double screen. pop-up menu is enough large and suitable...
6/ See details from bug #366551. In all cases reject button from face editor widget do the stuff...

Gilles Caulier
Comment 10 Maik Qualmann 2021-02-13 15:47:47 UTC
1) In order to assign an existing tag, it must first be marked as a face tag (right context menu in the tags tree)

2) Yes, a duplicate of bug 395501

3) Yes, a duplicate of bug 392008

4) We have already increased the width of the widget, you are much faster with the text completer. The text completer should be preferred to the combo box.

5) There is a clear button in the combo box that resets the album selection.

6) Ignoring faces is now possible in digiKam-7.2.0.

7) In the Header tab you can now see how many albums and / or tags have been selected. The main problem was that it was often forgotten that tags were also selected and that much more was scanned than intended.

8) I'm closing this bug now.

Maik