Regarding Implementation for Ignored Faces

Gilles Caulier caulier.gilles at gmail.com
Tue May 12 08:40:18 BST 2020


hi,

yes, exactly. As introduced by Maik, all the faces are detected in the
workflow and the user decide which one must be registered or not in
the workflow.

So the face IGNORED must be set as an hidden property in database. But
i'm not agree with Maik, about file metadata. We need to store these
properties at least in digiKam XMP namespace for database properties
backup.
Only digiKam handle this namespace which host already some important
database information as backup.

Like this, if the database is corrupted, and if user set digiKam to
store face information in file metadata, the database can be restored
as well at next start up using a fresh database, including this
important properties, to prevent to replay the face selection in a new
workflow.

Note : i'm not sure if standard XMP namespace store image regions to
ignore. Kartik, please take a look in XMP standard tags, using Exiv2
or Exiftool doc, just to double check...

best

Gilles

Le lun. 11 mai 2020 à 22:57, Maik Qualmann <metzpinguin at gmail.com> a écrit :
>
> Hmm, assigning a region to be deleted to a tag is probably not so good. I
> don't think users want this region anymore. Use a database browser to look at
> the "ImageTagProperties" how regions are saved. we need a "dummy" here. This
> "dummy" is not written in metadata and is not displayed as a region on images,
> but is used as an existing face in face detection. When deleting all regions
> on the images, the "dummy" is also deleted so that a new assignment is
> possible. Just an idea...
>
> Maik
>
> Am Montag, 11. Mai 2020, 13:51:46 CEST schrieb Kartik Ramesh:
> > Hello all,
> >
> > I wanted to discuss how I may implement feature for Ignored faces. The main
> > idea is to allow the user to "ignore" certain faces detected by the algo.
> > which the user doesn't wish to recognize.
> > I think that the option to ignore faces should be provided only on Unknown
> > faces. Since it doesn't make sense to ignore a face that has been confirmed
> > by the user, already.
> > One approach is to treat Ignored faces as just another People tag, and when
> > the user decides to ignore a particular unknown face, we can just call a
> > confirm operation with the ignored person tagId, on that face.
> > Another approach could be to treat Ignored similar to Unknown/Unconfirmed,
> > that is, to create an Ignored Tag Property, Ignored FaceTagsIface::Type and
> > other changes at the low level.
> >
> > Please let me know which of these seems more sensible.
> >
> > Thanks
> > Kartik.
>
>
>
>


More information about the Digikam-devel mailing list