Descriptor Settings

Descriptor settings define system parameters for all registered descriptors and are stored as an array of objects in a dedicated collection. Each object contains:

  • object_type: The type of object the descriptor applies to (e.g., faces, events, general_events);

  • descriptor_type: The descriptor type (e.g., face, body);

  • descriptor_version: The version of the descriptor;

  • descriptor_length: The size of the descriptor in bytes;

  • platt_scaling: Parameters (a, b) for normalizing matching scores using Platt scaling;

Example:

[
    {
        "object_type": "events",
        "descriptor_type": "face",
        "descriptor_version": 52,
        "descriptor_length": 256,
        "platt_scaling": {
            "a": 0.5,
            "b": 1.0
        }
    },
    {
        "object_type": "events",
        "descriptor_type": "body",
        "descriptor_version": 116,
        "descriptor_length": 512,
        "platt_scaling": {
            "a": 0.7,
            "b": 0.13
        }
    },
]

Usage Scenarios

  1. Collection Creation - when creating a collection, the system uses object_type, descriptor_type, and descriptor_version to automatically retrieve the required descriptor_length` and default platt_scaling parameters. The user may override platt_scaling if needed.

  2. Matching using a plugin - during matching operations in Luna Platform, the plugin automatically retrieves the platt_scaling parameters associated with the collection. These parameters are used to calibrate the raw similarity scores returned from the database, ensuring that the scores are normalized and consistently formatted. This normalization makes similarity values reliable for downstream processing and decision-making within Luna Platform.