facerecognition icon indicating copy to clipboard operation
facerecognition copied to clipboard

Review Unknown Faces

Open eibex opened this issue 3 years ago • 7 comments

Hello,

This is more of a feature request than a bug. Would it be possible to group together all pictures with "Unknown" faces?

The app did a decent job at recognizing most people (model 4) based off the initial names I gave it. However, I am finding that many pictures have faces recognized in them but not attributed to any cluster (and I am not asked about it even if two pictures are the same).

Currently I am going through all my pictures to check if there are any "Unknowns", but having them grouped together would help greatly.

~~It would also be nice if you could re-analyze pictures with an unknown (with new settings parameters).~~ ~EDIT: I believe the application already does this after playing around with it more and reading more of the docs.~

eibex avatar Nov 02 '21 22:11 eibex

Hi eibex, how did you solve the problem ?

Tzwaehno avatar Nov 23 '21 07:11 Tzwaehno

I didn’t, the issue is open. It’s not a problem/bug, it’s a feature request.

eibex avatar Nov 23 '21 07:11 eibex

When I'm thinking about this I'm imagining a page like you see for a Person, thumbnails of all the photos they're in, and a "show all groups" button at the bottom. Is this something like what you're thinking?

boyddensmore avatar Mar 05 '22 02:03 boyddensmore

In the short term I whipped up this SQL to find any images with unknown faces and then (using an ugly array of replacements and concatenation) output a URL to the file. In my terminal I can just ctrl-click these URLs and they open in my browser. More of a workaround than a solution.

Interesting though that the app is no longer telling me there are faces to group but this query shows me just over 5000 faces. Through this clustering process I have almost completely avoided using Ignore or I Don't Know because I wanted to keep the data set as clean as possible

select distinct replace(concat('https://[[HOSTNAME]]/index.php/apps/files/?dir=/', replace(replace(path, files.name, concat('&scrollto=', files.name)), 'files/', '')), ' ', '%20')
from oc_facerecog_images images
    left join oc_facerecog_faces faces on faces.image = images.id
    left join oc_facerecog_persons persons on persons.id = faces.person
    left join oc_filecache files on files.fileid = images.file
where persons.name is null
    and persons.user = '[[USERID]]'
;

boyddensmore avatar Mar 16 '22 22:03 boyddensmore

Hi all, Sorry the delay..

Just comment that lines.

https://github.com/matiasdelellis/facerecognition/blob/master/lib/Controller/ClusterController.php#L185-L186

...and it will offer you to tag absolutely all the faces.

matiasdelellis avatar May 11 '22 22:05 matiasdelellis

Hi all, Sorry the delay..

Just comment that lines.

https://github.com/matiasdelellis/facerecognition/blob/master/lib/Controller/ClusterController.php#L185-L186

...and it will offer you to tag absolutely all the faces.

Is it still a valid link? Now it leads to this piece of code:

			foreach ($personFaces as $personFace) {
				$image = $this->imageMapper->find($this->userId, $personFace->getImage());

Commenting this out will break the code

witchcraftsman avatar Mar 22 '23 12:03 witchcraftsman

I believe you'll want to comment out lines 181 and 182 now. We don't want to continue past a person with only one found face, we want to include them.

if (count($personFaces) === 1) continue;

https://github.com/matiasdelellis/facerecognition/blob/master/lib/Controller/ClusterController.php#L181-L182

boyddensmore avatar Mar 22 '23 14:03 boyddensmore