facerecognition
facerecognition copied to clipboard
Review Unknown Faces
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.~
Hi eibex, how did you solve the problem ?
I didn’t, the issue is open. It’s not a problem/bug, it’s a feature request.
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?
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]]'
;
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.
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
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