Class ImageManipConfig

Inheritance Relationships

Base Type

Class Documentation

class ImageManipConfig : public dai::Buffer

ImageManipConfig message. Specifies image manipulation options like:

  • Crop

  • Resize

  • Warp

Public Types

using CropConfig = RawImageManipConfig::CropConfig
using ResizeConfig = RawImageManipConfig::ResizeConfig
using FormatConfig = RawImageManipConfig::FormatConfig

Public Functions

ImageManipConfig()

Construct ImageManipConfig message.

explicit ImageManipConfig(std::shared_ptr<RawImageManipConfig> ptr)
virtual ~ImageManipConfig() = default
ImageManipConfig &setCropRect(float xmin, float ymin, float xmax, float ymax)

Specifies crop with rectangle with normalized values (0..1)

Parameters:
  • xmin – Top left X coordinate of rectangle

  • ymin – Top left Y coordinate of rectangle

  • xmax – Bottom right X coordinate of rectangle

  • ymax – Bottom right Y coordinate of rectangle

ImageManipConfig &setCropRect(std::tuple<float, float, float, float> coordinates)

Specifies crop with rectangle with normalized values (0..1)

Parameters:

coordinates – Coordinate of rectangle

ImageManipConfig &setCropRotatedRect(RotatedRect rr, bool normalizedCoords = true)

Specifies crop with rotated rectangle. Optionally as non normalized coordinates

Parameters:
  • rr – Rotated rectangle which specifies crop

  • normalizedCoords – If true coordinates are in normalized range (0..1) otherwise absolute

ImageManipConfig &setCenterCrop(float ratio, float whRatio = 1.0f)

Specifies a centered crop.

Parameters:
  • ratio – Ratio between input image and crop region (0..1)

  • whRatio – Crop region aspect ratio - 1 equals to square, 1.7 equals to 16:9, …

ImageManipConfig &setWarpTransformFourPoints(std::vector<Point2f> pt, bool normalizedCoords)

Specifies warp by supplying 4 points in either absolute or normalized coordinates

Parameters:
  • pt – 4 points specifying warp

  • normalizedCoords – If true pt is interpreted as normalized, absolute otherwise

ImageManipConfig &setWarpTransformMatrix3x3(std::vector<float> mat)

Specifies warp with a 3x3 matrix

Parameters:

mat – 3x3 matrix

ImageManipConfig &setWarpBorderReplicatePixels()

Specifies that warp replicates border pixels

ImageManipConfig &setWarpBorderFillColor(int red, int green, int blue)

Specifies fill color for border pixels. Example:

  • setWarpBorderFillColor(255,255,255) -> white

  • setWarpBorderFillColor(0,0,255) -> blue

Parameters:
  • red – Red component

  • green – Green component

  • blue – Blue component

ImageManipConfig &setRotationDegrees(float deg)

Specifies clockwise rotation in degrees

Parameters:

deg – Rotation in degrees

ImageManipConfig &setRotationRadians(float rad)

Specifies clockwise rotation in radians

Parameters:

rad – Rotation in radians

ImageManipConfig &setResize(int w, int h)

Specifies output image size. After crop stage the image will be stretched to fit.

Parameters:
  • w – Width in pixels

  • h – Height in pixels

ImageManipConfig &setResize(std::tuple<int, int> size)

Specifies output image size. After crop stage the image will be stretched to fit.

Parameters:

size – Size in pixels

ImageManipConfig &setResizeThumbnail(int w, int h, int bgRed = 0, int bgGreen = 0, int bgBlue = 0)

Specifies output image size. After crop stage the image will be resized by preserving aspect ration. Optionally background can be specified.

Parameters:
  • w – Width in pixels

  • h – Height in pixels

  • bgRed – Red component

  • bgGreen – Green component

  • bgBlue – Blue component

ImageManipConfig &setResizeThumbnail(std::tuple<int, int> size, int bgRed = 0, int bgGreen = 0, int bgBlue = 0)

Specifies output image size. After crop stage the image will be resized by preserving aspect ration. Optionally background can be specified.

Parameters:
  • size – Size in pixels

  • bgRed – Red component

  • bgGreen – Green component

  • bgBlue – Blue component

ImageManipConfig &setFrameType(ImgFrame::Type name)

Specify output frame type.

Parameters:

name – Frame type

ImageManipConfig &setColormap(Colormap colormap, int min, int max)

Specify gray to color conversion map

Parameters:

colormap – map from Colormap enum or Colormap::NONE to disable

ImageManipConfig &setColormap(Colormap colormap, float maxf)
ImageManipConfig &setColormap(Colormap colormap, int max = 255)
ImageManipConfig &setHorizontalFlip(bool flip)

Specify horizontal flip

Parameters:

flip – True to enable flip, false otherwise

void setVerticalFlip(bool flip)

Specify vertical flip

Parameters:

flip – True to enable vertical flip, false otherwise

ImageManipConfig &setReusePreviousImage(bool reuse)

Instruct ImageManip to not remove current image from its queue and use the same for next message.

Parameters:

reuse – True to enable reuse, false otherwise

ImageManipConfig &setSkipCurrentImage(bool skip)

Instructs ImageManip to skip current image and wait for next in queue.

Parameters:

skip – True to skip current image, false otherwise

ImageManipConfig &setKeepAspectRatio(bool keep)

Specifies to whether to keep aspect ratio or not

ImageManipConfig &setInterpolation(dai::Interpolation interpolation)

Specify which interpolation method to use

Parameters:

interpolation – type of interpolation

float getCropXMin() const
Returns:

Top left X coordinate of crop region

float getCropYMin() const
Returns:

Top left Y coordinate of crop region

float getCropXMax() const
Returns:

Bottom right X coordinate of crop region

float getCropYMax() const
Returns:

Bottom right Y coordinate of crop region

int getResizeWidth() const
Returns:

Output image width

int getResizeHeight() const
Returns:

Output image height

CropConfig getCropConfig() const
Returns:

Crop configuration

ResizeConfig getResizeConfig() const
Returns:

Resize configuration

FormatConfig getFormatConfig() const
Returns:

Format configuration

bool isResizeThumbnail() const
Returns:

True if resize thumbnail mode is set, false otherwise

Colormap getColormap() const
Returns:

specified colormap

ImageManipConfig &set(dai::RawImageManipConfig config)

Set explicit configuration.

Parameters:

config – Explicit configuration

dai::RawImageManipConfig get() const

Retrieve configuration data for ImageManip.

Returns:

config for ImageManip

dai::Interpolation getInterpolation() const

Retrieve which interpolation method to use.