Image Classification

Image classification classifies images. The input images could be entire images or video frames, or regions of images or video frames. Classification chooses between the classes that you have created within a classifier.

Before using image classification, you must train a classifier or import a pre-trained classifier.

Configuration Parameter Description
ClassificationThreshold The minimum confidence score necessary for Media Server to output a classification result.
Classifier The classifier to use for classification.
GPUBatchingDuration The maximum amount of time to wait, before sending a batch of video frames to the GPU for analysis.
GPUNumParallel The maximum number of video frames to analyze concurrently using the GPU (per CPU thread).
Input The name of the track to analyze.
MaxClassResults The maximum number of classifications to produce for each input record or event.
MaxInputQueueLength Can be used to place a limit on latency.
NumParallel The maximum number of CPU threads to use for analysis.
Region A region of the frame to restrict processing to.
SampleInterval The interval at which frames are selected to be analyzed.
SegmentDuration The maximum duration of a record in the SegmentedResult or SegmentedResultWithSource track.
SyncDatabase Specifies whether to synchronize with the training database before beginning the analysis task.
Type The analysis engine to use. Set this parameter to ImageClassification.
VariableState Specifies whether there are multiple classes in the image classifier that represent different states of the same type of object.

Output Tracks

The following table describes the tracks that are generated by this engine. The Output column indicates whether the information contained in the track is included by default in the output created by an output task (when you don't set the Input parameter for the output task).

Output track Description Output
Data

Contains one or more records, describing the analysis results, for each input record.

To limit the number of classifications for each input record, set the MaxClassResults parameter.

No
DataWithSource

The same as the Data track, but each record also includes the source frame.

No
Result

Contains one or more records, describing the analysis results, for each event.

  • When the input is images, Media Server classifies each image separately.
  • When the input is video from an ingest engine, or an engine that does not support tracking, Media Server begins a new result when the classification changes significantly.
  • When the input is video from an engine that supports tracking (for example number plate recognition), results begin and end at the times provided by the other analysis task (for example when the vehicle appears and disappears). The IDs used for the image classification records are also inherited from the input records.

To limit the number of classifications for each event, set the MaxClassResults parameter.

Yes
ResultWithSource

The same as the Result track, but each record also includes the best source frame.

No
SegmentedResult

(Available only when processing video). The same as the Result track, except the duration of each record is limited by the parameter SegmentDuration. If a result exceeds the specified duration, Media Server begins a new record with the same ID.

Yes
SegmentedResultWithSource

(Available only when processing video). The same as the ResultWithSource track, except the duration of each record is limited by the parameter SegmentDuration. If a result exceeds the specified duration, Media Server begins a new record with the same ID.

No
Start

The same as the Data track, except it contains only the first record of each event.

No
End

The same as the Data track, except it contains only the last record of each event.

No

For more information see Classification Results or use the action GetExampleRecord.