WPILibC++ 2023.4.3
|
A sink for user code to accept raw video frames as OpenCV images. More...
#include <cscore_raw_cv.h>
Public Member Functions | |
RawCvSink ()=default | |
RawCvSink (std::string_view name) | |
Create a sink for accepting OpenCV images. More... | |
RawCvSink (std::string_view name, std::function< void(uint64_t time)> processFrame) | |
Create a sink for accepting OpenCV images in a separate thread. More... | |
uint64_t | GrabFrame (cv::Mat &image, double timeout=0.225) |
Wait for the next frame and get the image. More... | |
uint64_t | GrabFrameNoTimeout (cv::Mat &image) |
Wait for the next frame and get the image. More... | |
uint64_t | GrabFrameDirect (cv::Mat &image, double timeout=0.225) |
Wait for the next frame and get the image. More... | |
uint64_t | GrabFrameNoTimeoutDirect (cv::Mat &image) |
Wait for the next frame and get the image. More... | |
A sink for user code to accept raw video frames as OpenCV images.
If you are using the WPILib OpenCV builds, do not use this, and instead include "cscore_cv.h" to get a more performant version.
This is not dependent on any opencv binary ABI, and can be used with versions of OpenCV that are not 3. If using OpenCV 3, use CvSink.
|
default |
|
inlineexplicit |
Create a sink for accepting OpenCV images.
WaitForFrame() must be called on the created sink to get each new image.
name | Source name (arbitrary unique identifier) |
|
inline |
Create a sink for accepting OpenCV images in a separate thread.
A thread will be created that calls WaitForFrame() and calls the processFrame() callback each time a new frame arrives.
name | Source name (arbitrary unique identifier) |
processFrame | Frame processing function; will be called with a time=0 if an error occurred. processFrame should call GetImage() or GetError() as needed, but should not call (except in very unusual circumstances) WaitForImage(). |
|
inline |
Wait for the next frame and get the image.
Times out (returning 0) after timeout seconds. The provided image will have three 8-bit channels stored in BGR order.
|
inline |
Wait for the next frame and get the image.
Times out (returning 0) after timeout seconds. The provided image will have three 8-bit channels stored in BGR order.
|
inline |
Wait for the next frame and get the image.
May block forever. The provided image will have three 8-bit channels stored in BGR order.
|
inline |
Wait for the next frame and get the image.
May block forever. The provided image will have three 8-bit channels stored in BGR order.