GSoC/2019/StatusReports/IgorAntropov
[DigiKam]: Faces Management workflow improvements
Face detection and recognition is a powerful tool in DigiKam. It lets users simplifies the process of tagging people on their photos. These tags can be used for managing, sorting and other operations with photos. Unfortunately, as for now DigiKam has some problems with user experience and user interface.
Mentors: Maik Qualmann, Gilles Caulier, Stefan Müller, Marc Palaus
Project goals
- Separate tags and face names
- Remove /People/ top face tag from metadata
- Improve drop-down list when selecting face names
- Other GUI improvements
Work report
Community Bonding Period
During the community bounding period I got familiar with the code of the previous workflow. In addition, I found a better way to separate normal tags and face tags.
Coding Period - May 27th to June 28th
During these weeks I started to separate face tags and common tags:
- Removed normal tags from all face tags tree-views
- Removed face tags from normal tags views and manager
- Added filter for face tags and removed face tags from tag filter
- Removed possibility to promote tags to face tags and visa verse
In addition to that, I made couple of GUI improvements:
- Now face tag thumbnail is showing correct face rectangle, not a full picture
- Unknown and Unconfirmed face tags albums now placed on top of the list
Current plans:
- Remove /People/ top level node from all views
- Do not write /People/ top node in metadata and keep it for internal logic purpose
Coding Period - June 28th to July 26th
During second evaluation period I continue on separating face tags and common tags:
- Removed edit and delete options from Unknown and Unconfirmed face tags from contex menu and from menu bar
- Removed face tags from Recently Used Tags context menu
- Removed the way to make face tags into normal tags
- Removed /People/ top level node from views
Also some GUI improvements on auto detected persons:
- Added green border to Unconfirmed faces
- Added announcing auto detected persons
Future work:
- Ensure compatibility between digiKam face tags metadata and other programs metadata
- Add a possibility to sort people tree view in custom way
Coding Period - July 26th to August 19th
This period was dedicated to analysing differences between how digikam uses tags and face tags metadata and other softwares. The main problem is that tags can be only normal or face in digiKam. This results in couple inaccurate situations:
- When normal tag is a parent of the face tag, that face tag would not be shown in a face tag tree
- When face tag is a parent of the normal tag, that normal tag would not be shown in a tag tree
- When there are normal tags and face tags with the same names.
All of that can be fixed with following changes:
- Change how digikam treats face tags entirely and change tree structure into flat list
or
- Copy full branch with face tag under _digiKam_spiceil_facetag_ and hide this tag from GUI and metadata writing
In addition to that, I made GUI improvement:
- Added drag-and-drop event to assign or re-assign face tags
Links
Contacts
E-mail: [email protected]
Telegram: @antropovi
Github: link