| .TH CONVERSIONS 3 "15 April 1991" |
| .SH NAME |
| im_c2amph, im_c2imag, im_c2ps, im_c2real, im_clip2fmt, |
| im_ri2c \- conversion between image types |
| .SH SYNOPSIS |
| #include <vips/vips.h> |
| |
| int im_c2amph(in, out) |
| .br |
| IMAGE *in, *out; |
| |
| int im_c2rect(in, out) |
| .br |
| IMAGE *in, *out; |
| |
| int im_c2imag(in, out) |
| .br |
| IMAGE *in, *out; |
| |
| int im_c2ps(in, out) |
| .br |
| IMAGE *in, *out; |
| |
| int im_c2real(in, out) |
| .br |
| IMAGE *in, *out; |
| |
| int im_clip2fmt(in, out, ofmt) |
| .br |
| IMAGE *in, *out; |
| .br |
| int ofmt; |
| |
| int im_ri2c(in1, in2, out) |
| .br |
| IMAGE *in1, *in2, *out; |
| .SH DESCRIPTION |
| Each of the above functions converts the image held by the image descriptor in |
| to another type image and writes the result on the image descriptor out. |
| Sizes and the number of channels are identical to those of input. Whenever |
| required by the conversion, the element values are rounded by calling floor(). |
| |
| .B im_c2amph() |
| converts a complex (float or double) input to (amplitude, phase), with phase |
| in degrees. Output has the same format as input. |
| |
| .B im_c2rect() |
| converts a complex (float or double) input in (amplitude, phase) form back to |
| rectangular coordinates. Again, phase should be expressed in degrees. |
| |
| .B im_c2ps() |
| convert a (float or double) complex image to amplitude (float or |
| double) image. Complex input (a,b) is mapped to sqrt( a*a+b*b ). |
| |
| .B im_clip2fmt() |
| converts the input image to 'ofmt', where ofmt is the new value for |
| BandFmt. For example, im_clip2fmt(in, out, FMTUSHORT) converts any image to |
| unsigned short. |
| |
| The number of |
| clipped values (if any), are printed in the standard error output. Before |
| clipping rounding is carried out if necessary. When converting between real |
| and complex types with these functions, the imaginary part of the output is |
| set to zero. When converting from complex to real types, the imaginary part is |
| ignored. Use im_c2ps(), im_c2real() etc. to get other behaviour. |
| |
| Legacy functions are available, called im_clip(), im_clip2c(), im_clip2d(), |
| im_clip2f(), im_clip2i(), im_clip2s(), im_clip2ui(), im_clip2us(), |
| im_clip2cm() and im_clip2dcm() which convert the input image to unsigned char, |
| signed char, double, float, int, short, unsigned int, unsigned short, |
| complex and double complex respectively. |
| |
| .B im_ri2c() |
| takes as inputs two non-complex images of equal sizes and number of |
| channels. The output is a complex image with the real part coming from in1 |
| and the imaginary part coming from in2. Output is float complex (FMTCOMPLEX) |
| only if none of the inputs is double. If one or both inputs are double the |
| result is double complex (FMTDPCOMPLEX). |
| |
| .B im_c2real() |
| and |
| .B im_c2imag() |
| extract the real or the imaginary part of a |
| complex image respectively. If input is be float complex or double complex, |
| then output is float or double respectively. |
| |
| .SH RETURN VALUE |
| The functions returns 0 on success and -1 on error. |
| .SH SEE ALSO |
| im_scale(3). |