#include <usbCamera/linux/V4L_camera.h>
Inheritance diagram for V4L_camera:Public Member Functions | |
| V4L_camera () | |
| bool | open (yarp::os::Searchable &config) override |
| open device More... | |
| bool | close () override |
| close device More... | |
| yarp::os::Stamp | getLastInputStamp () override |
| Return the time stamp relative to the last acquisition. More... | |
| bool | getRgbBuffer (unsigned char *buffer) override |
| Get a rgb buffer from the frame grabber, if required demosaicking/color reconstruction is applied. More... | |
| bool | getRawBuffer (unsigned char *buffer) override |
| Get the raw buffer from the frame grabber. More... | |
| int | getRawBufferSize () override |
| Get the size of the card's internal buffer, the user should use this method to allocate the storage to contain a raw frame (getRawBuffer). More... | |
| int | height () const override |
| Return the height of each frame. More... | |
| int | width () const override |
| Return the width of each frame. More... | |
| int | getRgbHeight () override |
| Return the height of each frame. More... | |
| int | getRgbWidth () override |
| Return the width of each frame. More... | |
| bool | getRgbSupportedConfigurations (yarp::sig::VectorOf< yarp::dev::CameraConfig > &configurations) override |
| Get the possible configurations of the camera. More... | |
| bool | getRgbResolution (int &width, int &height) override |
| Get the resolution of the rgb image from the camera. More... | |
| bool | setRgbResolution (int width, int height) override |
| Set the resolution of the rgb image from the camera. More... | |
| bool | getRgbFOV (double &horizontalFov, double &verticalFov) override |
| Get the field of view (FOV) of the rgb camera. More... | |
| bool | setRgbFOV (double horizontalFov, double verticalFov) override |
| Set the field of view (FOV) of the rgb camera. More... | |
| bool | getRgbIntrinsicParam (yarp::os::Property &intrinsic) override |
| Get the intrinsic parameters of the rgb camera. More... | |
| bool | getRgbMirroring (bool &mirror) override |
| Get the mirroring setting of the sensor. More... | |
| bool | setRgbMirroring (bool mirror) override |
| Set the mirroring setting of the sensor. More... | |
| bool | getCameraDescription (CameraDescriptor *camera) override |
| Get a basic description of the camera hw. More... | |
| bool | hasFeature (int feature, bool *hasFeature) override |
| Check if camera has the requested feature (saturation, brightness ... More... | |
| bool | setFeature (int feature, double value) override |
| Set the requested feature to a value (saturation, brightness ... More... | |
| bool | getFeature (int feature, double *value) override |
| Get the current value for the requested feature. More... | |
| bool | setFeature (int feature, double value1, double value2) override |
| Set the requested feature to a value using 2 params (like white balance) More... | |
| bool | getFeature (int feature, double *value1, double *value2) override |
| Get the current value for the requested feature. More... | |
| bool | hasOnOff (int feature, bool *_hasOnOff) override |
| Check if the camera has the ability to turn on/off the requested feature. More... | |
| bool | setActive (int feature, bool onoff) override |
| Set the requested feature on or off. More... | |
| bool | getActive (int feature, bool *_isActive) override |
| Get the current status of the feature, on or off. More... | |
| bool | hasAuto (int feature, bool *_hasAuto) override |
| Check if the requested feature has the 'auto' mode. More... | |
| bool | hasManual (int feature, bool *_hasManual) override |
| Check if the requested feature has the 'manual' mode. More... | |
| bool | hasOnePush (int feature, bool *_hasOnePush) override |
| Check if the requested feature has the 'onePush' mode. More... | |
| bool | setMode (int feature, FeatureMode mode) override |
| Set the requested mode for the feature. More... | |
| bool | getMode (int feature, FeatureMode *mode) override |
| Get the current mode for the feature. More... | |
| bool | setOnePush (int feature) override |
| Set the requested feature to a value (saturation, brightness ... More... | |
Public Member Functions inherited from yarp::dev::DeviceDriver | |
| ~DeviceDriver () override=default | |
| Destructor. More... | |
| template<class T > | |
| bool | view (T *&x) |
| Get an interface to the device driver. More... | |
| virtual DeviceDriver * | getImplementation () |
| Some drivers are bureaucrats, pointing at others. More... | |
Public Member Functions inherited from yarp::os::IConfig | |
| virtual | ~IConfig () |
| Destructor. More... | |
| virtual bool | configure (Searchable &config) |
| Change online parameters. More... | |
Public Member Functions inherited from yarp::dev::IFrameGrabberRgb | |
| virtual | ~IFrameGrabberRgb () |
Public Member Functions inherited from yarp::dev::IFrameGrabber | |
| virtual | ~IFrameGrabber () |
Public Member Functions inherited from yarp::dev::IFrameGrabberControls | |
| virtual | ~IFrameGrabberControls () |
| Destructor. More... | |
| virtual bool | setBrightness (double v) |
| Set the brightness. More... | |
| virtual bool | setExposure (double v) |
| Set the exposure. More... | |
| virtual bool | setSharpness (double v) |
| Set the sharpness. More... | |
| virtual bool | setWhiteBalance (double blue, double red) |
| Set the white balance for the frame grabber. More... | |
| virtual bool | setHue (double v) |
| Set the hue. More... | |
| virtual bool | setSaturation (double v) |
| Set the saturation. More... | |
| virtual bool | setGamma (double v) |
| Set the gamma. More... | |
| virtual bool | setShutter (double v) |
| Set the shutter parameter. More... | |
| virtual bool | setGain (double v) |
| Set the gain. More... | |
| virtual bool | setIris (double v) |
| Set the iris. More... | |
| virtual double | getBrightness () |
| Read the brightness parameter. More... | |
| virtual double | getExposure () |
| Read the exposure parameter. More... | |
| virtual double | getSharpness () |
| Read the sharpness parameter. More... | |
| virtual bool | getWhiteBalance (double &blue, double &red) |
| Read the white balance parameters. More... | |
| virtual double | getHue () |
| Read the hue parameter. More... | |
| virtual double | getSaturation () |
| Read the saturation parameter. More... | |
| virtual double | getGamma () |
| Read the gamma parameter. More... | |
| virtual double | getShutter () |
| Read the shutter parameter. More... | |
| virtual double | getGain () |
| Read the gain parameter. More... | |
| virtual double | getIris () |
| Read the iris parameter. More... | |
| cameraFeature_id_t | featureVOCABEnum (int vocab) |
| int | featureEnum2Vocab (cameraFeature_id_t _enum) |
| std::string | busType2String (BusType type) |
| FeatureMode | toFeatureMode (bool _auto) |
Public Member Functions inherited from yarp::dev::IPreciselyTimed | |
| virtual | ~IPreciselyTimed () |
Public Member Functions inherited from yarp::os::PeriodicThread | |
| PeriodicThread (double period, ShouldUseSystemClock useSystemClock=ShouldUseSystemClock::No) | |
| Constructor. More... | |
| virtual | ~PeriodicThread () |
| bool | start () |
| Call this to start the thread. More... | |
| void | step () |
| Call this to "step" the thread rather than starting it. More... | |
| void | stop () |
| Call this to stop the thread, this call blocks until the thread is terminated (and releaseThread() called). More... | |
| void | askToStop () |
| Stop the thread. More... | |
| bool | isRunning () const |
| Returns true when the thread is started, false otherwise. More... | |
| bool | isSuspended () const |
| Returns true when the thread is suspended, false otherwise. More... | |
| bool | setPeriod (double period) |
| Set the (new) period of the thread. More... | |
| double | getPeriod () const |
| Return the current period of the thread. More... | |
| void | suspend () |
| Suspend the thread, the thread keeps running by doLoop is never executed. More... | |
| void | resume () |
| Resume the thread if previously suspended. More... | |
| void | resetStat () |
| Reset thread statistics. More... | |
| double | getEstimatedPeriod () const |
| Return estimated period since last reset. More... | |
| void | getEstimatedPeriod (double &av, double &std) const |
| Return estimated period since last reset. More... | |
| unsigned int | getIterations () const |
| Return the number of iterations performed since last reset. More... | |
| double | getEstimatedUsed () const |
| Return the estimated duration of the run() function since last reset. More... | |
| void | getEstimatedUsed (double &av, double &std) const |
| Return estimated duration of the run() function since last reset. More... | |
| int | setPriority (int priority, int policy=-1) |
| Set the priority and scheduling policy of the thread, if the OS supports that. More... | |
| int | getPriority () const |
| Query the current priority of the thread, if the OS supports that. More... | |
| int | getPolicy () const |
| Query the current scheduling policy of the thread, if the OS supports that. More... | |
Public Member Functions inherited from yarp::dev::IRgbVisualParams | |
| virtual | ~IRgbVisualParams () |
Additional Inherited Members | |
Protected Member Functions inherited from yarp::os::PeriodicThread | |
| virtual void | beforeStart () |
| Called just before a new thread starts. More... | |
| virtual void | afterStart (bool success) |
| Called just after a new thread starts (or fails to start), this is executed by the same thread that calls start(). More... | |
Definition at line 141 of file V4L_camera.h.
| V4L_camera::V4L_camera | ( | ) |
Definition at line 100 of file V4L_camera.cpp.
|
overridevirtual |
close device
Reimplemented from yarp::dev::DeviceDriver.
Definition at line 882 of file V4L_camera.cpp.
|
overridevirtual |
Get the current status of the feature, on or off.
| feature | the identifier of the feature to check |
| isActive | flag true if the feature is active, false otherwise |
Implements yarp::dev::IFrameGrabberControls.
Definition at line 1810 of file V4L_camera.cpp.
|
overridevirtual |
Get a basic description of the camera hw.
This is mainly used to determine the HW bus type in order to choose the corresponding interface for advanced controls.
| device | returns an identifier for the bus |
Implements yarp::dev::IFrameGrabberControls.
Definition at line 1631 of file V4L_camera.cpp.
|
overridevirtual |
Get the current value for the requested feature.
| feature | the identifier of the feature to read |
| value | pointer to current value of the feature, from 0 to 1 expressed as a percentage |
Implements yarp::dev::IFrameGrabberControls.
Definition at line 1684 of file V4L_camera.cpp.
|
overridevirtual |
Get the current value for the requested feature.
| feature | the identifier of the feaature to read |
| value1 | returns the current value of the feature, from 0 to 1 expressed as a percentage |
| value2 | returns the current value of the feature, from 0 to 1 expressed as a percentage |
Implements yarp::dev::IFrameGrabberControls.
Definition at line 1722 of file V4L_camera.cpp.
|
overridevirtual |
Return the time stamp relative to the last acquisition.
Implements yarp::dev::IPreciselyTimed.
Definition at line 154 of file V4L_camera.cpp.
|
overridevirtual |
Get the current mode for the feature.
| feature | the identifier of the feature to change |
| hasAuto | flag true if the feature is has 'auto' mode, false otherwise |
Implements yarp::dev::IFrameGrabberControls.
Definition at line 1971 of file V4L_camera.cpp.
|
overridevirtual |
Get the raw buffer from the frame grabber.
The driver returns a copy of the internal memory buffer acquired by the frame grabber, no post processing is applied (e.g. no color reconstruction/demosaicking). The user must allocate the buffer; the size of the buffer, in bytes, is determined by calling getRawBufferSize().
| buffer | pointer to the buffer to be filled (must be previously allocated) |
Implements yarp::dev::IFrameGrabber.
Definition at line 927 of file V4L_camera.cpp.
|
overridevirtual |
Get the size of the card's internal buffer, the user should use this method to allocate the storage to contain a raw frame (getRawBuffer).
Implements yarp::dev::IFrameGrabber.
Definition at line 943 of file V4L_camera.cpp.
|
overridevirtual |
Get a rgb buffer from the frame grabber, if required demosaicking/color reconstruction is applied.
| buffer | pointer to the buffer to be filled (must be previously allocated) |
Implements yarp::dev::IFrameGrabberRgb.
Definition at line 903 of file V4L_camera.cpp.
|
overridevirtual |
Get the field of view (FOV) of the rgb camera.
| horizontalFov | will return the value of the horizontal fov in degrees |
| verticalFov | will return the value of the vertical fov in degrees |
Implements yarp::dev::IRgbVisualParams.
Definition at line 348 of file V4L_camera.cpp.
|
overridevirtual |
Return the height of each frame.
Implements yarp::dev::IRgbVisualParams.
Definition at line 313 of file V4L_camera.cpp.
|
overridevirtual |
Get the intrinsic parameters of the rgb camera.
| intrinsic | return a Property containing intrinsic parameters of the optical model of the camera. |
The yarp::os::Property describing the intrinsic parameters is expected to be in the form:
| Parameter name | SubParameter | Type | Units | Default Value | Required | Description | Notes |
|---|---|---|---|---|---|---|---|
| physFocalLength | - | double | m | - | Yes | Physical focal length of the lens in meters | |
| focalLengthX | - | double | pixel | - | Yes | Horizontal component of the focal length as a multiple of pixel width | |
| focalLengthY | - | double | pixel | - | Yes | Vertical component of the focal length as a multiple of pixel height | |
| principalPointX | - | double | pixel | - | Yes | X coordinate of the principal point | |
| principalPointY | - | double | pixel | - | Yes | Y coordinate of the principal point | |
| retificationMatrix | - | 4x4 double matrix | - | - | Yes | Matrix that describes the lens' distortion | |
| distortionModel | - | string | - | - | Yes | Reference to group of parameters describing the distortion model of the camera, example 'cameraDistortionModelGroup' | This is another group's name to be searched for in the config file |
| cameraDistortionModelGroup | |||||||
| name | string | - | - | Yes | Name of the distortion model, see notes | right now only 'plumb_bob' is supported | |
| k1 | double | - | - | Yes | Radial distortion coefficient of the lens | ||
| k2 | double | - | - | Yes | Radial distortion coefficient of the lens | ||
| k3 | double | - | - | Yes | Radial distortion coefficient of the lens | ||
| t1 | double | - | - | Yes | Tangential distortion of the lens | ||
| t2 | double | - | - | Yes | Tangential distortion of the lens |
Implements yarp::dev::IRgbVisualParams.
Definition at line 361 of file V4L_camera.cpp.
|
overridevirtual |
Get the mirroring setting of the sensor.
| mirror | true if image is mirrored, false otherwise |
Implements yarp::dev::IRgbVisualParams.
Definition at line 367 of file V4L_camera.cpp.
|
overridevirtual |
Get the resolution of the rgb image from the camera.
| width | image width |
| height | image height |
Reimplemented from yarp::dev::IRgbVisualParams.
Definition at line 328 of file V4L_camera.cpp.
|
overridevirtual |
Get the possible configurations of the camera.
| configurations | list of camera supported configurations as CameraConfig type |
Reimplemented from yarp::dev::IRgbVisualParams.
Definition at line 323 of file V4L_camera.cpp.
|
overridevirtual |
Return the width of each frame.
Implements yarp::dev::IRgbVisualParams.
Definition at line 318 of file V4L_camera.cpp.
|
overridevirtual |
Check if the requested feature has the 'auto' mode.
| feature | the identifier of the feature to check |
| hasAuto | flag true if the feature is has 'auto' mode, false otherwise |
Implements yarp::dev::IFrameGrabberControls.
Definition at line 1843 of file V4L_camera.cpp.
|
overridevirtual |
Check if camera has the requested feature (saturation, brightness ...
)
| feature | the identifier of the feature to check |
| hasFeature | flag value: true if the feature is present, false otherwise |
Implements yarp::dev::IFrameGrabberControls.
Definition at line 1638 of file V4L_camera.cpp.
|
overridevirtual |
Check if the requested feature has the 'manual' mode.
| feature | the identifier of the feature to check |
| hasAuto | flag true if the feature is has 'manual' mode, false otherwise |
Implements yarp::dev::IFrameGrabberControls.
Definition at line 1873 of file V4L_camera.cpp.
|
overridevirtual |
Check if the requested feature has the 'onePush' mode.
| feature | the identifier of the feature to check |
| hasAuto | flag true if the feature is has 'onePush' mode, false otherwise |
Implements yarp::dev::IFrameGrabberControls.
Definition at line 1887 of file V4L_camera.cpp.
|
overridevirtual |
Check if the camera has the ability to turn on/off the requested feature.
| feature | the identifier of the feature to change |
| hasOnOff | flag true if this feature can be turned on/off, false otherwise. |
Implements yarp::dev::IFrameGrabberControls.
Definition at line 1732 of file V4L_camera.cpp.
|
overridevirtual |
Return the height of each frame.
Implements yarp::dev::IFrameGrabber.
Definition at line 952 of file V4L_camera.cpp.
|
overridevirtual |
open device
Reimplemented from yarp::dev::DeviceDriver.
Definition at line 234 of file V4L_camera.cpp.
|
overridevirtual |
Set the requested feature on or off.
| feature | the identifier of the feature to change |
| onoff | true to activate, off to deactivate the feature |
Implements yarp::dev::IFrameGrabberControls.
Definition at line 1760 of file V4L_camera.cpp.
|
overridevirtual |
Set the requested feature to a value (saturation, brightness ...
)
| feature | the identifier of the feature to change |
| value | new value of the feature, range from 0 to 1 expressed as a percentage |
Implements yarp::dev::IFrameGrabberControls.
Definition at line 1665 of file V4L_camera.cpp.
|
overridevirtual |
Set the requested feature to a value using 2 params (like white balance)
| feature | the identifier of the feature to change |
| value1 | first param, from 0 to 1 expressed as a percentage |
| value2 | second param, from 0 to 1 expressed as a percentage |
Implements yarp::dev::IFrameGrabberControls.
Definition at line 1709 of file V4L_camera.cpp.
|
overridevirtual |
Set the requested mode for the feature.
| feature | the identifier of the feature to change |
| auto_onoff | true to activate 'auto' mode, false to activate 'manual' mode |
Implements yarp::dev::IFrameGrabberControls.
Definition at line 1902 of file V4L_camera.cpp.
|
overridevirtual |
Set the requested feature to a value (saturation, brightness ...
)
| feature | the identifier of the feature to change |
| value | new value of the feature, from 0 to 1 as a percentage of param range |
Implements yarp::dev::IFrameGrabberControls.
Definition at line 2038 of file V4L_camera.cpp.
|
overridevirtual |
Set the field of view (FOV) of the rgb camera.
| horizontalFov | will set the value of the horizontal fov in degrees |
| verticalFov | will set the value of the vertical fov in degrees |
Implements yarp::dev::IRgbVisualParams.
Definition at line 355 of file V4L_camera.cpp.
|
overridevirtual |
Set the mirroring setting of the sensor.
| mirror | true if image should be mirrored, false otherwise |
Implements yarp::dev::IRgbVisualParams.
Definition at line 374 of file V4L_camera.cpp.
|
overridevirtual |
Set the resolution of the rgb image from the camera.
| width | image width |
| height | image height |
Implements yarp::dev::IRgbVisualParams.
Definition at line 335 of file V4L_camera.cpp.
|
overridevirtual |
Return the width of each frame.
Implements yarp::dev::IFrameGrabber.
Definition at line 965 of file V4L_camera.cpp.