Software Archive
Read-only legacy content
17061 Discussions

Facial Recognition

Reuben_C_
Beginner
1,828 Views

Hi,

So I just recently downloaded the SDK to try and was interested in the facial recognition part of it. Using the face_tracking sample provided with the SDk, it only shows 1 registered user with the same ID ever, no matter if there are multiple people in the camera view at once or if the first person goes away and a second person enters the camera view.

Am I doing it wrong or do I need to add additional code to make it work?

 

Thanks!

0 Kudos
1 Solution
Xusheng_L_Intel
Employee
1,828 Views

Reuben C. wrote:

The face that is supposed to be saved to that registration ID is wiped each time you unregister someone. Thus the ID would not be the same even if you register the same person again.

I believe what you're talking about Linda, is more like a saved database where each face has an ID already attached to it and whenever it matches a face from the camera to the photo in the database, it returns the user ID saved there. The sample code provided in the SDK only creates a temporary database that saves the data for that session when you press Register, and deletes the data after Unregister is pressed or if the program is closed.

 

That said, I'd really like for someone to confirm if the facial recognition part of the SDK is working/not working, and if there is any timeline for when it will be done if it is not working (if possible).

 

This is known issue for using 2D camera in facial recognition. The register user ID will increase if you are using Intel® RealSense™ 3D Cameras. 

View solution in original post

0 Kudos
10 Replies
yosun
Innovator
1,828 Views

You can just use JavaCV or OpenCV bindings for Java for facial 

0 Kudos
samontab
Valued Contributor II
1,828 Views

Face detection and face recognition are different things. OpenCV comes with a ready to use face detector, but the face recognition classes are still part of the contributed modules, which are still experimental and not part of the core of OpenCV.

I mention this because I assume Reuben is looking for a ready to use implementation, which is not the case in OpenCV yet. The one provided in the RealSense should work out of the box though.

0 Kudos
Reuben_C_
Beginner
1,828 Views

Indeed, I am looking for a ready to use implementation of Facial Recognition. I take it that means the OpenCV one does not work yet?

As mentioned, the one provided in the RealSense SDK does not seem to work properly either. It gives a user ID to the first face shown in front of the camera but it also shows the same user ID whenever any subsequent new faces are shown too.

It was mentioned in a previous post in the Perceptual Computing forums that the facial recognition part of the SDK didn't work but I'm not sure if that has been fixed when they changed to the RealSense SDK.

0 Kudos
Linda_M_
Beginner
1,828 Views

Recently downloaded the Intel Real Sense  SDK  Gold Beta version.  With a 2D camera, the Face tracking and Detection is working fine..But when comes to the recognition part , when we try to Register a user, the Registration id shown is 100. and when we try to unregister it and register again, the id increases by101,102,103...each time we do.

 

Is it the Recognition part is not working or  it a problem with the 2D camera?

0 Kudos
samontab
Valued Contributor II
1,828 Views

Linda, maybe I am wrong, but what you seem to be doing is basically creating a new user each time. That's why you are getting incremental IDs. Basically, every time you register a user, you create a new one. This would explain your problem.

0 Kudos
Linda_M_
Beginner
1,828 Views

But how does the registration id increments every time if I  am registering and unregistering the same user  . if a user is recognized by the system ,then the recognition id for the particular user should be the same  every time,right? But the face recognition part is taking the same registration id for  different persons when we click Register. And  the same person is showing as unregistered when we show the same face again.. .

0 Kudos
Reuben_C_
Beginner
1,828 Views

The face that is supposed to be saved to that registration ID is wiped each time you unregister someone. Thus the ID would not be the same even if you register the same person again.

I believe what you're talking about Linda, is more like a saved database where each face has an ID already attached to it and whenever it matches a face from the camera to the photo in the database, it returns the user ID saved there. The sample code provided in the SDK only creates a temporary database that saves the data for that session when you press Register, and deletes the data after Unregister is pressed or if the program is closed.

 

That said, I'd really like for someone to confirm if the facial recognition part of the SDK is working/not working, and if there is any timeline for when it will be done if it is not working (if possible).

0 Kudos
Xusheng_L_Intel
Employee
1,829 Views

Reuben C. wrote:

The face that is supposed to be saved to that registration ID is wiped each time you unregister someone. Thus the ID would not be the same even if you register the same person again.

I believe what you're talking about Linda, is more like a saved database where each face has an ID already attached to it and whenever it matches a face from the camera to the photo in the database, it returns the user ID saved there. The sample code provided in the SDK only creates a temporary database that saves the data for that session when you press Register, and deletes the data after Unregister is pressed or if the program is closed.

 

That said, I'd really like for someone to confirm if the facial recognition part of the SDK is working/not working, and if there is any timeline for when it will be done if it is not working (if possible).

 

This is known issue for using 2D camera in facial recognition. The register user ID will increase if you are using Intel® RealSense™ 3D Cameras. 

0 Kudos
Reuben_C_
Beginner
1,828 Views

Oh, I see. Thanks for the reply David. I'll just wait for the camera to arrive then.

0 Kudos
DDodg
Beginner
1,828 Views

To me, it sounds like the problem that Linda was having is that she was not saving her database after registering users.

The sample saves the registered user to the 'in memory' database, but if you do not click the Save Database button, it is not written to disk and basically starts over empty each time you run the program.  I made a change to the code to call the Save Database routine after each registration, which corrected this for me.

I have a question of my own though....

I just downloaded the recent update to the SDK and the release notes indicate that the software now allows

"up to 20 people in the database"

I am assuming that this refers to the in memory database used by the software internally.

Do any of the Intel people working on the project know if this limit is going to be a firm problem going forward or it is just while the software is in Beta?  Limiting the number of faces in the recognition database is going to seriously limit the usefulness of the API.

 

Doug Dodgen

 

0 Kudos
Reply