Facial Recognition Software For Government Project

Looking for a relaible facial recognition system for a huge government project.


Ahmed, are you looking for door entry, checkpoints, faces in a crowd? Will the subjects be cooperative (as in, look at the camera) or uncooperative (as in people walk by without even knowing the system is there)?

Reliability varies across these forms. Please clarify on that first so we can make better recommendations.

Hi John, the subjects will not be cooperative.

That makes it harder!

The big company recently promoting uncooperative facial recognition is NEC (e.g., this). How well it works, I do not know but I remain skeptical.

The biggest issues with uncooperative facial recognition is the need to get the right angles, sufficient pixel density and high enough image quality to have usable faces to input into the system. This generally means narrow FoVs (~3 meters), low mounted cameras to minimize downtilt, and issues with bright sunlight and low light, even when using WDR and IR. I'd consider these operational concerns just as much as vendor selection.

Do you think your application can work under those constraints?

The government is going to install it in the federal bank so I think it should be fine because most of the cams are indoor.

This raises another question. What portion of the system will be provided by the government, and what portion do you want the vendor(s) to provide? If the government is providing the cameras, what are the camera specifications?

The vendor will be supplying everything.

Speaking in general I wish these “governments” would hire their own scientists who could advise them on what the state of the art is in facial recognition and help them develop the applications of such that benefits them at a given cost. So much better than throwing out an RFP with unrealistic expectations.

Facial recognition is improving quite rapidly, and as it does it opens new opportunities for new applications. But it is still often counter intuitive in terms of its ability to satisfy certain requirements in many applications. One needs to weigh trade offs and that’s challenging without a deeper understanding of the subject, or when you’re evaluating a vendor’s sales pitch.

"Facial recognition is improving quite rapidly, and as it does it opens new opportunities for new applications."

Steve, please share specific video surveillance related examples.

John, when I say it is improving quite rapidly I'm talking about the last 4-5 years advances in deep learning algorithms coupled with the massive performance and cost reductions in GPU based implementations.

I believe the result is not necessarily the holy grail of face recognition based alarm systems, but rather new possibilities. For example, facial detection built into NVRs that automatically tag video with not only motion detection but the probable occurrence of a human face—information that can be used to retain that video longer, at higher quality, or first in search.

Recognition tasks can be used (thinking retail here) for better demographic estimation, to aid in fraud investigations or to augment customer loyalty programs with information about repeat customers. Cost is a factor in the value of these applications, and cost is coming down dramatically.

We may never be able to achieve the accuracy required by face recognition based ‘alarm’ systems. And I fear our obsession with these implementations is causing us to pass up on other applications that can still provide value.

NIST does conduct some facial recognition testing, but the latest released results are several years old. And admittedly lab conditions do not necessarily reflect real world conditions.

John, all, here is what (I believe) is the most recent NIST facial recognition test report.

Relevant excerpt:

"Using poorly constrained webcam images, which exhibit serious departures from most quality-related clauses of published image standards, identification miss rates are typically between two and five times higher such that the correct mate is not found at rank one in 20-60% of searches. Exceptionally, however, the most accurate algorithm fails in only 11.3% of searches"

These tests are made by submitting a subject image and then comparing it against a database of mugshot images.

The problem when you get to uncooperative facial recognition is that you have hundreds or thousands of people passing by cameras per day. Each person passing gets matched against the watchlist / database. So even if you are 99% accurate, across even just hundreds of people a day, you are going to have multiple false alerts. Multiply this by having dozen or hundreds of cameras and less than ideal conditions. The outcome is a non-stop flow of false matches that need to be dealt with (and that most do not want to deal with).

What is the application for Face? Are you simply trying to capture Faces for post forensic searching to see where faces have been or does application require real time alerting/marching? Big difference between Facial Capture and Facial Recognition in uncontrolled environment with uncooperative subjects.

Do you homework and don't oversell the solution, testing in a lab (controlled) vs real world is big difference.

The requirment is for real time processing where by the software should compare the captured picture with the database of pictures uploaded on the system.

Some ideas,

  • You have to do facial detection before facial recognition
  • Facial recognition is not biometry (it match closest face according to a confidence level)
  • Facial detection is well known using HaarCascade

Modern computer vision use DeepLearning instead of Cascade algorithm. This is very tricky because Deep Learning must be done in the cloud. Yann Lecun show some results on a laptop but it's not ready ...

I have tested the NEC NeoFace and Herta BioSurveillance sw. The NeoFace works very well. The cameras in my test : Axis 1MP, Bosch 5MP and Avigilon 1,2,3,5,16 MP. NeoFace is capabile to do recognition from live video, foto data base, recorded video files and snapshot from mobile app. The quality of database foto/live video must be + 70 (+100 ideal) pixels between the eyes. The customer has decided to go with Avigilon camera for a multisite project. The NEC sw is server to web cilent and multiple servers can be connected for speed. Foto data base 10k to 5000k. If you need more info, please contact me directly

NeoFace.

HERTA

"+ 70 (+100 ideal) pixels between the eyes"

Really? That's like 300-400ppf?

The tipical distance between the eyes is 6-9 cm ( 0,06-0,09 meter or 2-3 inch ). The minimal is 40 pixel between the eyes. The system is able to do recognition if the subject is wearing glasses or has eyes closed (forensic ID).

"The tipical distance between the eyes is 6-9 cm ( 0,06-0,09 meter or 2-3 inch )."

Yes, I know. Say 2.5" or .2 feet. You need 70+ pixels over .2 feet or 350 for a foot. That's an incredibly high PPF. Even with a 1080p camera, that's a FoV width of 5.5 feet, which wouldn't ever cover a hallway.

"The system is able to do recognition if the subject is wearing glasses or has eyes closed (forensic ID)."

Sure but with what accuracy? And what type of glasses? Sunglasses? Wire rim glasses? Heavy framed glasses?

The system is able to do recognition if the subject is wearing glasses or has eyes closed.

Maybe even both at the same time,

that is as long as the reference picture was taken the same way...

If the reference foto is good quality 100+ pixels, like the passport id foto,then system will recognise the subject in following situation: sunglasses, wire rim and heavy frame glasses, eye close, with facial hair like mustache or not shaved, some type of head cover, +/- 5 ears aging, moderate facial scars and family related person like brothers or parents. For best performance is recommended that you store 3 photos of the subject in database. The accuracy is score with 0 to 1 and for a positive results score must be at least 0,5. For best results I recommend using cameras with 3+ MP in hallway, check points and 16+MP for wide FOV

John, Here at MorphoTrak, we are looking to achieve 60+ pixels Intra Eye Distance for reliable scanning in real time. Our customers in one transportation facility uses a real time scanning solution, which as Radu points out, is reliable even when the subject is wearing glasses. In another facility, we have had very good success when the subject is wearing a hat, so long as we have an "attractor" prompting the subject to look ahead while we capture the 'best frames" for analysis. I don't want to run afoul of the self-promotion rules, but I think that Ahmed might benefit from having more than one recommended vendor to compare against the use case. So, I would be willing to talk about real time scanning and post event processing of video with face recognition if that would be helpful.

We are starting a large middle eastern airport project this week, with both technologies.

Robert, Radu,

Here is the problem I have with both of your descriptions. They are imprecise.

For example, Radu says "then system will recognise the subject in following situation". But it's never this absolute, unless Radu is saying that it is 100% in these conditions.

For anyone promoting their offering, let's get specific about percentage of top matches, conditions used and equally importantly how many total false matches one had to deal with in a given day / camera set. For example, if you have 1000 people on a watchlist, 1000 pass the camera a day, how many false alarms / mismatches will be displayed, etc.? Are either of you saying it's 0, that your systems never have any mismatches regardless of how many people walk by and that they always accurately match against subjects on the watchlist?

These things are important to understand how much the user needs to tolerate in terms of mistakes.