Welcome to Synthiam!

The easiest way to program the most powerful robots. Use technologies by leading industry experts. ARC is a free-to-use robot programming software that makes servo automation, computer vision, autonomous navigation, and artificial intelligence easy.

Get Started
United Kingdom
Asked — Edited

Face Recognition Working On ARC

Here is face recognition working on ARC shown by Mike our lead programmer.

User-inserted image


Upgrade to ARC Pro

ARC Early Access will give you immediate updates and new features needed to unleash your robot's potential!

AI Support Bot
Related Content

Hey, that is very good software. I have Denise Platinum on my desktop. This is very similar. But, you have your Brainfile that is mapped. I don't have that one. And, your animation moves across the screen. Neat. I would like to see it all interfaced together with ARC and your robot and my robot, etc.

By the way, which voice recognition software are you using with Airial?
United Kingdom

Good to hear you have Denise, Guile (3D) is a great friend of mine, he does some amazing work!

The Ai core that you see on the video will be interfaced with the EZ:2 robot when it is complete.

The speech recognition software in this older video was DNS10 (Dragon 10), we now use DNS12. We have had great success with this software, for most of our developers it works out of the box with minimal training.
I don't like the Dragon because it wants me to use a headsetmic all the time. With the windows speech rec that is in ARC, it works fine for me with a mic when I am anywhere in the room.

But, I really do like your extra features.

Guile is a great guy.

Such cool work!
One of my first computer controlled robots had a C=64 for a brain and a relay controller that I built to control the robot arm and drive motors.
That was so many years ago.
I do still have most of that old robot, but my ex has my old computers in storage somewhere.
An EZ-B and servos would be a great upgrade for an old robot.
Your AI will make EZ-B robots much more alive.
Very cool work with everything.
I used a few BigTracks to build a mobile robot with an arm on it.
I used the BigTrack brains to drive the robot and move the arm.
It had some success, but not near as cool as your new BigTrack robot.
Looks very cool.

I adore ur application , would u told me where i could find the source code ,
or where i could download it as plugin .
Man, a plug for ARC in would be great! However I think it's not a reality coming from Tony's design. He uses a lot of his own self designed and built sub components that really do the processing and work. Correct me if I'm wrong but his robot simply uses ARC to send the controlling commands through the EZB to these components to control most of the features of his creation. We would need all the other parts that Tony makes and uses to get this to work in our robots along with the coded plugin.
You can use object training to train your face. It will also do expressions because it's objects. Read the ARC camera manual by pressing the ? Question mark for different tracking types.
Hello @hhammoud ,

If u don't mind , would send me (shaimaabes@yahoo.com) the links u recieve form Toymaker ,I need this toutorial urgently .
You wont be able to use anything from Toymaker without having his custom programmed PIC's that do the work. If you can program in assembler on PIC's then you could do what he does. Dave is right. He uses the EZ-B to send commands to and receive information from his PIC's. He doesn't sell his work outside of his completed robot projects that he is working on.
Like DJ said though, you can use what is in ARCs object detection to do face recognition though. You can also use RoboRealm or some open source stuff that uses Aforge which is a .net wrapper for openCV.
United Kingdom
Dave, you are correct. In the ALTAIR robots the sub-system processors take all the heat (low level) work off the v4 leaving the v4 to do what it does best. David at Cochran Robotics also does this with Rafiki, I feel it is the best way to utilize the v4 controller.

The EZ:1 head is full of networked PICs below is a photo - this is prior to the addition of the face/emotion/gender/age recognition module.

User-inserted image

As sweet as Justin's EZ-Face is I think it's now obsolete. DJ implemented this into the ARC platform so it does much of the same thing. Justin, please correct me if I'm wrong.
@Dave, you are correct. This is the problem with reviving 2 year old threads without checking for current functionality first. Almost every time someone comes up with a good way to extend the functionality of ARC, DJ turns it into a feature within a few weeks to months.

@Alan, @Dave:

Slow down... Face Detection and Face Recognition are two different things.

ARC/EZ SDK has Face Detection, no Face Recognition

Toymaker, EZ-Face (Justin) are first Face Detection and then Face Recognition.

basically Face Detection is something like: Hey i found a Face in X,Y position.

check Face Detection thread to see a Face Detection (EZ SDK) picture.
There are a few libraries like emgu (Opencv Wrapper) that can be used for Face Recognition, is very simple if you are familiar with Visual Studio and c#.

the rocket science is the opencv library....

emgu only implements a wrapper for .net managed/c# otherwise you will need to deep in c++

I'm curious why DJ never implemented the Face Recognition feature in ARC, i'm assuming is not a requested feature ?
@ptp, as I stated earlier in this thread - use the Object tracking type for face detection.

You can find out more about tracking types on the Camera Device ARC manual page here: http://www.ez-robot.com/Tutorials/Help.aspx?id=80

In demos, i have taught the robot different expressions using the object tracking as well - it can tell if i'm happy or sad. Here's a copy/paste of the two tracking types in question...

The face tracking type will attempt to detect faces within the image. The Face tracking uses calculations to detect eyes and a mouth. This does require additional processing and will slow the framerate. Also, detecting images within a video stream with many complicated objects will return false positives. Use the Face Tracking against a white wall or non-complicated background. If you wish to detect specific faces, use the Object Tracking type, as you can train your face as an object.

This is an advanced computer vision learning tracking type that gives you the ability to teach the robot an object (such as a face, logo, etc.) and have it detect it. Computer vision learning is very experimental and requires patience and consistent lighting. The object training is done in the Object tab, which is settings for the object. Remember, settings for specific tracking types are configured within their tab in the Camera Control. Some tracking types have additional setting/parameters within the Camera Settings (gear icon).


Slow down... Face Detection and Face Recognition are two different things

As DJ said, Object recognition recognizes specific faces as well as other objects. It was added to ARC after EZ-Face and works just as well at face recognition (not just detection).

Like I said, responding to 2 year old threads without checking current capabilities of the product are counter-productive.