Skip to content

tidlpostproc

abhaychirania2411 edited this page Jun 1, 2023 · 2 revisions

TI DL PostProc

tidlpostproc is used to Postprocesses the output of deep learning model using NV12 drawing utilities. It supports post-processing for Image Classification, Object Detection and Semantic Segmentation.

Hierarchy

GObject
 +----GInitiallyUnowned
       +----GstObject
             +----GstElement
                   +----GstTIDLPostProc

Pad templates

sink

      video/x-raw
                 format: { (string)NV12 }
                  width: [ 1, 8192 ]
                 height: [ 1, 8192 ]

Availability – always

Direction – sink

Object type – GstPad

src

      video/x-raw
                 format: { (string)NV12 }
                  width: [ 1, 8192 ]
                 height: [ 1, 8192 ]

Availability – always

Direction – src

Object type – GstPad

tensor

     application/x-tensor-tiovx

Availability – always

Direction – sink

Object type – GstPad

Properties

alpha

Alpha value for sematic segmentation blending

flags: readable, writable, controllable

Float Range: 0 - 1

Default: 0.5

display-model

Display model name on top of the frame

flags: readable, writable, controllable

Boolean

Default: false

model

TIDL Model directory with params, model and artifacts

flags: readable, writable

String

Default : NULL

mean-1

Mean pixel to be subtracted for the second plane

flags: readable, writable

Float Range: 0 - 255

Default : 0

name

The name of the object

flags: readable, writable

String

Default : "tidlpostproc0"

parent

The parent of the object

flags: readable, writable

GstObject

Default : N/A

top-N

Number of class to overlay for classification results

flags: readable, writable

Integer Range 1-10

Default : 5

viz-threshold

Confidence Threashold for drawing bounding boxes for object detection and human pose estimation results

flags: readable, writable

Float Range: 0 - 1

Default : 0.6

Pipeline examples

Input with explicitly defined preprocessing properties

gst-launch-1.0                                                                                             \
multifilesrc location=/opt/edgeai-test-data/videos/video_0000_h264.h264 !                                  \
h264parse ! avdec_h264 ! ticolorconvert !                                                                  \
video/x-raw, format=NV12 !                                                                                 \
                                                                                                           \
tee name=split                                                                                             \
                                                                                                           \
split. ! queue ! tiscaler ! video/x-raw, width=416, height=416 !                                           \
                 tidlpreproc data-type=3 channel-order=0 tensor-format=bgr  !                              \
                 tidlinferer model=/opt/model_zoo/ONR-OD-8200-yolox-nano-lite-mmdet-coco-416x416 !         \
                 queue ! post.tensor                                                                       \
                                                                                                           \
split. ! queue ! tiscaler ! video/x-raw,width=1280,height=720 ! post.sink                                  \
                                                                                                           \
tidlpostproc name=post model=/opt/model_zoo/ONR-OD-8200-yolox-nano-lite-mmdet-coco-416x416 !               \
kmssink sync=false driver-name=tidss