Ideas to improve Aperture’s Faces feature

April 15, 2010 by Juergen Specht · 8 Comments 

Aperture's Faces feature

I must say that I really like Aperture’s Face Detection feature. Its not perfect and takes a loooong time to run initially on your photo library, but its impressive nonetheless. Rarely I learned that much about the pictures I have taken over the last years.

However, no new technology comes without flaws and while I really like the interface of Aperture, I have a few ideas how to make it more useful in future versions.

More heuristics

Aperture is targeted for the professional photographer and what professional photographers often do is to shoot many pictures of the same people in a short amount of time. The face detection feature could use heuristics like “If there is a confirmed face of Mary shot at 1:00:01 and there is a confirmed face of Mary at 1:00:05 and there are detected faces in the pictures in between the time frame, the likelihood that the face belongs also to Mary is very, very high“.
For all my studio shootings, this would be a real time saver.

There could be probably more heuristics for faster organization and better detection of faces like taking color and background color into consideration. Pictures taken at events or in clubs often have a particular color to them (think gel’ed lights) which could cluster them somehow together.

Timesaving shortcut buttons

Currently there is only one way to select a huge amount of suggested faces in the “Mary may be also in the photos below” feature at once: You can drag a rectangle around all these pictures and they all turn into a green “Mary” marker. However, sometimes Faces finds more non-matching faces, so it would be more easy to toggle the selection into a red “Not Mary” and then just toggle the few Mary’s with one click into a green “Mary“. My point here is to toggle between a negative selection “None of these faces are Mary” or a positive selection “All of these faces are Mary“.

It could be implemented in 2 ways, the first idea would be 2 additional buttons like “Reject all” and “Select all” or a single toggle button like “Revert selection” which would turn on click all red “Not Mary” into a green “Mary“. This definitely would save time because after a selection, you only have to click the few Mary’s to turn them into a positive identification when there are less Mary’s in the picture than non-Marys, or vice-versa.

Bigger target buttons

One of the most subtle, but biggest improvement between Aperture 2 and Aperture 3 was the size of the controls…they grew just a little bit, but now they are much more easy to find and handle, especially on huge screens. Unfortunately the “Done” and “Cancel” buttons of the face detection are too tiny to make it easy to hit them. Make them just a bit bigger in the next update, please.

Priority Processing

For huge photo libraries like mine, it takes ages to process all the images. However, its implemented as a background process taking very little resources (if you have a powerful computer like I have). The good thing is that my computer is completely responsive and nothing slows down while the face detection does its thing. However at night when I am sleeping, the computer could speed the processing up and process more pictures in a shorter time. Again, this could be done with heuristics: “If its night and there was no mouse-move and no keyboard input in a certain time frame and the screensaver or screen energy saving is running, then ramp up the processor cycles for the background processing of the face detection.“.
As soon as the operator wiggles the mouse or presses a key to get the computer out of screen saver mode, the background processing could slow down a bit to not interrupt the foreground processing. Again, this would be a real time saver.

These are the features I would like to see in the next update of Aperture, but if somebody would pay me for thinking more, I am sure I could come up with many more ideas to make the Faces feature more pleasurable to use.

Comments

8 Responses to “Ideas to improve Aperture’s Faces feature”
  1. Marcello says:

    i’m playing with the same feature in picasa and i have to say it’s pretty impressive.
    it’s taking ages to process my ~50K pictures library, (around 20% after 4-5hours running) and it’s not as smart as aperture since you can definitely feel that it’s running in the background. but the level of accuracy is really incredible.
    there are very little false positives (and when they happen it’s funny to see that the two totally unrelated people really look alike!).

    Now i just have to find out where it stores the “id library” so i won’t have to go through the process again…

    • Yes, I heard that Picasa’s face detection is even better than Aperture’s, but the interface is so much better in Aperture.
      Aperture stores everything in a SQLite database, but I believe when I am done, I have several million faces in there…I shot so many groups and it detects even blurry pictures in the background. Will definitely report how many it found in the end.

      • Marcello says:

        yeah, same problem here too. i’m no longer that enthusiastic about it ;)
        i shot many pictures at protests and concerts, so it detected thousands of blurry faces.
        the problem is that some of them are recognizable to me, so i tagged them.
        and now it bunches hundreds of blurry faces to the same person and it’s a pain to remove the wrong images.

        oh, it took around 30hrs to process all my pictures.

        • Its still scanning my library, arrrgh! :)
          Yeah, if there would be some feature which allow to remove some folders/events/projects from face detection, that would be useful.
          Basically the face detection is too good, but I definitely don’t know everybody I ever photographed, especially not the blurry people in the backgrounds.

          I guess we can agree this needs work. The people who created the face detection were probably so focused on their technology and they did a great job. But the people who integrated this into an organization tool never thought it fully through…

  2. Alexander says:

    Good points about the face detection, Juergen. May I add some points from my wishlist? I’d like to assign categories or folders to faces. On my faces corkwall there are approx. 70 faces. Many of these are e.g. of colleagues, distant relatives and other people of whom I don’t take pictures regularly. On the other hand, there are members of my immediate family and close friends of whom I’ve taken hundreds of pictures. Aperture doesn’t support categorizing these faces into groups like “important faces” and “not so important faces”.

    There ought to be a sorting mechanism: Faces that appear in many pictures should rank higher than faces with only one or two instances. Another way would be folders: put all work-related faces into a folder and make them invisible unless I open that folder.

    The flat list of all faces is not sufficient.

  3. Yeah, all good ideas! What becomes rather clear after spending some time with Faces is that its an impressive and fantastic feature which has great potential, but obviously Apple didn’t spend any time *using* the feature on a rather big library or they would have seen the short comings of actually trying to work with it.

    Looking forward to updates, because basically I love the feature but not the current limitations.

  4. Florenz says:

    hi Juergen,

    regarding the “priority processing” problem: all Unix systems had that for a long, long time, called a “nice” level. A process can be given a nice level, expressed as an integer between a negative and a positive end value, like between -10 and 10. Default for all user processes is 0. Only root can set a nice level <0, or in other words, only root can be "not nice". The OS scheduler usually runs a process for some time, then kicks it off the CPU und runs the next in the queue. But it takes into account the nice level of the waiting processes – the nicer you are a a process, the more other processes with lower nice levels you let pass and run before you.

    That means: if you want something to "eat" unused resources you don't consume, set it's nice level higher than that of the stuff you want to run first.

    Should I someday find 99 EUR lying around I'll get the Aperture upgrade and play around a bit. At the moment, version 2 does all I want (apart from camera profiles, sigh), so you'll have to try for yourself.

    Warning: nice levels don't always work as expected in Leopard, and it might be a challenge to get that thread of the gazillion threads that it starts… so it's probably safer to ask for that feature ;-)

    regards
    Florenz

    • Hi Florenz,

      I actually tried to play with the nice levels in Snow Leopard, but they play even less nice than in Leopard ;)

      I guess its because Snow Leopard is already optimized for multi-processor cores and nice is a kind of relict from the time we had only one processor…scheduling became way more complicated than it used to be!

      About the update: wait. Wait and wait. Aperture 3 is beta quality, even after 3 point updates. It works most, but not all of the time. I made the mistake to subscribe to Apple’s Aperture forum and I hardly ever heard so much whining…the software has great potential, but they introduced more bugs and “lags” than necessary. Maybe 2 or 3 more point updates and it becomes usable again. Aperture 2 was way more stable and use-able…these days I need a lot of patience and anger management to cope with Aperture 3. If all would work, it would be an awesome piece of software. Grrr…Apple wastes too much time bitching about Flash than actually make their software work.