im_similarity_area(3)
NAME
- im_similarity_area, im_similarity - apply a similarity
- transform to an
image
SYNOPSIS
#include <vips/vips.h> int im_similarity_area(in, out, s, a, dx, dy, x, y, w, h) IMAGE *in, *out; double s, a, dx, dy; int x, y; int w, h; int im_similarity(in, out, s, a, dx, dy) IMAGE *in, *out; double s, a, dx, dy;
DESCRIPTION
- im_similarity_area() applies a similarity transformation
- on the image
held by the IMAGE descriptor in and puts the result at - the location
pointed by the IMAGE descriptor out. in many have any num - ber of bands,
be any size, and have any non-complex type. - The transformation is described by s, a, dx, dy. The
- point (x,y) in
the input is mapped onto point (X,Y) in the output by
X = s * x - a * y + dx Y = a * x + s * y + dy- s and a do not correspond to scale and angle of the trans
- formation; the
actual scale and angle are given by the equations:
scale = sqrt(s*s + a*a) angle = arctan(s/a).- The area of the output image given by x, y, w, h is gener
- ated. (0,0) is
the position of the transformed top-left-hand corner - of the input
image. Function im_similarity_area resamples the - transformed image
using bilinear interpolation. - im_similarity works exactly as im_similarity_area, but
- calculates x, y,
w, h for you such that the rectangle described just en - closes all of the
transformed input pixels.
RETURN VALUE
The functions return 0 on success and -1 on error.
BUGS
- As with most resamplers, im_similarity performs poorly at
- the edges of
images.
SEE ALSO
similarity(1), similarity_area(1)
AUTHORS
- N. Dessipris - 13/01/1992
J.Ph. Laurent - 12/12/92
J. Cupitt - 22/02/93 - 13 January 1992 IM_SIMI