|
<?xml version="1.0"?>
|
|
<!--
|
|
The config file format is optimized for deserialization of several FSDK types:
|
|
* Int1 - scalar 32 bit integral numeric type
|
|
* Int2 - 2-d 32 bit integral numeric type (aka Vector2i, Size)
|
|
* Int3 - 3-d 32 bit integral numeric type
|
|
* Int4 - 4-d 32 bit integral numeric type (aka Rect)
|
|
* Float1 - scalar 32 bit floating point numeric type
|
|
* Float2 - 2-d 32 bit floating point numeric type (aka Vector2f)
|
|
* Float3 - 3-d 32 bit floating point numeric type
|
|
* Float4 - 4-d 32 bit floating point numeric type
|
|
* String - short null-terminated string (max. 16 characters including the null-terminator)
|
|
-->
|
|
<settings>
|
|
<!-- Logging parameters. -->
|
|
<section name="logging">
|
|
<!-- mode: the mode of logging, ['l2c' - log to console only, 'l2f' - log to file, 'l2b' - log to console & file] ('l2b' by default). -->
|
|
<param name="mode" type="Value::String" text="l2b" />
|
|
|
|
<!-- severity: Logging severity level, [0 - debug, 1 - info, 2 - warnings, 3 - error only], ('2' by default). -->
|
|
<param name="severity" type="Value::Int1" x="1" />
|
|
</section>
|
|
|
|
<!-- Other parameters. -->
|
|
<section name="other">
|
|
<!-- detector-step: The count of frames between frames with full detection, [0 .. 30] ('7' by default). -->
|
|
<param name="detector-step" type="Value::Int1" x="7" />
|
|
|
|
<!-- Currently available detector comparers are:
|
|
0 - DctConfidence,
|
|
1 - DctCenter - default,
|
|
2 - DctCenterAndConfidence,
|
|
3 - DctSize -->
|
|
<param name="detector-comparer" type="Value::Int1" x="1" />
|
|
|
|
<!-- Currently available detector modes are: 0 - all detections on image, 1 - one detection on image, -->
|
|
<param name="use-one-detection-mode" type="Value::Int1" x="0" />
|
|
|
|
<!-- skip-frames: If there is no detection in estimated area, waiting this number of frames and stop the track [0 .. 50] ('36' by default). -->
|
|
<param name="skip-frames" type="Value::Int1" x="36" />
|
|
|
|
<!-- frg-subtractor: Use foreground subtractor for filter of frames, [0, 1] ('1' by default). -->
|
|
<param name="frg-subtractor" type="Value::Int1" x="1" />
|
|
|
|
<!-- frames-buffer-size: Size of the internal storage buffer for all frames (for one stream) ('20' by default). -->
|
|
<param name="frames-buffer-size" type="Value::Int1" x="20" />
|
|
|
|
<!-- callback-buffer-size: Buffer size for the callbacks ('300' by default). -->
|
|
<param name="callback-buffer-size" type="Value::Int1" x="300" />
|
|
|
|
<!-- max-processing-fragments-count: Maximum fragments for stream being processed in time. Zero value means no limit ('1' by default). -->
|
|
<param name="max-processing-fragments-count" type="Value::Int1" x="1" />
|
|
|
|
<!-- batched-processing: Process streams frames in batch or separately, [0, 1] ('1' by default). -->
|
|
<param name="batched-processing" type="Value::Int1" x="1" />
|
|
|
|
<!-- min-frames-batch-size: stream frames min batch size value to process, ('0' by default). -->
|
|
<!-- higher values lead to higher processing latency but increase throughput and device utilization. -->
|
|
<!-- zero/negative values disable this feature, so any stream frames will be processed if they are available -->
|
|
<!-- note: this parameter should be regulated with 'max-frames-batch-gather-timeout' (see below) -->
|
|
<param name="min-frames-batch-size" type="Value::Int1" x="0" />
|
|
|
|
<!-- max-frames-batch-gather-timeout: max available timeout to gather next stream frames batch (see 'min-frames-batch-size') from last processing begin time point (measured in ms), ('0' by default). -->
|
|
<!-- note: this parameter is complementary to 'min-frames-batch-size' and controls min average fps of stream frames batches processing -->
|
|
<param name="max-frames-batch-gather-timeout" type="Value::Int1" x="0" />
|
|
|
|
<!-- Process tracks founded after redetect/detect in parallel or wait detect and redetect results and process all tracks together, [0, 1] ('0' by default). -->
|
|
<param name="parallel-tracks-processing" type="Value::Int1" x="0" />
|
|
|
|
<!-- frg-regions-alignment: frg regions alignment. Useful for detector better batching utilization. -->
|
|
<!-- 0 or negative values mean using non aligned regions, (0 by default). -->
|
|
<param name="frg-regions-alignment" type="Value::Int1" x="0" />
|
|
|
|
<!-- align frg regions to rect with equal sides (max side choosen). See frg-regions-alignment, [0, 1] ('1' by default). -->
|
|
<param name="frg-regions-square-alignment" type="Value::Int1" x="1" />
|
|
|
|
<!-- detector-scaling: Scale frame before detection for performance reasons, [0, 1] ('0' by default). -->
|
|
<param name="detector-scaling" type="Value::Int1" x="0" />
|
|
|
|
<!-- scale-result-size: If scaling is enable, frame will be scaled to this size in pixels (by the max dimension - width or height).
|
|
Upper scaling is not possible. ('640 by default') -->
|
|
<param name="scale-result-size" type="Value::Int1" x="640" />
|
|
|
|
<!-- maxDetectionCount: Maximum detections count ('20' by default) -->
|
|
<param name="max-detection-count" type="Value::Int1" x="20" />
|
|
|
|
<!-- minimalTrackLength: Minimum detections count to consider track as real face (parameter is ignored for human tracking) ('3' by default) -->
|
|
<param name="minimal-track-length" type="Value::Int1" x="3" />
|
|
|
|
<!-- trackerType: Type of tracker to use ['kcf', 'opencv', 'carkalman', 'vlTracker', 'none'] ('kcf' by default) -->
|
|
<param name="tracker-type" type="Value::String" text="opencv" />
|
|
|
|
<!-- kill-intersected-detections: Flag to kill intersected detections ('0' by default) -->
|
|
<param name="kill-intersected-detections" type="Value::Int1" x="1" />
|
|
|
|
<!-- kill-intersection-value: tracks with IOU > value, will be killed ('0.55' by default) -->
|
|
<param name="kill-intersection-value" type="Value::Float1" x="0.55"/>
|
|
</section>
|
|
|
|
<!-- Vehicle tracking specific parameters -->
|
|
<section name="vehicle">
|
|
<!-- best-shots-number-for-track: Number of best shots for track ('2' by default) -->
|
|
<param name="best-shots-number-for-track" type="Value::Int1" x="2" />
|
|
</section>
|
|
|
|
<!-- Face tracking specific parameters -->
|
|
<section name="face">
|
|
<!-- face-landmarks-detection: Flag to enable face landmarks detection. Disabling it improves performance ('1' by default) -->
|
|
<param name="face-landmarks-detection" type="Value::Int1" x="1" />
|
|
</section>
|
|
|
|
<!-- Human tracking specific parameters -->
|
|
<section name="human">
|
|
<!-- human-landmarks-detection: Flag to enable human landmarks detection. Disabling it improves performance ('1' by default) -->
|
|
<param name="human-landmarks-detection" type="Value::Int1" x="1" />
|
|
|
|
<!-- remove-overlapped-strategy: strategy, used for removing overlapped detections after (re)detect ['none', 'both', 'score'] ('score' by default) -->
|
|
<param name="remove-overlapped-strategy" type="Value::String" text="score" />
|
|
|
|
<!-- remove-horizontal-ratio: width to height ratio threshold, used for removing horizontal detections ('1.6' by default) -->
|
|
<param name="remove-horizontal-ratio" type="Value::Float1" x="1.6"/>
|
|
|
|
<!-- iou-connection-threshold: IOU value threshold, used for matching tracks and detections ('0.5' by default) -->
|
|
<param name="iou-connection-threshold" type="Value::Float1" x="0.5"/>
|
|
|
|
<!-- reid-matching-threshold: reID value threshold, used for matching tracks to each other ('0.85' by default) -->
|
|
<param name="reid-matching-threshold" type="Value::Float1" x="0.85"/>
|
|
|
|
<!-- non-active-tracks-lifetime: lifetime of old non-active tracks, that used for reID. It's measured in frames count and used for matching tracks to each other ('100' by default) -->
|
|
<!-- note, higher values lead to better quality of reidentification, but reduce performance -->
|
|
<param name="non-active-tracks-lifetime" type="Value::Int1" x="100" />
|
|
|
|
<!-- number of detections, that track must have to be matched by reID ('7' by default) -->
|
|
<param name="reid-matching-detections-number" type="Value::Int1" x="7" />
|
|
</section>
|
|
|
|
<!-- Detectors -->
|
|
<section name="detectors">
|
|
<!-- use-face-detector: Flag to use or not face detection -->
|
|
<param name="use-face-detector" type="Value::Int1" x="1" />
|
|
|
|
<!-- use-body-detector: Flag to use or not body detection -->
|
|
<param name="use-body-detector" type="Value::Int1" x="0" />
|
|
|
|
<!-- use-vehicle-detector: Flag to use or not vehicle detection -->
|
|
<param name="use-vehicle-detector" type="Value::Int1" x="0" />
|
|
|
|
<!-- use-license-plate-detector: Flag to use or not license plate detection -->
|
|
<param name="use-license-plate-detector" type="Value::Int1" x="0" />
|
|
</section>
|
|
|
|
<!-- Debug parameters -->
|
|
<section name="debug">
|
|
<!-- save-debug-info: Flag to save or not the debug info during processing (foreground masks for now), [0, 1] ('0' by default). -->
|
|
<param name="save-debug-info" type="Value::Int1" x="0" />
|
|
<!-- show-profiling-data: Flag to show or not profile data on TrackEngine deinit, [0, 1] ('0' by default). -->
|
|
<param name="show-profiling-data" type="Value::Int1" x="0" />
|
|
<!-- save-buffer-log: Flag to save buffers size for each frame on TrackEngine deinit, [0, 1] ('0' by default). -->
|
|
<param name="save-buffer-log" type="Value::Int1" x="0" />
|
|
</section>
|
|
|
|
</settings>
|