• Welcome to the Lightroom Queen Forums! We're a friendly bunch, so please feel free to register and join in the conversation. If you're not familiar with forums, you'll find step by step instructions on how to post your first thread under Help at the bottom of the page. You're also welcome to download our free Lightroom Quick Start eBooks and explore our other FAQ resources.
  • Stop struggling with Lightroom! There's no need to spend hours hunting for the answers to your Lightroom Classic questions. All the information you need is in Adobe Lightroom Classic - The Missing FAQ!

    To help you get started, there's a series of easy tutorials to guide you through a simple workflow. As you grow in confidence, the book switches to a conversational FAQ format, so you can quickly find answers to advanced questions. And better still, the eBooks are updated for every release, so it's always up to date.
  • Dark mode now has a single preference for the whole site! It's a simple toggle switch in the bottom right-hand corner of any page. As it uses a cookie to store your preference, you may need to dismiss the cookie banner before you can see it. Any problems, please let us know!

Can I search (or form collection) of unrecognized people?

Status
Not open for further replies.

Linwood Ferguson

Linwood Ferguson
Lightroom Guru
Joined
Jan 18, 2009
Messages
2,587
Location
Fort Myers, FL
Lightroom Experience
Advanced
Lightroom Version
Classic
Lightroom Version Number
9.2.1
Operating System
  1. Windows 10
Is it possible to find all photos which have face regions determined that are not yet confirmed?

I can go into the faces view and see the unrecognized faces, and individually expand a face to see its photos, but I do not see how to show all images (e.g. in a grid library view) which have at least one unconfirmed or untagged.

I've got a lot of old photos and want to pull out the ones who have faces I do not know, so I can put them on a web site for my relatives to review as well.

It looks like JF's Data Explorer will do counts of people tagged, but only those with confirmed names (see Jeffrey's "Data Explorer" Lightroom Plugin). Clearly the number tagged but not confirmed must be known somewhere. I've posted a question to his site.

But there are so many plugins, hoping someone might know of other possibilities? Or even a native way?

PS. To be clear, if an image has no face regions at all, I do NOT want it in this collection either; along with excluding those where all regions are confirmed.
 
I got a quick response from JF. He says:

Unfortunately, no, faces are hidden from plugins until confirmed. )-; —Jeffrey

So maybe I'll see if I can do some SQL magic. Why would Adobe hide that fact, how many are not yet done is probably more significant than the number of faces done, or at least that any are un-done.
 
Why? Simply because SDK development has been very limited since the early days of LR, well before the face tagging.
 
The Any Filter plugin has a predefined query "Unconfirmed Faces" that finds all photos with at least one face rectangle with no assigned name:

1589222416857.png


But it is slow, since it searches the metadata stored in the photo files (rather than the catalog) using the Exiftool utility.
 
But it is slow, since it searches the metadata stored in the photo files (rather than the catalog) using the Exiftool utility.
Interesting. I'll give it a try. I see it reads both files with metadata inside and sidecars. I was busy trying to find this in SQL, but this may be a lot easier.
 
Wow, despite noting above I needed to have the metadata written I tried it twice before remembering to save metadata. :( If it's possible (and you can tell) you might consider a warning popup if file metadata is needed and not current, for those too stupid to remember for 5 minutes.

The collection afterwards looked correct. And the volume I'm doing for old photos is small. This looks like it will work fine.
 
Unfortunately, there isn't any way for a plugin to know whether the metadata needs to be written. (Even LR itself often gets the metadata status wrong.) When you build a new query with the Faces criterion, it has a buried warning:

1589240734436.png
 
Also, if you anticipate doing this more in the future, set the option Catalog Settings > Metadata > Automatically Write Changes Into XMP.
 
So this does not work, and it is (I think) Lightroom's fault.

The issue is with cropped photos. Face Recognition appears to operate on the uncropped image (also the undeveloped image). So in this example, I cropped the image to include one person, then later ran face recognition on it, and identified the person. The result looks like this:

NoUnconfirmed.jpg

It's small somewhat on purpose, but you can see on the bottom line it does NOT show anything "unnamed".

However, reset the crop so you can see the whole image:

Unconfirmed.jpg


Now, with no additional action, it shows an unnamed person.

Thinking maybe this was grabbing that new face AFTER i uncropped, I reset the face recognition for it, ran it cropped, and checked the unnamed people, and the background face is appearing even when not visible in the cropped image.

AnyFilter is then doing exactly the right thing, which makes it totally useless. It is finding the unnamed face even though the face is not displayed in the image. So when I try building a collection of images with un-recognized faces, I am most definitely NOT interested in those cropped out, but they are still seen as unrecognized.

Why in the world is Lightroom operating on cropped out areas of the image?!?!
 
So this does not work, and it is (I think) Lightroom's fault.

The issue is with cropped photos. Face Recognition appears to operate on the uncropped image (also the undeveloped image). So in this example, I cropped the image to include one person, then later ran face recognition on it, and identified the person. The result looks like this:

View attachment 14850
It's small somewhat on purpose, but you can see on the bottom line it does NOT show anything "unnamed".

However, reset the crop so you can see the whole image:

View attachment 14851

Now, with no additional action, it shows an unnamed person.

Thinking maybe this was grabbing that new face AFTER i uncropped, I reset the face recognition for it, ran it cropped, and checked the unnamed people, and the background face is appearing even when not visible in the cropped image.

AnyFilter is then doing exactly the right thing, which makes it totally useless. It is finding the unnamed face even though the face is not displayed in the image. So when I try building a collection of images with un-recognized faces, I am most definitely NOT interested in those cropped out, but they are still seen as unrecognized.

Why in the world is Lightroom operating on cropped out areas of the image?!?!
Ferguson,

To be clear, the "it" in your second paragraph refers to Lightroom, not to AnyFilter? Right?

Phil

PS: Your experiments here raise yet another issue around LR's facial recognition. Maybe we should all go to the Adobe Photoshop Lightroom (stupid name) and bombard them with messages about this issue.
 
To be clear, the "it" in your second paragraph refers to Lightroom, not to AnyFilter? Right?
Well, yes and no. I think the fault is fundamental to lightroom with the concept of keeping and counting face regions outside the crop boundary, but the "it" I really meant was that AnyFilter was pointless in trying to find unrecognized faces if it is going to find faces that are not visible.

Adobe would probably say "works as designed" and that you should do face recognition before cropping or some such. but to me if I can't see a face region it shouldn't exist. And indeed inside LR it doesn't show it -- but it's there AND -- Just to be clear -- it shows up in the list of people to be identified.
 
With respect to LR itself, it's inconsistent in how it handles cropped photos. In Loupe view, it only shows face rectangles and face labels that appear within the crop. But in People view, it shows all faces and labels regardless of whether they are in the crop.

Original uncropped:
1593197570369.png


Loupe view of cropped image:
1593197623577.png


People view invoked on cropped image only:
1593197719568.png


I can't think of any use-cases that might motivate this behavior. The designers of the feature may not have given it any thought.
 
With respect to Any Filter, as you discovered, it searches face rectangles within the uncropped images. When I implemented the Faces criterion, I didn't give any thought to the issue of cropped versus uncropped. Your use case makes perfect sense, but I have at least one customer who is interested in searching the uncropped images.

Any Filter should provide both Faces and Cropped Faces as criteria -- I've added it to the wishlist. While LR does store all the cropping information in the metadata, it's in a hard-to-manipulate format used internally within the Camera Raw engine. I have the code to do that in my Any Crop plugin, but it needs to be refactored.

I looked at Friedl's Data Explorer plugin, which has some criteria for examining face data, and it discovers uncropped faces using a method even slower than Exiftool -- exporting small versions of each image being searched.
 
Last edited:
Is it possible to find all photos which have face regions determined that are not yet confirmed?
Revisiting this, I realized there's a way to do this without a plugin, though it will find unlabeled faces that aren't in the cropped portions of photos:

1. Put all the photos you want to search in a folder or collection by themselves (e.g. the Quick Collection).

2. Do View > People View.

3. In the Unnamed People section, select all the unnamed faces: click on the first face then shift-click the last face. (Cmd/Ctrl-A won't work here, because it selects named faces also.)

4. Type S to expand all the face stacks.

5. Select all the unnamed faces again, as in step 3. (You have to do this a second time, since the faces expanded in step 4 won't be selected.)

6. Do View > Grid View.

7. All photos with at least one unnamed face (in the uncropped version) will be selected. You can add these to a collection or whatever.
 
@johnrellis I'm be curious what use case someone has for the cropped portion of the image and faces there. Not saying there are none, just struggling to come up with why anyone cares?

As to your last suggest I'll give it a try. It sounds actually much easier than AnyFilter because I don't have to write metadat (easy is perhaps the wrong word, but writing metadata to thousands of photos kicks off all sorts of unpleasant behavior like cloud backup dating for anything not raw).
 
Two use cases for including the cropped-out areas:

- Once I've finished face-tagging a set of photos, I want to delete all the incidental face rectangles for unknown people who happened to have been caught in the background or in large group photos (e.g. team photos). That will stop them from appearing in the Unnamed People section. Since People view shows all face rectangles even if they're in cropped-out areas, it's important that I find and delete these.

- An Any Filter customer often crops photos to specific people for short-term needs. But she often goes back, resets the crop, and crops to some other person. She could use virtual copies for this but doesn't.
 
Thanks. The latter I had not considered. The former seems easier though to just do by selecting the unnamed faces and deleting the face region.
 
The former seems easier though to just do by selecting the unnamed faces and deleting the face region.
I like to double-check the photos before I mass-delete the unnamed face rectangles. And for some subsets of photos, I query for photos with at least, say, 4 unnamed faces.
 
Status
Not open for further replies.
Back
Top