[APP][Pro] FACE++ Face Recognition for Homey

Face++

Face recognition for Homey

Use snapshots from a camera connected to Homey, and let Face++ do AI based face recognition. For every face the app detects, a flow will be triggered. Homey will automatically try to match the faces to a set of known faces that you can upload yourself. The app will also estimate gender, age, emotion, and whether the person is wearing (sun)glasses or a mask.

Face++

Use cases

  • Presence detection
  • Security
  • Face based access control
  • Fun

Privacy

The Homey app uses a cloud based face recognition service called Face++. Using the Face++ service has severe privacy implications. Use at own risk. Read and understand your local privacy legislation, and the terms of use from Face++.

Performance

The results depend very much on the quality of the snapshots. A face will be best recognized if the lighting is good and when the face is frontal with a width of at least 75 pixels. In practice it means you need to have good control over when the snapshot is taken in a videostream. The free Face++ service allows you to upload around 1 or 2 images per second. The face detection usually is ready within 1 to 3 seconds from uploading an image (via an action flowcard).

Test image

To make testing your flow easier, a test image is available as global image token. It has five faces in it.

Example flow

8 Likes

FACE RECOGNITION IS HERE!

3 Likes

Love it. however app not starting after fresh install.

Is a bug. Has been fixed in 1.0.1

version 1.0.1 is now available on Github. It fixes some small issues.

Any idea where this is coming from?

What did you do when this happened? And where does it pop-up?

By choosing a picture from my iPhone for “adding a new face”. Select the pic from the library and this pops.
App version 1.0.2.
Pic is 312x406, 20KB

I think I broke something in v1.0.2. Will look into it. Thx!

1 Like

Could you check if an app restart fixes it (after saving the API keys)?

Sure.

Restart the app didn’t work.
Needed to disable/enable the app. Didn’t work.
Added api key and secret again, then it worked.

Cool. New version v1.0.3 fixes this.

1 Like

Working, cheers!

1 Like

The app has been released just now in the appstore. Get it here:

1 Like

Great work!
Seems to work fine in my first tests

1 Like

Geniuos! Works perfect on all cams.

1 Like

And what kind of camera’s are you guys using?

I have tested it myself on the Ring Pro, a Foscam FI9900P, and a Maginon IPC-1a (aldi). For all camera’s the tricky part is making the snapshot at exactly the right moment.

The setup that works pretty good for me is this:

  • Use my Ring Pro to do motion detection just outside my front door
  • This triggers face detection from a second camera (Aldi Maginon) that is mounted inside, looking through the window right next to my front door
  • I make snapshots at 0, 1, 2, 3 and 5 seconds interval

result: { origin: ‘Hal’, label: ‘Robin’, confidence: 81.437, token: ‘xxxxxxxxx’, quality: 69.116, gender: ‘Male’, age: 40, emotion: ‘neutral’, normalglass: true, sunglass: false, mask: false }

1 Like

I’m using UniFi camera’s with the Protect app. You can use almost any camera which has a public JPG snap function. Just create a virtual ip camera device and point the url to its public JPG

2 Likes

What I did was create 3 flows.

1st - When -> Motion sensor is triggered -> Enable flow 2 -> Disable flow 2 after 2 minutes
2nd - When -> Every 2 seconds -> Try to find face from camera
3rd - When -> Face detected -> Run wanted actions and disable flow 2

This way you give the detection a starting and end point. It will try for a maximum of 2 minutes to find a face. Seems to work fine.

4 Likes