FaceFind Sample App

The facefind sample app allows you to learn persons from a provided image and recognize learned persons in images contained in a provided directory.

The syntax of facefind is described below.

facefind usage:
<path to image with face which should be learned for recognion: "face.jpg"> <path to image(s) on which face should be recognized: "dirWithImages"> [-r] [-sort] [-min-size=value] [-min-search-size=value] [-min-confidence=value] [-fd-type=value] [fd-high-sensitivity-resolution=value] [fr-model=value] [-fr-optimization=value] 

Where:
[-r]                          Recursively search all subdirectories in given path
[-sort]                       Output all matches sorted by confidence score
[-min-confidence=value]       Required minimum confidence[0 - 1], default = 1
[-min-search-size=value]      Minimum face width/height in pixels used for facesearch during detection[15-720], default = 40
[-min-size=value]             Minimum face width/height in pixels for recognition acceptance[1 - 720], default = 146
[-fr-model=value]             Face recognition model (regular, masked). regular - default
[-fr-optimization=value]      Face recognition variant optimized for speed vs accuracy (speed, accuracy). speed - default
[-fd-type=value]              Face detector type (normal, high_sensitivity). normal - default
[-fd-high-sensitivity-resolution=value] High sensitivity face detector model input resolution. 640x480 - default
     Available resolutions:  1280x720, 720x1280, 640x480, 640x640, 480x640, 480x480, 480x320, 320x480, 320x240, 320x320, 240x320, 240x240, 128x128 

Environment variables:
PANOPTES_LICENSE         if set, specifies the panoptes license

Note: You have to set the PANOPTES_LICENSE environment variable to the license key that you’ve received from RealNetworks before you invoke panoptes. On a POSIX comparability system you can do this by executing the following line in a shell window:

export PANOPTES_LICENSE=<license key>

This line should be added to your shell startup script to ensure that it will be executed for every new shell window you open.

Installation

Decompress the zip file that you have received. The result will be a directory with the name ‘facefind’ in your current directory. The facefind app is inside this folder.

Usage

Facefind.exe C:\images\personA\personA1.jpg C:\images\personA\

For recursive directory search, run the following command:

Facefind.exe C:\images\personA\personA1.jpg C:\images\personA\ -r

To override the defaults for learning/recognition, run the following command:

Facefind.exe C:\images\personA\personA1.jpg C:\images\personA\ -r min-search-size=30 -min-size=30 -min-confidence=0.5

To override face detector and face recognizer settings, run the following command:

Facefind.exe C:\images\personA\personA1.jpg C:\images\personA\ -r -fd-type=high_sensitivity -fd-high-sensitivity-resolution=640x640 -fr-model=masked -fr-optimization=accuracy

Output

When the app is processing images, it logs the progress as:

Analyzing image 2 of 23 image(s)...

If a face is learned from a given image and recognized in an image from a provided folder, the output contains the confidence, location, and size of the recognized face:

C:\images\personA\personA2.jpg - 98% match @ x=321, y=211, width=89, height=102

Otherwise, the app will output the following message:

No faces recognized in image.

If -sort is used, all face matches will be printed out, sorted by their confidence scores in descending order.

Total matches: 5
1. /home/images/personA/compare_5.jpg,        100.00% match,         (x, y, width, height): (356, 67, 304, 389) 
2. /home/images/personA/compare_4.jpg,        89.30% match,         (x, y, width, height): (728, 547, 987, 1334) 
3. /home/images/personA/compare_2.jpg,        41.32% match,         (x, y, width, height): (1122, 195, 391, 494) 
4. /home/images/personA/compare_1.jpg,        32.25% match,         (x, y, width, height): (1106, 55, 564, 575) 
5. /home/images/personA/compare_3.jpg,        26.15% match,         (x, y, width, height): (1136, 159, 281, 376) 

Stopping

If you want to stop the app during execution, press Ctrl-C.

See Also