Back to FabImage Library website
You are here: Start » Function Reference » Image » Image Spatial Transforms » ShearImage
Header: | FIL.h |
---|---|
Namespace: | fil |
Module: | FoundationLite |
Computes a leant image (shifts the rows).
Applications: Image preprocessing when there are slanted objects.
Syntax
C++
C#
void fil::ShearImage ( const fil::Image& inImage, float inShear, fil::Axis::Type inAxis, fil::InterpolationMethod::Type inInterpolationMethod, fil::Image& outImage )
Parameters
Name | Type | Range | Default | Description | |
---|---|---|---|---|---|
inImage | const Image& | Input image | |||
inShear | float | - - | 0.0f | Relative shift between consecutive rows or columns of the image | |
inAxis | Axis::Type | Switches between horizontal or vertical shearing | |||
inInterpolationMethod | InterpolationMethod::Type | Bilinear | |||
outImage | Image& | Output image |
Description
The filter ShearImage applies basic affine transform to each image's pixel.
Shear affine transform is defined as:
When X axis is selected
\[ \left[\begin{array}{ccc} x' \\ y' \end{array} \right] = \left[\begin{array}{ccc} 1 & inShear \\ 0 & 1 \end{array} \right] \left[\begin{array}{ccc} x \\ y \end{array} \right] \]When Y axis is selected
\[ \left[\begin{array}{ccc} x' \\ y' \end{array} \right] = \left[\begin{array}{ccc} 1 & 0\\ inShear & 1 \end{array} \right] \left[\begin{array}{ccc} x \\ y \end{array} \right] \]Examples
Errors
List of possible exceptions:
Error type | Description |
---|---|
DomainError | inImage and outImage are not distinct in ShearImage. |
See Also
- ShearRegion – Computes a leant region.