---
name: "im_freqflt"
section: "3"
platform: "linux"
package: "libvips-dev"
version: "7.20.7-1+b3"
release: "Debian 6.0 (Squeeze)"
platforms: ["linux"]
url: "https://new.carta.tech/im_freqflt"
---

# im\_freqflt(3)

filters an image with a float filter mask in the frequency domain

## NAME

im\_freqflt - filters an image with a float filter mask in the frequency domain

## SYNOPSIS

**#include \<vips/vips.h\>**

**int im\_freqflt(in, filtermask, out)**\
 IMAGE \*in, \*filtermask, \*out;

## DESCRIPTION

im\_freqflt() performs filtering in the frequency domain of the input image held by the image descriptor in with a mask held by the descriptor filtermask and writes the result on the image descriptor out.

Image sizes should be power of two and less or equal to 512.  All images should be one channel square images.  Image filtermask is a non-complex one channel image created by im\_create\_fmask().  Input image can be any type.  If input is complex, in and filtermask are multiplied using the function im\_cmultim(3).

If input is not complex then it is transformed into the frequency domain and then it is multiplied with the filtermask.  In the latter case the result is inverse fourier transformed and clipped to the input image format using the function [im\_clip2fmt(3)](/im_clip2fmt/3.md).

## RETURN VALUE

The function returns 0 on success and -1 on error.

## BUGS

The function has not been fully tested.

## SEE ALSO

[im\_fwfft(3)](/im_fwfft/3.md), [im\_invfft(3)](/im_invfft/3.md), [im\_create\_fmask(3)](/im_create_fmask/3.md), im\_cmultim(3).

## COPYRIGHT

N. Dessipris

## AUTHOR

N. Dessipris - 10/05/1991
