Configuration

The service allowed two variant of configuration:

  1. use the Configurator service

  2. use the configuration file

The service reads settings from the configuration file by default.

You can specify the –luna-config option for pulling settings from the Configurator service, see configurator.

Auto reload configuration

The service supports an auto-reload of configurations. You can enable this feature by specifying a config-reload option in the command line. The service periodically checks new settings. If current settings and new pulled settings are the same the service will not perform any actions. You can specify the check period in the pulling-time command line argument (10 seconds by default).

If a configuration fetching has failed, the service will work without applying any changes to the existing configurations.

If check connections with the new configuration have failed, the service will retry pulling new configuration after pulling-time seconds. The service will shut down after 10 failed attempts.

Warning

Service can work incorrectly while the new settings are being applied. It is strongly recommended not to send requests to the service when you change important settings (database configuration, work plugins list, and others).

Configuration file for administrator

# LUNA Plugin Administrator configuration file

[LUNA_CONFIGURATOR]

#: [integer] load configs from LUNA Configurator
USE_CONFIGURATOR = 0
#: [string] LUNA Configurator protocol, IP address, and port
LUNA_CONFIGURATOR_ORIGIN = http://127.0.0.1:5070
#: [integer] API version of the LUNA Configurator
LUNA_CONFIGURATOR_API  = 1


[LUNA_REMOTE_SDK_LOGGER]

#: [string] folder, where logs are saved (relative path begins in directory with application)
FOLDER_WITH_LOGS = ./
#: [string] level of debug print, by priority: "ERROR", "WARNING", "INFO", "DEBUG"
LOG_LEVEL = INFO
#: [string] time format used in log records: "LOCAL" or "UTC"
LOG_TIME = LOCAL
#: [integer] maximum log file size in megabytes before performing rotation (0 - without rotation)
MAX_LOG_FILE_SIZE = 1024
#: send log to stdout
LOG_TO_STDOUT = 1
#: send log to file
LOG_TO_FILE = 0
#: allow multiline stack trace in logs
MULTILINE_STACK_TRACE = 1


[LUNA_MONITORING]

#: [string] storage type
STORAGE_TYPE = influx
#: [integer] send data for monitoring to InfluxDB
SEND_DATA_FOR_MONITORING = 1
#: [string] InfluxDB 2.x workspace
ORGANIZATION = luna
#: [string] InfluxDB 2.x authentication token
TOKEN = kofqt4Pfqjn6o0RBtMDQqVoJLgHoxxDUmmhiAZ7JS6VmEnrqZXQhxDhad8AX9tmiJH6CjM7Y1U8p5eSEocGzIA==
#: [string] InfluxDB 2.x bucket name
BUCKET = luna_monitoring
#: [string] InfluxDB IP address
HOST = 127.0.0.1
#: [integer] InfluxDB port
PORT = 8086
#: [integer] use HTTPS to connect to InfluxDB
USE_SSL = 0
#: [integer] frequency of sending monitoring data to InfluxDB (in seconds)
FLUSHING_PERIOD = 1

[LUNA_LICENSES_ADDRESS]

#: LUNA Licenses protocol, IP address, and port
ORIGIN = http://127.0.0.1:5120
#: API version of the LUNA Licenses
API_VERSION = 1

[LUNA_IMAGE_STORE_FACES_SAMPLES_ADDRESS]

#: LUNA Image Store protocol, IP address, and port (for samples)
ORIGIN = http://127.0.0.1:5020
#: API version of the LUNA Image Store (for samples)
API_VERSION = 1
#: *bucket* name, where samples will be stored
BUCKET = visionlabs-samples

[LUNA_IMAGE_STORE_BODIES_SAMPLES_ADDRESS]

#: LUNA Image Store protocol, IP address, and port (for samples)
ORIGIN = http://127.0.0.1:5020
#: API version of the LUNA Image Store (for samples)
API_VERSION = 1
#: *bucket* name, where samples will be stored
BUCKET = visionlabs-bodies-samples

[LUNA_IMAGE_STORE_IMAGES_ADDRESS]

#: LUNA Image Store protocol, IP address, and port (for origin images)
ORIGIN = http://127.0.0.1:5020
#: API version of the LUNA Image Store (for origin images)
API_VERSION = 1
#: *bucket* name, where origin images will be stored
BUCKET = visionlabs-image-origin

[LUNA_IMAGE_STORE_OBJECTS_ADDRESS]

#: LUNA Image Store protocol, IP address, and port (for origin images)
ORIGIN = http://127.0.0.1:5020
#: API version of the LUNA Image Store (for origin images)
API_VERSION = 1
#: *bucket* name, where origin images will be stored
BUCKET = visionlabs-objects

[LUNA_IMAGE_STORE_FACES_SAMPLES_TIMEOUTS]

#: CONNECT TIMEOUT
CONNECT = 30
#: REQUEST TIMEOUT (total)
REQUEST =  60

[LUNA_IMAGE_STORE_BODIES_SAMPLES_TIMEOUTS]

#: CONNECT TIMEOUT
CONNECT = 30
#: REQUEST TIMEOUT (total)
REQUEST =  60

[LUNA_IMAGE_STORE_IMAGES_TIMEOUTS]

#: CONNECT TIMEOUT
CONNECT = 30
#: REQUEST TIMEOUT (total)
REQUEST =  60

[ADDITIONAL_SERVICES_USAGE]

#: [integer] send events to LUNA Events for storing
LUNA_EVENTS = 1
#: [integer] use LUNA Tasks
LUNA_TASKS = 1
#: [integer] send events to the LUNA Sender subscription service
LUNA_SENDER = 1
#: [integer] use LUNA Python Matcher Proxy instead of LUNA Python Matcher
LUNA_MATCHER_PROXY = 1
#: [integer] use Luna Image store for images/samples storages
LUNA_IMAGE_STORE = 1

[LUNA_REMOTE_SDK_RUNTIME_SETTINGS]

#: device type on which estimations is performed - "cpu" or "gpu"
GLOBAL_DEVICE_CLASS = cpu
#: number of worker threads
NUM_THREADS = 4
#: number of streams; this parameter increases performance, but works only with new versions of NVIDIA drivers
NUM_COMPUTE_STREAMS = 6

[LUNA_REMOTE_SDK_FACE_DETECTOR_SETTINGS.runtime_settings]

#: device type on which the face detection is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_FACE_DETECTOR_SETTINGS.estimator_settings]

#: min face size in pixels, max face size is min face size multiplied by 32
MIN_FACE_SIZE = 50
#: target face size for redetect
REDETECT_FACE_TARGET_SIZE = 64
#: target face size for redetect after preprocessing
REDETECT_TENSOR_SIZE = 80
#: redetect score threshold; redetection is considered failed if the score is lower than the specified value
REDETECT_SCORE_THRESHOLD = 0.357
#: score threshold; detection is considered failed if the score is lower than the specified value
SCORE_THRESHOLD = 0.42

[LUNA_REMOTE_SDK_GAZE_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which the face detection is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_QUALITY_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which the face detection is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_MOUTH_ATTRIBUTES_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1


[LUNA_REMOTE_SDK_EMOTIONS_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_BASIC_ATTRIBUTES_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_EYES_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_HEAD_POSE_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_FACE_DESCRIPTOR_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_MASK_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_LIVENESS_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_LIVENESS_ESTIMATOR_SETTINGS.estimator_settings]

#: [float] liveness score threshold
REAL_THRESHOLD = 0.5

[LUNA_REMOTE_SDK_GLASSES_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_FACE_WARP_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_FACE_LANDMARKS68_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_FACE_LANDMARKS5_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_IMAGE_COLOR_TYPE_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_HEADWEAR_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1


[LUNA_REMOTE_SDK_FACE_NATURAL_LIGHT_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_FISHEYE_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_EYEBROW_EXPRESSION_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_RED_EYES_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_FACE_DETECTION_BACKGROUND_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_IMAGE_ORIENTATION_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1



[LUNA_REMOTE_SDK_BODY_DETECTOR_SETTINGS.estimator_settings]

#: sets the maximum frame size after scaling to the largest side in pixels
IMAGE_SIZE = 640
#: redetect score threshold; redetection is considered failed if the score is lower than the specified value
REDETECT_SCORE_THRESHOLD = 0.12
#: score threshold; detection is considered failed if the score is lower than the specified value
SCORE_THRESHOLD = 0.5

[LUNA_REMOTE_SDK_BODY_DESCRIPTOR_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_BODY_WARP_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_BODY_LANDMARKS_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_BODY_ATTRIBUTES_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1


[LUNA_REMOTE_SDK_HUMAN_DETECTOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1


[LUNA_REMOTE_SDK_PEOPLE_COUNT_ESTIMATOR_SETTINGS.runtime_settings]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_PORTRAIT_STYLE_ESTIMATOR_SETTINGS.RUNTIME_SETTINGS]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_DEEPFAKE_ESTIMATOR_SETTINGS.RUNTIME_SETTINGS]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_FACE_OCCLUSION_ESTIMATOR_SETTINGS.RUNTIME_SETTINGS]

#: device type on which estimation is performed - "cpu", "gpu" or "global"
DEVICE_CLASS = global
#: optimal batch size for stage
OPTIMAL_BATCH_SIZE = 10
#: worker count for estimation
WORKER_COUNT = 1

[LUNA_REMOTE_SDK_FACE_OCCLUSION_ESTIMATOR_SETTINGS.estimator_settings]

#: [float] face occlusion score threshold
OCCLUSION_THRESHOLD = 0.07
#: [float] hair score threshold
HAIR_THRESHOLD = 0.15
#: [float] forehead score threshold
FOREHEAD_THRESHOLD = 0.2
#: [float] eye score threshold
EYE_THRESHOLD = 0.15
#: [float] nose score threshold
NOSE_THRESHOLD = 0.2
#: [float] mouth score threshold
MOUTH_THRESHOLD = 0.15
#: [float] lower face score threshold
LOWER_FACE_THRESHOLD = 0.2

[FACE_QUALITY_SETTINGS.image_format]

#: image format allowed, from [JPEG, JPEG2000, PNG]
THRESHOLD = [JPEG, JPEG2000, PNG]

[FACE_QUALITY_SETTINGS.illumination.threshold]

#: illumination minimum threshold, in range [0, 1]
MIN = 0.3
#: illumination maximum threshold, in range [0, 1]
MAX = 1

[FACE_QUALITY_SETTINGS.specularity.threshold]

#: specularity minimum threshold, in range [0, 1]
MIN = 0.3
#: specularity maximum threshold, in range [0, 1]
MAX = 1

[FACE_QUALITY_SETTINGS.blurriness.threshold]

#: blurriness minimum threshold, in range [0, 1]
MIN = 0.61
#: blurriness maximum threshold, in range [0, 1]
MAX = 1

[FACE_QUALITY_SETTINGS.dark.threshold]

#: dark minimum threshold, in range [0, 1]
MIN = 0.5
#: dark maximum threshold, in range [0, 1]
MAX = 1

[FACE_QUALITY_SETTINGS.light.threshold]

#: light minimum threshold, in range [0, 1]
MIN = 0.57
#: light maximum threshold, in range [0, 1]
MAX = 1

[FACE_QUALITY_SETTINGS.head_yaw.threshold]

#: head yaw minimum threshold, in range [0, 180]
MIN = -5
#: head yaw maximum threshold, in range [0, 180]
MAX = 5

[FACE_QUALITY_SETTINGS.head_pitch.threshold]

#: head pitch minimum threshold, in range [0, 180]
MIN = -5
#: head pitch maximum threshold, in range [0, 180]
MAX = 5

[FACE_QUALITY_SETTINGS.head_roll.threshold]

#: head roll minimum threshold, in range [0, 180]
MIN = -8
#: head roll maximum threshold, in range [0, 180]
MAX = 8

[FACE_QUALITY_SETTINGS.gaze_yaw.threshold]

#: gaze yaw minimum threshold, in range [0, 180]
MIN = -5
#: gaze yaw maximum threshold, in range [0, 180]
MAX = 5

[FACE_QUALITY_SETTINGS.gaze_pitch.threshold]

#: gaze pitch minimum threshold, in range [0, 180]
MIN = -5
#: gaze pitch maximum threshold, in range [0, 180]
MAX = 5

[FACE_QUALITY_SETTINGS.mouth_smiling.threshold]

#: mouth smiling state minimum threshold, in range [0, 1]
MIN = 0
#: mouth smiling state maximum threshold, in range [0, 1]
MAX = 0.5

[FACE_QUALITY_SETTINGS.mouth_occluded.threshold]

#: mouth occluded state minimum threshold, in range [0, 1]
MIN = 0
#: mouth occluded state maximum threshold, in range [0, 1]
MAX = 0.5

[FACE_QUALITY_SETTINGS.mouth_open.threshold]

#: mouth open state minimum threshold, in range [0, 1]
MIN = 0
#: mouth open state maximum threshold, in range [0, 1]
MAX = 0.5

[FACE_QUALITY_SETTINGS.glasses]

#: glasses state allowed, from [no_glasses, eyeglasses, sunglasses]
THRESHOLD = [no_glasses, eyeglasses]

[FACE_QUALITY_SETTINGS.eyes]

#: eye state allowed, from [open, occluded, closed]
THRESHOLD = [open]

[FACE_QUALITY_SETTINGS.head_horizontal_center.threshold]

#: head horizontal center minimum threshold, in range [0, 1]
MIN = 0.45
#: head horizontal center maximum threshold, in range [0, 1]
MAX = 0.55

[FACE_QUALITY_SETTINGS.head_vertical_center.threshold]

#: head vertical center minimum threshold, in range [0, 1]
MIN = 0.3
#: head vertical center maximum threshold, in range [0, 1]
MAX = 0.5

[FACE_QUALITY_SETTINGS.head_width.threshold]

#: head width minimum threshold, in range [0, 1]
MIN = 0.5
#: head width center maximum threshold, in range [0, 1]
MAX = 0.75

[FACE_QUALITY_SETTINGS.head_height.threshold]

#: head height minimum threshold, in range [0, 1]
MIN = 0.6
#: head height maximum threshold, in range [0, 1]
MAX = 0.9

[FACE_QUALITY_SETTINGS.eye_distance.threshold]

#: eye distance minimum threshold, in pxl
MIN = 90

[FACE_QUALITY_SETTINGS.image_width.threshold]

#: image width minimum threshold, in pxl
MIN = 180
#: image width maximum threshold, in pxl
MAX = 1920

[FACE_QUALITY_SETTINGS.image_height.threshold]

#: image height minimum threshold, in pxl
MIN = 180
#: image height maximum threshold, in pxl
MAX = 1080

[FACE_QUALITY_SETTINGS.aspect_ratio.threshold]

#: aspect ratio minimum threshold
MIN = 0.74
#: aspect ratio maximum threshold
MAX = 0.8

[FACE_QUALITY_SETTINGS.face_width.threshold]

#: face width minimum threshold, in pxl
MIN = 180

[FACE_QUALITY_SETTINGS.face_height.threshold]

#: face height minimum threshold, in pxl
MIN = 180

[FACE_QUALITY_SETTINGS.indent_left.threshold]

#: left indent minimum threshold, in pxl
MIN = 20

[FACE_QUALITY_SETTINGS.indent_right.threshold]

#: right indent minimum threshold, in pxl
MIN = 20

[FACE_QUALITY_SETTINGS.indent_upper.threshold]

#: upper indent minimum threshold, in pxl
MIN = 20

[FACE_QUALITY_SETTINGS.indent_lower.threshold]

#: lower indent minimum threshold, in pxl
MIN = 20

[FACE_QUALITY_SETTINGS.image_size.threshold]

#: image size minimum threshold, in bytes
MIN = 5220
#: image size minimum threshold, in bytes
MAX = 2097152

[FACE_QUALITY_SETTINGS.illumination_uniformity.threshold]

#: illumination uniformity minimum threshold, in range [0, 1]
MIN = 0.5

[FACE_QUALITY_SETTINGS.dynamic_range.threshold]

#: dynamic range minimum threshold, in range [0, 1]
MIN = 0.5

[FACE_QUALITY_SETTINGS.eyebrows]

#: eyebrows state allowed, from [neutral, raised, squinting, frowning]
THRESHOLD = [neutral]

[FACE_QUALITY_SETTINGS.shoulders]

#: shoulders state allowed, from [non-parallel, parallel, "hidden]
THRESHOLD = [parallel]

[FACE_QUALITY_SETTINGS.smile]

#: smile state allowed, from [none, smile_lips, smile_teeth]
THRESHOLD = [none]

[FACE_QUALITY_SETTINGS.headwear]

#: headwear allowed, from [none, baseball_cap, beanie, peaked_cap, shawl, hat_with_earflaps, helmet, hood, hat, other]
THRESHOLD = [none]

[FACE_QUALITY_SETTINGS.natural_light]

#: natural light state
THRESHOLD = 1

[FACE_QUALITY_SETTINGS.natural_light.config.estimator.threshold]

#: natural light minimum threshold, in range [0, 1]
MIN = 0.5

[FACE_QUALITY_SETTINGS.fish_eye]

#: fish eye state, 0 or 1
THRESHOLD = 0

[FACE_QUALITY_SETTINGS.fish_eye.config.estimator.threshold]

#: fish eye minimum threshold, in range [0, 1]
MIN = 0.5

[FACE_QUALITY_SETTINGS.red_eye]

#: red eyes state, 0 or 1
THRESHOLD = 0

[FACE_QUALITY_SETTINGS.red_eye.config.estimator.threshold]

#: red eye minimum threshold, in range [0, 1]
MIN = 0.5

[FACE_QUALITY_SETTINGS.color_type]

#: color type allowed, from [color, grayscale, infrared]
THRESHOLD = [color]

[FACE_QUALITY_SETTINGS.color_type.config.infrared.threshold]

#: infrared minimum threshold, in range [0, 1]
MIN = 0.5

[FACE_QUALITY_SETTINGS.color_type.config.color.threshold]

#: color minimum threshold, in range [0, 1]
MIN = 0.5

[FACE_QUALITY_SETTINGS.background_lightness.threshold]

#: background lightness minimum threshold, in range [0, 1]
MIN = 0.2

[FACE_QUALITY_SETTINGS.background_uniformity.threshold]

#: background uniformity minimum threshold, in range [0, 1]
MIN = 0.5


[FETCH_IMAGE_TIMEOUTS]

#: CONNECT TIMEOUT
CONNECT = 30
#: REQUEST TIMEOUT (total)
REQUEST =  60


[LUNA_REMOTE_SDK_LIMITS]

#: [integer] max number of images received in request
RECEIVED_IMAGES_LIMIT = 8


[EXTERNAL_LUNA_API_ADDRESS]

#: external luna-api origin
ORIGIN = http://127.0.0.1:5000
#: external luna-api origin
API_VERSION = 6

[LUNA_REMOTE_SDK_HTTP_SETTINGS]

#: [integer] service request timeout (in seconds)
REQUEST_TIMEOUT = 60
#: [integer] service response timeout (in seconds)
RESPONSE_TIMEOUT = 600
#: [integer] max request size (in bytes), default 1gb
REQUEST_MAX_SIZE = 1073741824
#: [integer] service http keep-alive timeout (in seconds)
KEEP_ALIVE_TIMEOUT = 200

[LUNA_SERVICE_METRICS]

#: [int] whether to enable /metrics path and statistics collection
ENABLED = 0
# [string] statistics data format (prometheus is the only option yet)
METRICS_FORMAT = prometheus


[DESCRIPTOR_ENCRYPTION]

#: [int] whether to enable descriptors encryption
ENABLED = 0
#: [string] encryption algorithm
ALGORITHM = aes256-gcm


[DESCRIPTOR_ENCRYPTION.PARAMS]

#: [string] encryption key source type
SOURCE = raw
#: [string] encryption key
KEY = 3gDyT4o+YlKLV4NZRjP/wznuhgxMI0mNNJWqc782Z9M=


[LUNA_SERVICE_METRICS.EXTRA_LABELS]


[OTHER]

#: list of active plugins
LUNA_REMOTE_SDK_ACTIVE_PLUGINS = []


#: face detector type
LUNA_REMOTE_SDK_DETECTOR_TYPE = FACE_DET_V3
#: default face descriptor version
DEFAULT_FACE_DESCRIPTOR_VERSION = 62
#: default human body descriptor version
DEFAULT_HUMAN_DESCRIPTOR_VERSION = 116
#: estimate image orientation and rotate the image to the correct angle
LUNA_REMOTE_SDK_USE_AUTO_ROTATION = 0

Extended administrator configuration

Extended configuration.