Models Folder

Models folder containing model.json and model.onnx

The Models folder contains two files generated by the LumiScan Training Framework:

  • <file name>.json (for example, model.json) contains the detection parameters and references the neural network model.

  • <file name>.onnx (for example, model.onnx) contains the trained neural network model.

On ctrlX OS: The model files must be uploaded using WebDAV.[1]

On a PC: Copy the model files into the models folder of the settings folder, see Uploading Data.

Model.json File

The model.json file contains the parameters required to configure the neural network model used for detection.

The following example shows the JSON structure:

{
    "classList": {
        "0": "nockeIO",
        "1": "nockeVerbogen"
    },
    "thresholdList": {
        "nockeIO": 0.02,
        "nockeVerbogen": 0.02
    },
    "resizedImageShape": {
        "height": 431,
        "width": 571
    },
    "normalizationMean": [
        123.67500305175781,
        116.27999877929688,
        103.52999877929688
    ],
    "normalizationStd": [
        58.39500045776367,
        57.119998931884766,
        57.375
    ],
    "spacialNMSRadius": 3,
    "pathToNetwork": "model.onnx",
    "provider": "CPU",
    "deviceIndex": 0
}

All parameters are generated by the LumiScan Training Framework.

Only thresholdList, pathToNetwork, provider, and deviceIndex should be modified manually. These parameters are described in Table 8.

Table 1. Model.json File: JSON Settings Description
Parameter Description

thresholdList

Defines the minimum confidence threshold for each detection class.

  • Values must be between 0.0 and 1.0.

  • A higher value requires a higher detection confidence.

  • A value of 1.0 represents 100% confidence.

pathToNetwork

Specifies the path to the trained neural network model used for object detection.

The path must be relative to the location of the current JSON file.

provider

Specifies the inference provider. Possible values:

  • On ctrlX OS: CPU and HAILO. If HAILO is used, see Requirements.

  • On a PC: CPU and CUDA (an NVIDIA GPU).

deviceIndex

Specifies the device index. Currently, this value must be 0.

Restart the LumiScan AI Object Matching application after changing any of these parameters.

Complete reference

Every setting of this file as its JSON Schema network-description.schema.json defines it, generated for version 2.1.0:

Setting Type Default Allowed values Description

meta

object

Required.

meta/inputFileType

string

not empty

Required.

meta/inputFileVersion

string

not empty

Required.

meta/targetMachine

string

not empty

meta/programName

string

not empty

meta/programVersion

string

not empty

networkType

string

Required. Current only support 'OrientedObjectDetection'

classList

object

[Deprecated] Please rename to 'classes'

thresholdList

object

[Deprecated] Please rename to 'thresholds'

classes

object

Required. Key: Index as string type, Value: Class name

thresholds

object

Required. Key: Class Name, Value: <0-1 float> threshold value between 0 and 1

resizedImageShape

object

Required.

resizedImageShape/height

number

Required.

resizedImageShape/width

number

Required.

normalizationMean

number[]

exactly 3 entries

Required.

normalizationStd

number[]

exactly 3 entries

Required.

provider

string

CPU, HAILO

Required. Type of provider, currently only CPU is supported.

deviceIndex

number

Required. Index of the device to use. If the provider is CPU, this value is ignored. If the provider is GPU, this value is the index of the GPU to use.

spacialNMSRadius

number

Required.

pathToNetwork

string

not empty

Required. Path to the network file. The network file must be in ONNX format and the path is relative to the description file.


1. For information about uploading data with WebDAV, see Uploading Data with WebDAV.