BoB robotics
The Brains on Board robotics library
BoBRobotics::Video::RandomInput< GeneratorType > Class Template Reference

A Video::Input which generates white noise, for testing purposes. More...

#include <randominput.h>

Inheritance diagram for BoBRobotics::Video::RandomInput< GeneratorType >:
BoBRobotics::Video::Input

Public Member Functions

 RandomInput (const cv::Size &size, const std::string &cameraName="random", const typename GeneratorType::result_type seed=getRandomSeed())
 
virtual bool readFrame (cv::Mat &outFrame) override
 Try to read a frame in colour from this video source. More...
 
virtual bool readGreyscaleFrame (cv::Mat &outFrame) override
 Try to read a frame in greyscale from this video source. More...
 
virtual std::string getCameraName () const override
 Get the name of this type of camera as a (short) string. More...
 
virtual cv::Size getOutputSize () const override
 Get the current output resolution of this video stream. More...
 
virtual void setOutputSize (const cv::Size &size) override
 Set the output resolution of this video stream. More...
 
virtual bool needsUnwrapping () const override
 Whether this video source needs unwrapping with an ImgProc::OpenCVUnwrap360. More...
 
- Public Member Functions inherited from BoBRobotics::Video::Input
ImgProc::OpenCVUnwrap360 createUnwrapper (const cv::Size &unwrapRes) const
 Create an ImgProc::OpenCVUnwrap360 object for this video stream. More...
 
virtual std::string getCameraName () const
 Get the name of this type of camera as a (short) string. More...
 
virtual units::frequency::hertz_t getFrameRate () const
 
virtual cv::Size getOutputSize () const =0
 Get the current output resolution of this video stream. More...
 
virtual bool needsUnwrapping () const
 Whether this video source needs unwrapping with an ImgProc::OpenCVUnwrap360. More...
 
virtual void setOutputSize (const cv::Size &)
 Set the output resolution of this video stream. More...
 
virtual bool readFrame (cv::Mat &outFrame)=0
 Try to read a frame in colour from this video source. More...
 
virtual bool readGreyscaleFrame (cv::Mat &outFrame)
 Try to read a frame in greyscale from this video source. More...
 
void readFrameSync (cv::Mat &outFrame)
 Read a frame synchronously, blocking until a new frame is received.
 
void readGreyscaleFrameSync (cv::Mat &outFrame)
 
void write (cv::FileStorage &fs) const
 Allows OpenCV to serialise info about this Input.
 

Additional Inherited Members

- Static Public Attributes inherited from BoBRobotics::Video::Input
static constexpr const char * DefaultCameraName = "unknown_camera"
 

Detailed Description

template<typename GeneratorType = std::mt19937>
class BoBRobotics::Video::RandomInput< GeneratorType >

A Video::Input which generates white noise, for testing purposes.

Member Function Documentation

◆ getCameraName()

template<typename GeneratorType = std::mt19937>
virtual std::string BoBRobotics::Video::RandomInput< GeneratorType >::getCameraName ( ) const
inlineoverridevirtual

Get the name of this type of camera as a (short) string.

Note that this is used to load the appropriate unwrapping parameters (we look for a file called [camera name].yaml).

Reimplemented from BoBRobotics::Video::Input.

◆ getOutputSize()

template<typename GeneratorType = std::mt19937>
virtual cv::Size BoBRobotics::Video::RandomInput< GeneratorType >::getOutputSize ( ) const
inlineoverridevirtual

Get the current output resolution of this video stream.

Implements BoBRobotics::Video::Input.

◆ needsUnwrapping()

template<typename GeneratorType = std::mt19937>
virtual bool BoBRobotics::Video::RandomInput< GeneratorType >::needsUnwrapping ( ) const
inlineoverridevirtual

Whether this video source needs unwrapping with an ImgProc::OpenCVUnwrap360.

Reimplemented from BoBRobotics::Video::Input.

◆ readFrame()

template<typename GeneratorType = std::mt19937>
virtual bool BoBRobotics::Video::RandomInput< GeneratorType >::readFrame ( cv::Mat &  outFrame)
inlineoverridevirtual

Try to read a frame in colour from this video source.

The output frame should have type CV_8UC3.

Returns
Whether a new frame was read

Implements BoBRobotics::Video::Input.

◆ readGreyscaleFrame()

template<typename GeneratorType = std::mt19937>
virtual bool BoBRobotics::Video::RandomInput< GeneratorType >::readGreyscaleFrame ( cv::Mat &  outFrame)
inlineoverridevirtual

Try to read a frame in greyscale from this video source.

The output frame should have type CV_8UC.

Returns
Whether a new frame was read

Reimplemented from BoBRobotics::Video::Input.

◆ setOutputSize()

template<typename GeneratorType = std::mt19937>
virtual void BoBRobotics::Video::RandomInput< GeneratorType >::setOutputSize ( const cv::Size &  )
inlineoverridevirtual

Set the output resolution of this video stream.

Reimplemented from BoBRobotics::Video::Input.


The documentation for this class was generated from the following file: