libvips/man/im_rank.3

46 lines
1.1 KiB
Groff

.TH IM_RANK 3 "19 Aug 1996"
.SH NAME
im_rank, im_rank_raw \- rank filter
.SH SYNOPSIS
#include <vips/vips.h>
int im_rank(in, out, xsize, ysize, n)
.br
IMAGE *in, *out;
.br
int xsize, ysize, n;
int im_rank_raw(in, out, xsize, ysize, n)
.br
IMAGE *in, *out;
.br
int xsize, ysize, n;
.SH DESCRIPTION
.B im_rank()
does rank filtering on an image. A window of size xsize by ysize
is passed over the image. At each position, the pixels inside the window are
sorted into ascending order and the pixel at the nth position is output. n
numbers from 0.
It works for any non-complex image type, with any number of bands. A black
border is added to the output image to make it the same size as the
input.
.B im_rank_raw()
works just as im_rank(), but does not add the border.
.SH EXAMPLES
For a median filter with mask size m (3 for 3x3, 5 for 5x5, etc.) use
im_rank( in, out, m, m, m * m / 2 );
The special cases n == 0 and n == m * m - 1 are useful dilate and expand
operators.
.SH RETURN VALUE
The function returns 0 on success and -1 on error.
.SH SEE ALSO
im_conv(3), im_fastcor(3).
.SH COPYRIGHT
1989-1996 The National Gallery and Birkbeck College