RidgeRun OpenCV Fork: Difference between revisions
No edit summary |
No edit summary |
||
Line 14: | Line 14: | ||
* GStreamer support | * GStreamer support | ||
* CUDA support (if applicable) | * CUDA support (if applicable) | ||
== Enhancements == | |||
=== GStreamer Video Capture === | |||
Tested under the following conditions | |||
* OpenCV Version: 4.4.0 | |||
* FPS and CPU usage taken with the [https://github.com/ridgerun/gst-perf GstPerf] element. | |||
* The following script: | |||
<script lang=python> | |||
#!/usr/bin/env python3 | |||
import cv2 as cv | |||
PIPE = "videotestsrc pattern=black ! \ | |||
video/x-raw,format=BGR,width=1920,height=1080 ! \ | |||
appsink sync=false drop=false max-buffers=3" | |||
cap = cv.VideoCapture(PIPE, cv.CAP_GSTREAMER) | |||
while True: | |||
ret, frame = cap.read() | |||
cv.imshow('display', frame) | |||
if cv.waitKey(1) & 0xFF == ord('q'): | |||
break | |||
cap.release() | |||
cv.destroyAllWindows() | |||
</script> |
Revision as of 04:54, 18 September 2020
Introduction
The RidgeRun OpenCV fork is a modified version of the project with various improvements around speed and efficiency. While some changes are general (i.e.: any platform will benefit from them), others are specific to the NVIDIA Jetson family.
The fork is hosted at:
https://github.com/RidgeRun/opencv
Building the Project
Follow the instructions in our Compiling OpenCV from Source page. Make sure you select:
- RidgeRun fork
- GStreamer support
- CUDA support (if applicable)
Enhancements
GStreamer Video Capture
Tested under the following conditions
- OpenCV Version: 4.4.0
- FPS and CPU usage taken with the GstPerf element.
- The following script:
<script lang=python>
- !/usr/bin/env python3
import cv2 as cv
PIPE = "videotestsrc pattern=black ! \
video/x-raw,format=BGR,width=1920,height=1080 ! \ appsink sync=false drop=false max-buffers=3"
cap = cv.VideoCapture(PIPE, cv.CAP_GSTREAMER)
while True:
ret, frame = cap.read() cv.imshow('display', frame) if cv.waitKey(1) & 0xFF == ord('q'): break
cap.release() cv.destroyAllWindows() </script>