Face recognition and jpg Metadata Tagging – using Facebox and ExifTool
I have been working on a fun little project this week. Like most people, I have thousands of unorganized photos on my home network, they are in random folders all over the place. I know I have photos of weddings, birthdays, hikes, vacations, etc.. but they are buried in random places all over my network. Sometimes they are in a folder with a descriptive name like ‘Moab 2008’ but sometimes they were dumped in a hurry and ended up in a folder like ‘crap from phone.’ Last week I was in charge of making a wedding video for my sister in law, I know have lots of pics of her, but I was searching through folders for at least an hour and only came up with a few. The face grouping on Google Photos helped a little, but some of these photos have been around a lot longer than Google Photos. I need some way to organize my photos locally. That is where Facebox comes in…
Facebox is a piece of software made by MachineBox (https://machinebox.io/). They claim to be super easy to use and be able to start recognizing photos in just a few minutes. I have actually wanted to test this out for a couple months, but it seemed to be an intimidating project. I thought I would have to learn a bunch of complicated stuff before I could actually use it. Turns out it actually is pretty easy to use. All you have to do is send two POST commands to a webservice end point.
The first command is to teach a face:
curl -X POST -F ‘file=@/home/jaron/jaronteach.jpg’ ‘http://localhost:8080/facebox/teach?name=jaron&id=jaronteach.jpg’
The second command is check a photo for faces:
curl -X POST -F ‘file=/home/jaron/test.jpg’ ‘http://localhost:8080/facebox/check’