onnx: add plugin to apply ONNX neural network models to video
authorAaron Boxer <boxerab@gmail.com>
Tue, 23 Feb 2021 16:56:53 +0000 (11:56 -0500)
committerNicolas Dufresne <nicolas@ndufresne.ca>
Tue, 27 Apr 2021 13:05:21 +0000 (13:05 +0000)
commitf71eb2949772176a68ae5217cc94ae4d75a8ae95
tree9b41467383a3ac7067ca38d1b490e4a26b191de0
parentf1ec6ddd5e0f5251a610e7402bdaad99e5cac72b
onnx: add plugin to apply ONNX neural network models to video

This MR provides a transform element that leverage ONNX runtime
to run AI inference on a broad range of neural network toolkits, running
on either CPU or GPU. ONNX supports 16 different providers at the
moment, so with ONNX we immediately get support for Nvidia, AMD, Xilinx
and many others.

For the first release, this plugin adds a gstonnxobjectdetector element to
detect objects in video frames. Meta data generated by the model is
attached to the video buffer as a custom GstObjectDetectorMeta meta.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1997>
ext/meson.build
ext/onnx/gstonnx.c [new file with mode: 0644]
ext/onnx/gstonnxclient.cpp [new file with mode: 0644]
ext/onnx/gstonnxclient.h [new file with mode: 0644]
ext/onnx/gstonnxelement.c [new file with mode: 0644]
ext/onnx/gstonnxelement.h [new file with mode: 0644]
ext/onnx/gstonnxobjectdetector.cpp [new file with mode: 0644]
ext/onnx/gstonnxobjectdetector.h [new file with mode: 0644]
ext/onnx/meson.build [new file with mode: 0644]
meson_options.txt