Vips.Image.mask_butterworth
Description: Reference for Vips.Image.mask_butterworth

### Constructor

# Vips Imagemask_butterworth

#### Declaration [src]

    int
    vips_mask_butterworth (
      VipsImage** out,
      int width,
      int height,
      double order,
      double frequency_cutoff,
      double amplitude_cutoff,
      ...
    )

#### Description [src]

Make an butterworth high- or low-pass filter, that is, one with a variable, smooth transition positioned at `frequency_cutoff`, where `frequency_cutoff` is in range 0 - 1.

The shape of the curve is controlled by `order` — higher values give a sharper transition. See Gonzalez and Wintz, Digital Image Processing, 1987.

Optional arguments

- `nodc`: `gboolean`, don’t set the DC pixel
- `reject`: `gboolean`, invert the filter sense
- `optical`: `gboolean`, coordinates in optical space
- `uchar`: `gboolean`, output a uchar image

See also

`vips_mask_ideal()`.

This constructor is not directly available to language bindings.

#### Parameters

`out`

  Type: `VipsImage`

  Output image.

  The argument will be set by the function.
  The caller of the function takes ownership of the returned data, and is responsible for freeing it.

`width`

  Type: `int`

  Image size.

`height`

  Type: `int`

  Image size.

`order`

  Type: `double`

  Filter order.

`frequency_cutoff`

  Type: `double`

  Frequency threshold.

`amplitude_cutoff`

  Type: `double`

  Amplitude threshold.

`...`

  Type: ``

  `NULL`-terminated list of optional named arguments.

#### Return value

Type: `int`

0 on success, -1 on error.