# qtimlvsegmentation The qtimlvsegmentation plugin processes output tensors of an image segmentation/depth estimation model from the ML inference plugin (such as qtimltflite, qtimlsnpe, and qtimlqnn) into result of predictions. Note This plugin is going to be deprecated. The processed output is an image mask (GstCaps: video/x-raw). [GstCaps](https://gstreamer.freedesktop.org/documentation/gstreamer/gstcaps.html) determines the dimensions and format, which is applied over the original image using qtivcomposer. For this mask, the element uses the CPU based [Cairo](https://www.cairographics.org) 2D graphics library to draw the prediction results in ION/DMA buffers. The GstImageBufferPool custom buffer pool class allocates the ION/DMA buffers through IOCTL commands to the kernel. The module and labels properties of the plugin determine the method for the postprocessing operations. - The module property specifies the postprocessing module. It's populated dynamically at runtime with the libraries available in `/usr/lib/gstreamer-1.0/ml/modules/` containing the prefix "`ml-vsegmentation-`-". - The labels property is a customized text file different for each machine learning detection model that you must provide for the prediction labels. GST BIN GstBuffer + GstMemory: Contains a single tensor+ GstMemory: Contains next tensor and so on...+ ... + GstVideoMeta: Describes the raw data of a single tensor + GstVideoMeta: Meta for the next tensor entry +... GstBuffer + GstMemory: Image maskcolor segmentated imagemask Qualcomm Open source ML pre-process plugin Video source ML inference plugin qtimlpostprocess neural-network/tensors neural-network/tensors video/x-raw qtivcomposer video/x-raw **Figure : GstBuffer workflow with qtimlvsegmentation** ## Inheritance chain [GObject](https://docs.gtk.org/gobject/) → [GstObject](https://gstreamer.freedesktop.org/documentation/gstreamer/gstobject.html?gi-language=c) → [GstElement](https://gstreamer.freedesktop.org/documentation/gstreamer/gstelement.html?gi-language=c) → [GstBaseTransform](https://gstreamer.freedesktop.org/documentation/base/gstbasetransform.html?gi-language=c) → GstMLVideoSegmentation The following tables provide information on pad templates and element properties of qtimlvsegmentation. For use cases, see the segmentation use cases in [LiteRT use cases](https://docs.qualcomm.com/doc/80-70029-50/topic/tensorflow-lite-use-cases.html) and [Qualcomm Neural Processing SDK use cases](https://docs.qualcomm.com/doc/80-70029-50/topic/qualcomm-neural-processing-sdk-use-cases.html). ## Pad configuration | Pad Name | Capabilities | Capabilities | Capabilities | | --- | --- | --- | --- | | SINK template: 'sink'
| neural-network/tensors | – | – | |
SRC template: 'src'
| video/x-raw | format: | { (string)BGRA, (string)BGRx, (string)BGR16 } | |
SRC template: 'src'
| text/x-raw | format: | { (string)utf8 } | | | | | | ## Element configuration Table : Element properties for qtimlvsegmentation | Property | Description | | --- | --- | | name | The name of the object.
| | parent | The parent of the object.
| | qos | Handle Quality-of-Service events.
| | module | Module name that's used for processing the tensors.
| | labels | The filename of the labels.
| Last Published: Jun 03, 2026 [Previous Topic qtimlvdetection](https://docs.qualcomm.com/bundle/publicresource/80-70029-50/topics/qtimlvdetection.md) [Next Topic qtimlvpose](https://docs.qualcomm.com/bundle/publicresource/80-70029-50/topics/qtimlvpose.md) Source: [https://docs.qualcomm.com/doc/80-70029-50/topic/qtimlvsegmentation.html](https://docs.qualcomm.com/doc/80-70029-50/topic/qtimlvsegmentation.html)