Special device image. More...
#include <cvb/driver/device_image.hpp>
Inherits Image.
Inherited by EmuImage, VideoImage, and VinImage.
Public Member Functions | |
DevicePtr | Parent () const noexcept |
Gets the parent device of this image. More... | |
bool | IsDisconnected () const noexcept |
Gets whether this image is now standalone (not connected to a device anymore). More... | |
Public Member Functions inherited from Image | |
Image (Size2D< int > size, int numPlanes=1, DataType dataType=DataType::Int8BppUnsigned()) | |
Constructs an uninitialized image with the given parameters. More... | |
Image (int width, int height, int numPlanes=1, DataType dataType=DataType::Int8BppUnsigned()) | |
Constructs an uninitialized image with the given parameters. More... | |
Image (const String &fileName) | |
Loads an image with the given file name. More... | |
void * | Handle () const noexcept |
Classic API image handle. More... | |
int | PlanesCount () const noexcept |
Get the number of planes for this image. More... | |
bool | PlaneDataTypesIdentical () const noexcept |
Check if all planes have the same data type. More... | |
ImagePlane | Plane (int plane) const |
Indexed access to the individual plane information. More... | |
std::vector< ImagePlane > | Planes () const noexcept |
Access all planes for this image. More... | |
std::vector< double > | GetPixel (Point2D< int > position) const |
Gets the pixel values for all planes at a give position. More... | |
int | Height () const noexcept |
Height of the image in pixels. More... | |
int | Width () const noexcept |
Width of the image in pixels. More... | |
Cvb::ColorModel | ColorModel () const noexcept |
Color model realized by this image. More... | |
void | Save (const String &fileName) const |
Write the current content of the image into a file. More... | |
std::unique_ptr< Image > | Map (Rect< int > rect) const |
Creates a mapped image of the region of this image. More... | |
std::unique_ptr< Image > | Map (Rect< int > sourceRect, Size2D< int > targetSize) const |
Creates a mapped image of the region of that image scaled to the size. More... | |
std::unique_ptr< Image > | Clone () const |
Creates a new image object, that is a copy of the current instance. More... | |
void | Copy (Image &targetImage, Rect< int > sourceRect, Point2D< int > targetPosition) const |
Copies the image data from the source rectangle of this image to the target position inside the target image. More... | |
void | Copy (Image &targetImage) const |
Copies the image data from this image to the target image. More... | |
Size2D< int > | Size () const noexcept |
Size of the image in pixels. More... | |
Rect< int > | Bounds () const noexcept |
Bounding rectangle of the image in pixels. More... | |
void | RaisePixelContentChanged () const |
Inform clients listening to the pixel content changed event, that the image data has been completely updated (full area). More... | |
void | RaisePixelContentChanged (Rect< int > rect) const |
Inform clients listening to the pixel content changed event, that the image data has been updated in the given rectangle. More... | |
EventCookie | RegisterEventPixelContentChanged (std::function< void(const Image &, Rect< int >)> handler) |
Register a listener to the pixel content changed event. More... | |
void | UnregisterEventPixelContentChanged (EventCookie eventCookie) noexcept |
Manually unregister a listener from the pixel content changed event. More... | |
Point2D< double > | ImageToPixelCoordinates (Point2D< double > point) const noexcept |
Convert a point from image to pixel coordinates. More... | |
Area2D | ImageToPixelCoordinates (Area2D area) const noexcept |
Convert an Area2D from image to pixel coordinates. More... | |
Point2D< double > | PixelToImageCoordinates (Point2D< double > point) const noexcept |
Convert a point from pixel to image coordinates. More... | |
Area2D | PixelToImageCoordinates (Area2D area) const noexcept |
Convert an Area2D from pixel to image coordinates. More... | |
AffineMatrix2D | CoordinateSystem () const noexcept |
Get the coordinate system of the image. More... | |
void | SetCoordinateSystem (AffineMatrix2D affineMatrix) noexcept |
Set the coordinate system of the image. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from Image | |
static std::unique_ptr< Image > | Load (const String &fileName) |
Loads an image with the given file name. More... | |
static std::unique_ptr< Image > | Create (Size2D< int > size, int numPlanes=1, DataType dataType=DataType::Int8BppUnsigned()) |
Creates an uninitialized image with the given parameters. More... | |
static std::unique_ptr< Image > | Create (int width, int height, int numPlanes=1, DataType dataType=DataType::Int8BppUnsigned()) |
Creates an uninitialized image with the given parameters. More... | |
template<class RANGE > | |
static TypedRange< std::unique_ptr< Image >, ImagePtr, RANGE >::type | FromImages (MappingOption mapping, const RANGE &images) |
Create an image that is the result of concatenating a series of input images. More... | |
template<class... IMAGES> | |
static VarArgRange< std::unique_ptr< Image >, constImage &, IMAGES... >::type | FromImages (MappingOption mapping, const IMAGES &... images) |
Create an image that is the result of concatenating a series of input images. More... | |
template<class RANGE > | |
static TypedRange< std::unique_ptr< Image >, ImagePlane, RANGE >::type | FromPlanes (MappingOption mapping, const RANGE &planes) |
Create an image that is the result of concatenating a series of input planes. More... | |
template<class... PLANES> | |
static VarArgRange< std::unique_ptr< Image >, ImagePlane &&, PLANES... >::type | FromPlanes (MappingOption mapping, PLANES &&... planes) |
Create an image that is the result of concatenating a series of input planes. More... | |
static std::unique_ptr< Image > | FromHandle (HandleGuard< Image > &&guard) |
Creates an image from a classic API handle. More... | |
template<class T , class... ARGS> | |
static std::unique_ptr< T > | FromHandle (HandleGuard< Image > &&guard, ARGS &&... args) |
Creates an image from a classic API handle (typed). More... | |
Related Functions inherited from Image | |
std::unique_ptr< Image > | AffineTransform (const Image &image, AffineMatrix2D affineMatrix, Area2D area) |
Creates an affine transformation (homogeneous matrix transformation) of an area of the given image. More... | |
std::unique_ptr< Image > | AffineTransform (const Image &image, AffineMatrix2D affineMatrix) |
Creates an affine transformation (homogeneous matrix transformation) of the whole image. More... | |
std::unique_ptr< Image > | LinearTransform (const Image &image, Matrix2D matrix) |
Creates a linear transformation (matrix transformation). More... | |
std::unique_ptr< Image > | MapTo8Bit (const Image &image, PlaneNormalization planeNormalization=PlaneNormalization::Identical) |
Take an input image and scale the pixel values to fit into the 8 bit value range. More... | |
std::unique_ptr< Image > | NormalizeMinMax (const Image &image, double targetMin, double targetMax) |
Normalize an input image using min/max normalization (the gray values of the image will be stretched or compressed to fit the input target minimum and maximum values). More... | |
std::unique_ptr< Image > | NormalizeMeanVariance (const Image &image, double targetMean, double targetVariance) |
Normalize an input image using mean/variance normalization (the gray values of the image will be stretched modified to generate a histogram as close as possible to the input target mean and variance values). More... | |
std::unique_ptr< Image > | PolarTransform (const Image &image, Point2D< double > center, double innerRadius, double outerRadius, Angle startAngle, Angle totalAngle) |
Create a polar transformation (i.e. unwrap a ring structure from inside source image into a rectangular image). More... | |
std::unique_ptr< Image > | PolarTransform (const Image &image, Point2D< double > center, double innerRadius, double outerRadius) |
Create a polar transformation (i.e. unwrap a ring structure from inside source image into a rectangular image). More... | |
std::unique_ptr< Image > | InversePolarTransform (const Image &image, Angle startAngle, double innerRadius) |
void | InversePolarTransformToDst (const Image &imageSrc, Point2D< double > center, Angle startAngle, double innerRadius, Image &imageDst) |
Create an inverse polar transformed image (i.e. transform an unwrapped image back into a ring structure). More... | |
Special device image.
This image points to the image data that is currently processed. It is not necessary the newest acquired image. It points to the image buffer that is returned due to the last grab synchronization method (i.e. Stream::Wait() method).
|
inlinenoexcept |
Gets whether this image is now standalone (not connected to a device anymore).
Does | not throw any exception. |
Disconnected images point to the last acquired image in the device's ring buffer. But no other access is possible on these kind of images.
|
inlinenoexcept |
Gets the parent device of this image.
Does | not throw any exception. |