| Top |  |  |  |  | 
| int | vips_fwfft () | 
| int | vips_invfft () | 
| int | vips_freqmult () | 
| int | vips_spectrum () | 
| int | vips_phasecor () | 
To and from Fourier space, filter in Fourier space, convert Fourier-space images to a displayable form.
int vips_fwfft (VipsImage *in,VipsImage **out,...);
Transform an image to Fourier space.
VIPS uses the fftw Fourier Transform library. If this library was not available when VIPS was configured, these functions will fail.
See also: vips_invfft().
[method]
| in | input image | |
| out | output image. | [out] | 
| ... | 
 | 
int vips_invfft (VipsImage *in,VipsImage **out,...);
Optional arguments:
real
: only output the real part
Transform an image from Fourier space to real space. The result is complex.
If you are OK with a real result, set real
, it's quicker.
VIPS uses the fftw Fourier Transform library. If this library was not available when VIPS was configured, these functions will fail.
See also: vips_fwfft().
[method]
| in | input image | |
| out | output image. | [out] | 
| ... | 
 | 
int vips_freqmult (VipsImage *in,VipsImage *mask,VipsImage **out,...);
Multiply in
 by mask
 in Fourier space.
in
 is transformed to Fourier space, multipled with mask
, then
transformed back to real space. If in
 is already a complex image, just
multiply then inverse transform.
See also: vips_invfft(), vips_mask_ideal().
[method]
| in | input image | |
| mask | mask image | |
| out | output image. | [out] | 
| ... | 
 | 
int vips_spectrum (VipsImage *in,VipsImage **out,...);
Make a displayable (ie. 8-bit unsigned int) power spectrum.
If in
 is non-complex, it is transformed to Fourier space. Then the
absolute value is passed through vips_scale() in log mode, and vips_wrap().
See also: vips_fwfft(), vips_scale(), vips_wrap().
[method]
| in | input image | |
| out | output image. | [out] | 
| ... | 
 | 
int vips_phasecor (VipsImage *in1,VipsImage *in2,VipsImage **out,...);
Convert the two input images to Fourier space, calculate phase-correlation, back to real space.
See also: vips_fwfft(), vips_cross_phase(),
| in1 | first input image | |
| in2 | second input image | |
| out | output image. | [out] | 
| ... | 
 |