Pose Estimation Labelling

Hi,
I’m running this pipeline for pose estimation but this doesn’t shows the label of the pose , and i want label.Can you brief how this can be achieved.
gst-launch-1.0 v4l2src name=src_0 ! decodebin ! videoscale ! video/x-raw, pixel-aspect-ratio=1/1 ! videoconvert ! queue leaky=no max-size-buffers=30 max-size-bytes=0 max-size-time=0 ! hailonet hef-path=/home/vk/Downloads/centerpose_regnetx_1.6gf_fpn.hef ! queue leaky=no max-size-buffers=30 max-size-bytes=0 max-size-time=0 ! hailofilter so-path=/home/vk/tappas_v3.30.0//apps/h8/gstreamer/libs/post_processes/libcenterpose_post.so ! queue leaky=no max-size-buffers=30 max-size-bytes=0 max-size-time=0 ! hailooverlay qos=false ! queue leaky=no max-size-buffers=30 max-size-bytes=0 max-size-time=0 ! videoconvert ! fpsdisplaysink video-sink=xvimagesink name=hailo_display sync=false text-overlay=false

Hey @UHailo,

To include pose labels in your GStreamer pipeline, you can make the following adjustments:

  1. Enable Label Display: Add the display-labels=true parameter to the hailooverlay plugin. This tells the overlay to render the pose labels on top of the video frames.

  2. Ensure Text Overlay: In the fpsdisplaysink element, set text-overlay=true. This manages the rendering of text, including the pose labels, alongside the video frames.

Here’s the updated pipeline:

gst-launch-1.0 v4l2src name=src_0 ! decodebin ! videoscale ! video/x-raw, pixel-aspect-ratio=1/1 ! \
videoconvert ! queue leaky=no max-size-buffers=30 max-size-bytes=0 max-size-time=0 ! \
hailonet hef-path=/home/vk/Downloads/centerpose_regnetx_1.6gf_fpn.hef ! \
queue leaky=no max-size-buffers=30 max-size-bytes=0 max-size-time=0 ! \
hailofilter so-path=/home/vk/tappas_v3.30.0/apps/h8/gstreamer/libs/post_processes/libcenterpose_post.so ! \
queue leaky=no max-size-buffers=30 max-size-bytes=0 max-size-time=0 ! hailooverlay qos=false display-labels=true ! \
queue leaky=no max-size-buffers=30 max-size-bytes=0 max-size-time=0 ! videoconvert ! \
fpsdisplaysink video-sink=xvimagesink name=hailo_display sync=false text-overlay=true

Keep in mind that this assumes the post-processing library (libcenterpose_post.so) is outputting the necessary metadata for the labels. The hailooverlay plugin needs to be able to interpret this metadata to display the labels correctly.

Give it a try with these modifications and let me know if you have any further questions!

Thanks for reply but this pipeline doesn’t work because the hailooverlay element have no property display-label

 gst-launch-1.0 v4l2src name=src_0 ! decodebin ! videoscale ! video/x-raw, pixel-aspect-ratio=1/1 ! \
videoconvert ! queue leaky=no max-size-buffers=30 max-size-bytes=0 max-size-time=0 ! \
hailonet hef-path=/home/vk/Downloads/centerpose_regnetx_1.6gf_fpn.hef ! \
queue leaky=no max-size-buffers=30 max-size-bytes=0 max-size-time=0 ! \
hailofilter so-path=/home/vk/tappas_v3.30.0/apps/h8/gstreamer/libs/post_processes/libcenterpose_post.so ! \
queue leaky=no max-size-buffers=30 max-size-bytes=0 max-size-time=0 ! hailooverlay qos=false display-labels=true ! \
queue leaky=no max-size-buffers=30 max-size-bytes=0 max-size-time=0 ! videoconvert ! \
fpsdisplaysink video-sink=xvimagesink name=hailo_display sync=false text-overlay=true
**WARNING: erroneous pipeline: no property "display-labels" in element "hailooverlay"**

vk@raspberrypi:~/tappas_v3.30.0 $ gst-inspect-1.0 hailooverlay
Factory Details:
  Rank                     primary (256)
  Long-name                hailooverlay - overlay element
  Klass                    Hailo/Tools
  Description              Draws post-processing results for networks inferred by hailonet elements.
                           Draws classes contained by HailoROI objects attached to incoming frames.
  Author                   hailo.ai <[email protected]>

Plugin Details:
  Name                     hailotools
  Description              hailo tools plugin
  Filename                 /lib/aarch64-linux-gnu/gstreamer-1.0/libgsthailotools.so
  Version                  3.30.0
  License                  unknown
  Source module            gst-hailo-tools
  Binary package           gst-hailo-tools
  Origin URL               https://hailo.ai/

GObject
 +----GInitiallyUnowned
       +----GstObject
             +----GstElement
                   +----GstBaseTransform
                         +----GstHailoOverlay

Pad Templates:
  SINK template: 'sink'
    Availability: Always
    Capabilities:
      video/x-raw
                 format: { (string)RGB, (string)YUY2, (string)RGBA, (string)NV12 }
                  width: [ 1, 2147483647 ]
                 height: [ 1, 2147483647 ]
              framerate: [ 0/1, 2147483647/1 ]
  
  SRC template: 'src'
    Availability: Always
    Capabilities:
      video/x-raw
                 format: { (string)RGB, (string)YUY2, (string)RGBA, (string)NV12 }
                  width: [ 1, 2147483647 ]
                 height: [ 1, 2147483647 ]
              framerate: [ 0/1, 2147483647/1 ]

Element has no clocking capabilities.
Element has no URI handling capabilities.

Pads:
  SINK: 'sink'
    Pad Template: 'sink'
  SRC: 'src'
    Pad Template: 'src'

Element Properties:
  face-blur           : Whether to blur faces
                        flags: readable, writable, controllable
                        Boolean. Default: false
  font-thickness      : The thickness when drawing text. Default 1.
                        flags: readable, writable, changeable only in NULL or READY state
                        Integer. Range: 0 - 2147483647 Default: 1 
  landmark-point-radius: The radius of the points when drawing landmarks. Default 3.
                        flags: readable, writable, changeable only in NULL or READY state
                        Float. Range:               0 -    3.402823e+38 Default:               3 
  line-thickness      : The thickness when drawing lines. Default 1.
                        flags: readable, writable, changeable only in NULL or READY state
                        Integer. Range: 0 - 2147483647 Default: 1 
  local-gallery       : Whether to display Identified and UnIdentified ROI's taken from the local gallery, as well as the Global ID they receive.
                        flags: readable, writable, controllable
                        Boolean. Default: false
  mask-overlay-n-threads: Number of threads to use for parallel mask drawing. Default 0 (Will use the default value OpenCV initializes - effected by the system capabilities).
                        flags: readable, writable, changeable only in NULL or READY state
                        Unsigned Integer. Range: 0 - 4294967295 Default: 0 
  name                : The name of the object
                        flags: readable, writable
                        String. Default: "hailooverlay0"
  parent              : The parent of the object
                        flags: readable, writable
                        Object of type "GstObject"
  qos                 : Handle Quality-of-Service events
                        flags: readable, writable
                        Boolean. Default: false
  show-confidence     : Whether to display confidence on detections, classifications etc...
                        flags: readable, writable, controllable
                        Boolean. Default: true
(END)

Also do i need to make any changes in centerpose.cpp to make such thing applicable.
If any could you guide me a bit.