GStreamer Motion Detection Bin Element
| GPU Accelerated Motion Detector |
|---|
| Overview |
| GStreamer Plugin |
| Getting Started |
| Examples |
| Performance |
| Troubleshooting |
| FAQ |
| Contact Us |
The GStreamer element is called "rrmotiondetectionbin". This element performs the motion detection, noise reduction and blob detection stages in one simple element/bin. It is very useful if you don't want to separate the different stages described in the Overview section.
Main Properties
- cuda-blob-detection: Use blob detection algorithm (in charge of detecting the motion bounding boxes) implemented in cuda (Blob Detector GPU) otherwise use cpu blob detection. By default it is false.
- grayscale: When enabled, the motion detection is performed over a grayscale image (color dropped). By default it is true.
Access Child Properties
Through the bin you are capable to access and control its internal elements configuration using the following notation:
<element name>::<property name>
The element name corresponds to the name given to the element internally by the bin. For your convenience here is the list of the rrmotiondetectionbin main internal element's names:
- motion_detector of type rrmotiondetection
- motion_denoiser of type rrnoisereduction
- blob_detector that can be of type rrblobdetector or rrcudablobdetector depending of the cuda-blob-detection property.
For instance if you want to change the motion detector algorithm you can set the property motion as follows:
rrmotiondetectionbin motion_detector::motion=mog2
On the hand, if you can to change the kernel size of the motion reduction element you can do it as follows:
rrmotiondetectionbin motion_denoiser::size=5
Please refer to the GStreamer Pipelines section for more examples of child properties in use
Capabilities
This section overviews the Motion Detection Bin input and output capabilities.
Below is the full output of the gst-inspect-1.0 command:
Factory Details:
Rank none (0)
Long-name Motion Detection Bin
Klass Filter/Video
Description Detects motion blobs
Author Melissa Montero <melissa.montero@ridgerun.com>
Plugin Details:
Name rrmotiondetection
Description Motion detection components based on OpenCV
Filename /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstrrmotiondetection.so
Version 0.1.1
License Proprietary
Source module gstrrmotiondetection
Binary package gstrrmotiondetection
Origin URL www.ridgerun.com
GObject
+----GInitiallyUnowned
+----GstObject
+----GstElement
+----GstBin
+----GstRrMotionDetectionBin
Implemented Interfaces:
GstChildProxy
Pad Templates:
SINK template: 'sink'
Availability: Always
Capabilities:
video/x-raw
format: { (string)I420, (string)YV12, (string)YUY2, (string)UYVY, (string)AYUV, (string)VUYA, (string)RGBx, (string)BGRx, (string)xRGB, (string)xBGR, (string)RGBA, (string)BGRA, (string)ARGB, (string)ABGR, (string)RGB, (string)BGR, (string)Y41B, (string)Y42B, (string)YVYU, (string)Y444, (string)v210, (string)v216, (string)Y210, (string)Y410, (string)NV12, (string)NV21, (string)GRAY8, (string)GRAY16_BE, (string)GRAY16_LE, (string)v308, (string)RGB16, (string)BGR16, (string)RGB15, (string)BGR15, (string)UYVP, (string)A420, (string)RGB8P, (string)YUV9, (string)YVU9, (string)IYU1, (string)ARGB64, (string)AYUV64, (string)r210, (string)I420_10BE, (string)I420_10LE, (string)I422_10BE, (string)I422_10LE, (string)Y444_10BE, (string)Y444_10LE, (string)GBR, (string)GBR_10BE, (string)GBR_10LE, (string)NV16, (string)NV24, (string)NV12_64Z32, (string)A420_10BE, (string)A420_10LE, (string)A422_10BE, (string)A422_10LE, (string)A444_10BE, (string)A444_10LE, (string)NV61, (string)P010_10BE, (string)P010_10LE, (string)IYU2, (string)VYUY, (string)GBRA, (string)GBRA_10BE, (string)GBRA_10LE, (string)BGR10A2_LE, (string)GBR_12BE, (string)GBR_12LE, (string)GBRA_12BE, (string)GBRA_12LE, (string)I420_12BE, (string)I420_12LE, (string)I422_12BE, (string)I422_12LE, (string)Y444_12BE, (string)Y444_12LE, (string)GRAY10_LE32, (string)NV12_10LE32, (string)NV16_10LE32, (string)NV12_10LE40 }
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
framerate: [ 0/1, 2147483647/1 ]
video/x-raw(memory:NVMM)
format: { (string)I420, (string)I420_10LE, (string)P010_10LE, (string)I420_12LE, (string)UYVY, (string)YUY2, (string)YVYU, (string)NV12, (string)NV16, (string)NV24, (string)GRAY8, (string)BGRx, (string)RGBA, (string)Y42B }
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
framerate: [ 0/1, 2147483647/1 ]
SRC template: 'src'
Availability: Always
Capabilities:
video/x-raw
format: { (string)I420, (string)YV12, (string)YUY2, (string)UYVY, (string)AYUV, (string)VUYA, (string)RGBx, (string)BGRx, (string)xRGB, (string)xBGR, (string)RGBA, (string)BGRA, (string)ARGB, (string)ABGR, (string)RGB, (string)BGR, (string)Y41B, (string)Y42B, (string)YVYU, (string)Y444, (string)v210, (string)v216, (string)Y210, (string)Y410, (string)NV12, (string)NV21, (string)GRAY8, (string)GRAY16_BE, (string)GRAY16_LE, (string)v308, (string)RGB16, (string)BGR16, (string)RGB15, (string)BGR15, (string)UYVP, (string)A420, (string)RGB8P, (string)YUV9, (string)YVU9, (string)IYU1, (string)ARGB64, (string)AYUV64, (string)r210, (string)I420_10BE, (string)I420_10LE, (string)I422_10BE, (string)I422_10LE, (string)Y444_10BE, (string)Y444_10LE, (string)GBR, (string)GBR_10BE, (string)GBR_10LE, (string)NV16, (string)NV24, (string)NV12_64Z32, (string)A420_10BE, (string)A420_10LE, (string)A422_10BE, (string)A422_10LE, (string)A444_10BE, (string)A444_10LE, (string)NV61, (string)P010_10BE, (string)P010_10LE, (string)IYU2, (string)VYUY, (string)GBRA, (string)GBRA_10BE, (string)GBRA_10LE, (string)BGR10A2_LE, (string)GBR_12BE, (string)GBR_12LE, (string)GBRA_12BE, (string)GBRA_12LE, (string)I420_12BE, (string)I420_12LE, (string)I422_12BE, (string)I422_12LE, (string)Y444_12BE, (string)Y444_12LE, (string)GRAY10_LE32, (string)NV12_10LE32, (string)NV16_10LE32, (string)NV12_10LE40 }
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
framerate: [ 0/1, 2147483647/1 ]
video/x-raw(memory:NVMM)
format: { (string)I420, (string)I420_10LE, (string)P010_10LE, (string)I420_12LE, (string)UYVY, (string)YUY2, (string)YVYU, (string)NV12, (string)NV16, (string)NV24, (string)GRAY8, (string)BGRx, (string)RGBA, (string)Y42B }
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'
SRC: 'src'
Pad Template: 'src'
Element Properties:
async-handling : The bin will handle Asynchronous state changes
flags: readable, writable
Boolean. Default: false
cuda-blob-detection : Use blob detection algorithm (in charge of detecting the motion bounding boxes) implemented in cuda otherwise use cpu blob detection
flags: readable, writable
Boolean. Default: false
grayscale : When enabled, the motion detection is performed over a grayscaleimage (color dropped)
flags: readable, writable
Boolean. Default: true
message-forward : Forwards all children messages
flags: readable, writable
Boolean. Default: false
name : The name of the object
flags: readable, writable
String. Default: "rrmotiondetectionbin0"
parent : The parent of the object
flags: readable, writable
Object of type "GstObject"