Classification pipeline programs output a JSON object as stdout.
The JSON object is made out of key-value pairs representing the classification label (key) and the prediction confidence of that classification (value in float).
Enhancement
Classification pipeline programs can sometimes included key-value pairs that have nothing to do with classification labels and their predication confidences. We refer to these key-value pairs as metadata. This is done so that special values produced by the program can be logged into the SmartCam's log file. The log file is not machine readable friendly with respect to extracting this data so instead we want to include this data in the SmartCam's images' metadata CSV file.
Technicalities
Prefix the metadata keys with underscore character so that the classification pipeline loop can recognize them as metadata. that should be recorded into the SmartCam's images' metadata CSV file.
For each metadata key-value pair in the program's JSON stdout, create a column in the CSV file where the data will be written.
The column name needs to be unique so its name will be a concatenation of the model name and the metadata key.
Context
Enhancement
Classification pipeline programs can sometimes included key-value pairs that have nothing to do with classification labels and their predication confidences. We refer to these key-value pairs as metadata. This is done so that special values produced by the program can be logged into the SmartCam's log file. The log file is not machine readable friendly with respect to extracting this data so instead we want to include this data in the SmartCam's images' metadata CSV file.
Technicalities