Panoptes Command Line Tool

The panoptes command line tool allows you to learn and recognize persons in images. It also provides you with tools to manage persons in a person directory.

Panoptes stores person-related information in a database file named safr_person.db that is by default stored in your home directory.

To install panoptes:

  1. Decompress the tar.gz file you have received. The result is a directory with the name panoptes in your current directory.
  2. Push this directory and all its subdirectories with adb push to a suitable home folder on your device. The Panoptes tool can be found inside the panoptes folder.

Note: Many embedded Linux versions set home directory to /.

Panoptes automatically creates the database file if it doesn’t already exist, and it updates the database file if it does already exist. You can point panoptes to a database file stored in a different location by setting the environment variable PANOPTES_DB_PATH before you invoke panoptes. The value of this variable should be an absolute path to the desired database location.

You invoke panoptes with an action and action specific parameters. You can see what commands panoptes supports by running panoptes --help, as shown below.

> panoptes --help
panoptes <action>
Where <action> is one of:
analyze   <path to image(s)> [-Ckey=value ...]
analyze-highres <path to low-res image> <path to high-res image> [-Ckey=value ...]
learn     <path to image(s)> [-Dkey=value ...] [-Ckey=value ...]
recognize <path to image(s)> [-Ckey=value ...]
benchmark <path to image(s)> [-Dkey=value ...] [-Ckey=value ...]\n
remove    <person id>
list      [person id]
edit      <person id> [-Dkey=value ...] [-Rkey ...]
encrypt   <new password>
-Dkey=value       define person metadata key-value pair
-Rkey             remove person metadata key-value pair
-Cmin-cpq=value          the required minimum center pose quality [0 - 1]
-Cmin-cq=value           the required minimum contrast quality [0 - 1]
-Cmin-sq=value           the required minimum sharpness quality |0 - 1]
-Cmin-confidence=value   the required minimum confidence [0 - 1]
-Cmin-search-size=value  the minimum face width/height in pixels for detection
-Cmin-size=value         the minimum face width/height in pixels for acceptance
-Cselect=value           the face selection policy: 'any', 'largest' or 'at-location'
-Cloc-x=value            the X coordinate of the location if selection policy is at-location
-Cloc-y=value            the Y coordinate of the location if selection policy is at-location
-Cmax-threads=value      the maximum number of threads to process detection and recogniton (0 - auto detect, 1-100 actual number of threads)
-Cfr-model=value         face recognition model (regular, masked). regular - default
-Cfr-optimization=value  face recognition variant optimized for speed vs accuracy (speed, accuracy). speed - default
-Cfd-type=value          face detector type (normal, high_sensitivity). normal - default
-Cfd-enable-liveness=value  use liveness detection (true / false), default - false
-Cfd-liveness-mode=value liveness detection mode (none, last, avg, min, max), default - min
-Cfd-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
-b                       generate benchmark output (used with learn or recognize actions)
-do                      Run detection only (used only with benchmark action)
-wo                      Write output of all models to stdout (used only with benchmark action) 
-Brd=N                   Repeat detection (and recognition if applicable) N times per image.
-Omodel-size=(n|t)       Model size for object/person detector (benchmark action only) (n - normal, t - tiny)
-Oinput-size=(s|n|l)     Input size for object/person detector (benchmark action only) (s - small, n - normal, l - large)
-Omodel-precision=(fp32|fp16|int8)       Model precision for object/person detector (benchmark action only)
Environment variables:
PANOPTES_DB_PATH         if set, specifies the path and file name for the person store file
PANOPTES_DB_PWD          if set, specifies the password for the person store file
PANOPTES_LICENSE         if set, specifies the panoptes license

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

export PANOPTES_LICENSE=<license key>

This command should be added to your shell startup script to ensure it is executed for every new shell window you open.

See Also