The OpenVX Specification  r28647
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
Warp Perspective

Detailed Description

Performs a perspective transform on an image.

This kernel performs an perspective transform with a 3x3 Matrix \( M \) with this method of pixel coordinate translation:

\begin{eqnarray} x0 &=& M_{1,1}*x + M_{1,2}*y + M_{1,3} \\ y0 &=& M_{2,1}*x + M_{2,2}*y + M_{2,3} \\ z0 &=& M_{3,1}*x + M_{3,2}*y + M_{3,3} \\ output(x,y) &=& input(\frac{x0}{z0},\frac{y0}{z0}) \end{eqnarray}

This translates into the C declaration:

// x0 = a x + b y + c;
// y0 = d x + e y + f;
// z0 = g x + h y + i;
vx_float32 mat[3][3] = {
{a, d, g}, // 'x' coefficients
{b, e, h}, // 'y' coefficients
{c, f, i}, // 'offsets'
};
vx_matrix matrix = vxCreateMatrix(context, VX_TYPE_FLOAT32, 3, 3);
vxAccessMatrix(matrix, NULL);
vxCommitMatrix(matrix, mat);

Functions

vx_status vxuWarpPerspective (vx_context context, vx_image input, vx_matrix matrix, vx_enum type, vx_image output)
 [Immediate] Performs an Perspective warp on an image. More...
 
vx_node vxWarpPerspectiveNode (vx_graph graph, vx_image input, vx_matrix matrix, vx_enum type, vx_image output)
 [Graph] Creates a Perspective Warp Node. More...
 

Function Documentation

vx_node vxWarpPerspectiveNode ( vx_graph  graph,
vx_image  input,
vx_matrix  matrix,
vx_enum  type,
vx_image  output 
)

[Graph] Creates a Perspective Warp Node.

Parameters
[in]graphThe reference to the graph.
[in]inputThe input VX_DF_IMAGE_U8 image.
[in]matrixThe perspective matrix. Must be 3x3 of type VX_TYPE_FLOAT32.
[in]typeThe interpolation type from vx_interpolation_type_e. VX_INTERPOLATION_TYPE_AREA is not supported.
[out]outputThe output VX_DF_IMAGE_U8 image.
Note
Only VX_NODE_ATTRIBUTE_BORDER_MODE value VX_BORDER_MODE_UNDEFINED or VX_BORDER_MODE_CONSTANT is supported.
Returns
vx_node.
Return values
0Node could not be created.
*Node handle.
vx_status vxuWarpPerspective ( vx_context  context,
vx_image  input,
vx_matrix  matrix,
vx_enum  type,
vx_image  output 
)

[Immediate] Performs an Perspective warp on an image.

Parameters
[in]contextThe reference to the overall context.
[in]inputThe input VX_DF_IMAGE_U8 image.
[in]matrixThe perspective matrix. Must be 3x3 of type VX_TYPE_FLOAT32.
[in]typeThe interpolation type from vx_interpolation_type_e. VX_INTERPOLATION_TYPE_AREA is not supported.
[out]outputThe output VX_DF_IMAGE_U8 image.
Returns
A vx_status_e enumeration.
Return values
VX_SUCCESSSuccess
*An error occurred. See vx_status_e.