When building mobile, on-edge, or embedded face recognition applications, there is typically a small amount of memory (i.e. RAM) available. If a face recognition algorithm requires an extensive amount of RAM to perform enrollment and matching, then this could increase the hardware costs or, in the case of many embedded applications, wholly prevent the concept.
The latest versions of the NIST FRVT Ongoing benchmark are the first to ever provide the peak memory usage for each benchmarked algorithm, which measures how much memory is required to load an algorithms software libraries and statistical models.
Unfortunately to developers of embedded applications, most of the algorithms benchmarked in FRVT use too much memory to operate in such resource constrained applications.
One of several reasons that Rank One has emerged as a leading solution provider for embedded systems (e.g., smart doorbells, automobiles, access control), mobile phones (e.g. device unlock, on-device search), and on-edge applications (e.g., smart security cameras) is that the algorithms shipped in the ROC SDK require significantly less memory than competing solutions.
According to the FRVT efficiency statistics (Tables 6 to 10 in the 6 January, 2020 FRVT Ongoing report), Rank One’s most recent algorithm used a mere 70MB of memory, lower than any other vendor with competitive accuracy rankings (the only vendors using less memory were 50x less accurate). The median memory usage across the 195 algorithms benchmarked was 730MB, and compared to certain face recognition vendors that advertise mobile face recognition solutions, Rank One uses up to 25x less memory.
Here is a breakdown of the memory usage of Rank One versus relevant competing solutions:
Rank One’s ability to deliver software libraries that use such little memory respective to other solutions is based on a variety of trade secrets. The result of these techniques, though, is a unique offering in terms of both high-end accuracy and enough efficiency to operate on extremely low-cost hardware required in embedded systems.
For cases where even 70MB of memory is too much (as is the case for certain Rank One partners), Rank One also ships a secondary “Fast” algorithm which uses less than 10MB RAM.
Memory usage is one of several critical efficiency factors to consider when procuring a face recognition algorithm. Read more about this this topic and other related procurement considerations: