Author Topic: Face annotation handling  (Read 482 times)

mastodon

  • Full Member
  • **
  • Posts: 161
Face annotation handling
« on: October 27, 2018, 08:57:46 AM »
The was a topic about this with a lot a of request, some of them have been fulfilled some are not really doable. I have two requests on the list:
1. Would it be possible to sort Face annotation like other values? Accent characters are not sorted right.
2. Show all faces of a person (like Picasa). Now you get the full picture, but I like to get only the frame of the face annotations. It is good to find a "good" picture of someone's face.

Mario

  • IMatch Developer
  • Administrator
  • *****
  • Posts: 21672
Re: Face annotation handling
« Reply #1 on: October 27, 2018, 10:51:25 AM »
I have a complete overhaul for face handling planned for a future release. Dedicated View etc.

I wonder about the sort order. This is a normal Windows tree control and IMatch by default uses the "smart" sort order, same as Windows Explorer. This not only sorts numbers correct but also handles the full UNICODE character space and sorting.

Can you include some of your names in your reply and show me how they should be sorted, and how they are sorted in IMatch?
« Last Edit: October 27, 2018, 10:57:27 AM by Mario »

mastodon

  • Full Member
  • **
  • Posts: 161
Re: Face annotation handling
« Reply #2 on: October 27, 2018, 03:29:55 PM »
I have a complete overhaul for face handling planned for a future release. Dedicated View etc.
Your read the customers dream. :) It would be nice to see an RFC about that features.
I would use face annotations for browsing and visual search for faces. One can not tag for everything, so have to search with his own eyes and intelligence.
Problems for me now (brainstorming):
1. I can not use names for sorting/browsing in many cases, because I do not know
- it would be nice to handle separate the part of the names (family name, given names, suffix), for grouping
- how to handle that the name order can be different (family name – given name OR given name - family name) in different countries
- how to handle name changes (in Hungary it is very common after marriage, and a lot a people have two or more marriages) - something like synonyms
- how to handle people with the same name
- how to group people (relatives, colleges etc.)
2. The "all face of a person" view (like Picasa) is good for searching a specific emotion ex.
3. If you could make a sort for the relation of the race annotation size/picture size, that could help searching for portraits. (One can not always tag everything, or this feature can help do tagging.)

These might somewhat more work-flow problems, as you mentioned. So, if you help as in the Keywording pan, that is OK.

I wonder about the sort order. This is a normal Windows tree control and IMatch by default uses the "smart" sort order, same as Windows Explorer. This not only sorts numbers correct but also handles the full UNICODE character space and sorting.

Can you include some of your names in your reply and show me how they should be sorted, and how they are sorted in IMatch?
I have attached a screen shot. I am using Win7 in Hungarian language. In the Categories pan the order is perfect!
So, as you can see in the picture above the accent character are after all. Á should be after A, and É should be after E. And O, Ó, Ö, Ő in the last case.

mastodon

  • Full Member
  • **
  • Posts: 161
Re: Face annotation handling
« Reply #3 on: April 06, 2019, 04:36:48 PM »
Mario, are there any news in this topic? Are you planning to add improved face handling in IMatch 2020?
And the alphabetic order is not correct in the Annotation panel: small caps are after the large ones, and after them come the accent charaters.

Mario

  • IMatch Developer
  • Administrator
  • *****
  • Posts: 21672
Re: Face annotation handling
« Reply #4 on: April 06, 2019, 06:02:52 PM »
When I'm not mistaken, the natural sort order is lower-base after upper-case so A...Z  a...z
IMatch just tells the Windows tree control to sort the items.

mastodon

  • Full Member
  • **
  • Posts: 161
Re: Face annotation handling
« Reply #5 on: April 06, 2019, 07:39:03 PM »
But here one can see the sorting order: U-V-W-Z-o-r-Á-É-Ő. That means: Upper-lower-accent (these in alphabetic order again)
This means Windows or IMatch does not use the order of the Hungaridan alphabet. I think because they don't know, that I want them to use it for sorting. How would I let them know? I have Win10 Pro (1809) 64 bit, Hungarian, build 17763.379.

Mario

  • IMatch Developer
  • Administrator
  • *****
  • Posts: 21672
Re: Face annotation handling
« Reply #6 on: April 07, 2019, 09:11:29 AM »
This should work out of the box.

Can you please prepare a text document of names you use and in which order they should show up in the tree? And attach it here.
I can then create some annotations using these names and check why the tree does not sort them correctly. Maybe I need to implement a custom sort routine for this or something. IMatch just tells Windows to sort the items in the tree alphabetically. Which should work for all languages.

mastodon

  • Full Member
  • **
  • Posts: 161
Re: Face annotation handling
« Reply #7 on: April 07, 2019, 07:51:31 PM »
I made a list with fictional names, in the right order by the Hungarian alphabet. Actually it might be quiet difficult to know all rules by heart... so I made it easy, but it will show the problem.

Mario

  • IMatch Developer
  • Administrator
  • *****
  • Posts: 21672
Re: Face annotation handling
« Reply #8 on: April 08, 2019, 04:06:46 PM »
I have changed how the tree is build and when I add annotations for all your names to a file, I end up with this:



which is a vast improvement.
« Last Edit: April 08, 2019, 07:21:20 PM by Mario »

mastodon

  • Full Member
  • **
  • Posts: 161
Re: Face annotation handling
« Reply #9 on: April 08, 2019, 07:23:04 PM »
Thanks, this is a huge improvement!  :)
Just a small bug left: O/Ó is before Ö/Ő (seen), as U/Ú is before Ü/Ű (not on the list).

Have you managed an automatic solution? Does win do the work?

Mario

  • IMatch Developer
  • Administrator
  • *****
  • Posts: 21672
Re: Face annotation handling
« Reply #10 on: April 08, 2019, 07:29:19 PM »
I cannot influence this sort order. I tell Windows to sort the strings using the "lexicographic" sort. Each country has a different sort order, and don't get me started about Chinese or Japanese sort rules. Only Windows can do this correctly because of large built-in tables and per-country localization features. If this is not correct, I guess Windows has a problem or what you consider correct is not. I just call the sort routines provided by Windows in the correct place (did not do always before for Annotations).

mastodon

  • Full Member
  • **
  • Posts: 161
Re: Face annotation handling
« Reply #11 on: April 08, 2019, 10:09:03 PM »
Have you changed the picture above after posting it? That does not look so good, than before. Now there is the problem with the accent charatters again.
If win does the job, I think the mismatch might stam from the character set, too. There is no Õ in the Hungarian alphabet, just Ő. BUT Á should come right after A, no question.

Mario

  • IMatch Developer
  • Administrator
  • *****
  • Posts: 21672
Re: Face annotation handling
« Reply #12 on: April 09, 2019, 11:24:12 AM »
I've posted an intermediary result.
This was actually a puzzler and really complex to track down, due to the dynamic nature of annotations and how they are dynamically loaded on-demand at runtime. Many code sections are involved to display the annotations to the user in the Collection View.

I've also noticed that under specific circumstances and timing, the first annotation in each class (e.g. the first Face annotation) may not be included in the tree until the user causes a manual refresh or the system updates the collection tree because of another user action. I have that fixed too, as well as the sort order (I hope).

It seems that (like in many other languages) the lower case is sorted after the upper case. I could overcome this only by sort case-insensitive but that would be wrong in many other countries. I also assume that most users use a standardized form (Camel Case) when naming persons in images.

This is what I get now:


mastodon

  • Full Member
  • **
  • Posts: 161
Re: Face annotation handling
« Reply #13 on: April 09, 2019, 08:05:03 PM »
That looks good again! (Ö/Ő should come right after O/Ó, but this might because it is an Õ, not Ő) Thank you for your effort and for the detailed explanation.  :)
« Last Edit: April 09, 2019, 08:07:58 PM by mastodon »