You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

162 lines
9.5 KiB

1 year ago
  1. <?xml version="1.0"?>
  2. <!--
  3. The config file format is optimized for deserialization of several FSDK types:
  4. * Int1 - scalar 32 bit integral numeric type
  5. * Int2 - 2-d 32 bit integral numeric type (aka Vector2i, Size)
  6. * Int3 - 3-d 32 bit integral numeric type
  7. * Int4 - 4-d 32 bit integral numeric type (aka Rect)
  8. * Float1 - scalar 32 bit floating point numeric type
  9. * Float2 - 2-d 32 bit floating point numeric type (aka Vector2f)
  10. * Float3 - 3-d 32 bit floating point numeric type
  11. * Float4 - 4-d 32 bit floating point numeric type
  12. * String - short null-terminated string (max. 16 characters including the null-terminator)
  13. -->
  14. <settings>
  15. <!-- Logging parameters. -->
  16. <section name="logging">
  17. <!-- mode: the mode of logging, ['l2c' - log to console only, 'l2f' - log to file, 'l2b' - log to console & file] ('l2b' by default). -->
  18. <param name="mode" type="Value::String" text="l2b" />
  19. <!-- severity: Logging severity level, [0 - debug, 1 - info, 2 - warnings, 3 - error only], ('2' by default). -->
  20. <param name="severity" type="Value::Int1" x="1" />
  21. </section>
  22. <!-- Other parameters. -->
  23. <section name="other">
  24. <!-- detector-step: The count of frames between frames with full detection, [0 .. 30] ('7' by default). -->
  25. <param name="detector-step" type="Value::Int1" x="7" />
  26. <!-- Currently available detector comparers are:
  27. 0 - DctConfidence,
  28. 1 - DctCenter - default,
  29. 2 - DctCenterAndConfidence,
  30. 3 - DctSize -->
  31. <param name="detector-comparer" type="Value::Int1" x="1" />
  32. <!-- Currently available detector modes are: 0 - all detections on image, 1 - one detection on image, -->
  33. <param name="use-one-detection-mode" type="Value::Int1" x="0" />
  34. <!-- skip-frames: If there is no detection in estimated area, waiting this number of frames and stop the track [0 .. 50] ('36' by default). -->
  35. <param name="skip-frames" type="Value::Int1" x="36" />
  36. <!-- frg-subtractor: Use foreground subtractor for filter of frames, [0, 1] ('1' by default). -->
  37. <param name="frg-subtractor" type="Value::Int1" x="1" />
  38. <!-- frames-buffer-size: Size of the internal storage buffer for all frames (for one stream) ('20' by default). -->
  39. <param name="frames-buffer-size" type="Value::Int1" x="20" />
  40. <!-- callback-buffer-size: Buffer size for the callbacks ('300' by default). -->
  41. <param name="callback-buffer-size" type="Value::Int1" x="300" />
  42. <!-- max-processing-fragments-count: Maximum fragments for stream being processed in time. Zero value means no limit ('1' by default). -->
  43. <param name="max-processing-fragments-count" type="Value::Int1" x="1" />
  44. <!-- batched-processing: Process streams frames in batch or separately, [0, 1] ('1' by default). -->
  45. <param name="batched-processing" type="Value::Int1" x="1" />
  46. <!-- min-frames-batch-size: stream frames min batch size value to process, ('0' by default). -->
  47. <!-- higher values lead to higher processing latency but increase throughput and device utilization. -->
  48. <!-- zero/negative values disable this feature, so any stream frames will be processed if they are available -->
  49. <!-- note: this parameter should be regulated with 'max-frames-batch-gather-timeout' (see below) -->
  50. <param name="min-frames-batch-size" type="Value::Int1" x="0" />
  51. <!-- 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). -->
  52. <!-- note: this parameter is complementary to 'min-frames-batch-size' and controls min average fps of stream frames batches processing -->
  53. <param name="max-frames-batch-gather-timeout" type="Value::Int1" x="0" />
  54. <!-- Process tracks founded after redetect/detect in parallel or wait detect and redetect results and process all tracks together, [0, 1] ('0' by default). -->
  55. <param name="parallel-tracks-processing" type="Value::Int1" x="0" />
  56. <!-- frg-regions-alignment: frg regions alignment. Useful for detector better batching utilization. -->
  57. <!-- 0 or negative values mean using non aligned regions, (0 by default). -->
  58. <param name="frg-regions-alignment" type="Value::Int1" x="0" />
  59. <!-- align frg regions to rect with equal sides (max side choosen). See frg-regions-alignment, [0, 1] ('1' by default). -->
  60. <param name="frg-regions-square-alignment" type="Value::Int1" x="1" />
  61. <!-- detector-scaling: Scale frame before detection for performance reasons, [0, 1] ('0' by default). -->
  62. <param name="detector-scaling" type="Value::Int1" x="0" />
  63. <!-- scale-result-size: If scaling is enable, frame will be scaled to this size in pixels (by the max dimension - width or height).
  64. Upper scaling is not possible. ('640 by default') -->
  65. <param name="scale-result-size" type="Value::Int1" x="640" />
  66. <!-- maxDetectionCount: Maximum detections count ('20' by default) -->
  67. <param name="max-detection-count" type="Value::Int1" x="20" />
  68. <!-- minimalTrackLength: Minimum detections count to consider track as real face (parameter is ignored for human tracking) ('3' by default) -->
  69. <param name="minimal-track-length" type="Value::Int1" x="3" />
  70. <!-- trackerType: Type of tracker to use ['kcf', 'opencv', 'carkalman', 'vlTracker', 'none'] ('kcf' by default) -->
  71. <param name="tracker-type" type="Value::String" text="opencv" />
  72. <!-- kill-intersected-detections: Flag to kill intersected detections ('0' by default) -->
  73. <param name="kill-intersected-detections" type="Value::Int1" x="1" />
  74. <!-- kill-intersection-value: tracks with IOU > value, will be killed ('0.55' by default) -->
  75. <param name="kill-intersection-value" type="Value::Float1" x="0.55"/>
  76. </section>
  77. <!-- Vehicle tracking specific parameters -->
  78. <section name="vehicle">
  79. <!-- best-shots-number-for-track: Number of best shots for track ('2' by default) -->
  80. <param name="best-shots-number-for-track" type="Value::Int1" x="2" />
  81. </section>
  82. <!-- Face tracking specific parameters -->
  83. <section name="face">
  84. <!-- face-landmarks-detection: Flag to enable face landmarks detection. Disabling it improves performance ('1' by default) -->
  85. <param name="face-landmarks-detection" type="Value::Int1" x="1" />
  86. </section>
  87. <!-- Human tracking specific parameters -->
  88. <section name="human">
  89. <!-- human-landmarks-detection: Flag to enable human landmarks detection. Disabling it improves performance ('1' by default) -->
  90. <param name="human-landmarks-detection" type="Value::Int1" x="1" />
  91. <!-- remove-overlapped-strategy: strategy, used for removing overlapped detections after (re)detect ['none', 'both', 'score'] ('score' by default) -->
  92. <param name="remove-overlapped-strategy" type="Value::String" text="score" />
  93. <!-- remove-horizontal-ratio: width to height ratio threshold, used for removing horizontal detections ('1.6' by default) -->
  94. <param name="remove-horizontal-ratio" type="Value::Float1" x="1.6"/>
  95. <!-- iou-connection-threshold: IOU value threshold, used for matching tracks and detections ('0.5' by default) -->
  96. <param name="iou-connection-threshold" type="Value::Float1" x="0.5"/>
  97. <!-- reid-matching-threshold: reID value threshold, used for matching tracks to each other ('0.85' by default) -->
  98. <param name="reid-matching-threshold" type="Value::Float1" x="0.85"/>
  99. <!-- 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) -->
  100. <!-- note, higher values lead to better quality of reidentification, but reduce performance -->
  101. <param name="non-active-tracks-lifetime" type="Value::Int1" x="100" />
  102. <!-- number of detections, that track must have to be matched by reID ('7' by default) -->
  103. <param name="reid-matching-detections-number" type="Value::Int1" x="7" />
  104. </section>
  105. <!-- Detectors -->
  106. <section name="detectors">
  107. <!-- use-face-detector: Flag to use or not face detection -->
  108. <param name="use-face-detector" type="Value::Int1" x="1" />
  109. <!-- use-body-detector: Flag to use or not body detection -->
  110. <param name="use-body-detector" type="Value::Int1" x="0" />
  111. <!-- use-vehicle-detector: Flag to use or not vehicle detection -->
  112. <param name="use-vehicle-detector" type="Value::Int1" x="0" />
  113. <!-- use-license-plate-detector: Flag to use or not license plate detection -->
  114. <param name="use-license-plate-detector" type="Value::Int1" x="0" />
  115. </section>
  116. <!-- Debug parameters -->
  117. <section name="debug">
  118. <!-- save-debug-info: Flag to save or not the debug info during processing (foreground masks for now), [0, 1] ('0' by default). -->
  119. <param name="save-debug-info" type="Value::Int1" x="0" />
  120. <!-- show-profiling-data: Flag to show or not profile data on TrackEngine deinit, [0, 1] ('0' by default). -->
  121. <param name="show-profiling-data" type="Value::Int1" x="0" />
  122. <!-- save-buffer-log: Flag to save buffers size for each frame on TrackEngine deinit, [0, 1] ('0' by default). -->
  123. <param name="save-buffer-log" type="Value::Int1" x="0" />
  124. </section>
  125. </settings>