From UVC jpeg webcam to OpenCV using Gstreamer

Thiago Sousa Santos thiagossantos at gmail.com
Mon Apr 3 18:49:57 UTC 2017


On Mon, Apr 3, 2017 at 11:14 AM, Damien Picard <picard.damien at gmail.com>
wrote:

> Hi,
>
> Due to an issue in opencv4tegra, I can not capture from my UVC webcam
> using OpenCV. To get round this problem, I'm trying to use GStreamer and
> its Python bindings to capture jpeg images from the webcam.
>
> To do that, I adapt this tutorial
> <https://gist.githubusercontent.com/willpatera/7984486/raw/54b71f20b6a055839e44d59663ee4783042305cf/gst-appsink-opencv.py>
> with a custom pipeline.
> Currently my pipeline looks like this :
>
> v4l2src ! image/jpeg,width=1920,height=1080 ! jpegdec ! videoconvert !
> appsink name=sink caps=video/x-raw, format=(string){BGR, GRAY8};
> video/x-bayer,format=(string){rggb,bggr,grbg,gbrg}
>
> (The function that convert gstreamer to opencv array is exactly the same
> as in the tutorial)
>
> It works (maybe the colors are not the good ones, but I'm not sure), but
> I'm wondering if there is a way to retrieve the jpeg images directly from
> gstreamer ? By this way, I will decode them using OpenCV and I hope that it
> could, at least, limits processing.
>

Not sure if decoding inside opencv or in gstreamer itself makes any
difference but yes you can have gstreamer pass the jpeg images to you.

If you pay attention to your pipeline, it contains the 'jpegdec' element
that is the one decoding jpegs into a raw format that later gets sent to
appsink and into your application. So, you should just remove jpegdec and
videoconvert and you will have jpeg images delivered directly to appsink.
Remember to also remove the caps restrictions from appsink so it can accept
jpeg input. Something like:

v4l2src ! image/jpeg,width=1920,height=1080 ! appsink name=sink

Hope this helps,


>
> Thank you in advance.
>
> --
> Damien Picard
> Expert GWT
> <http://www.editions-eni.fr/livres/gwt-google-web-toolkit-developpez-des-applications-internet-riches-ria-en-java/.97a1a26e7d5be94763fc45ac2a1e961a.html>
> Mob : 06 11 51 47 78
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
>


-- 
Thiago Sousa Santos
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20170403/7a9b96cc/attachment.html>


More information about the gstreamer-devel mailing list