46 lines
1.1 KiB
Groff
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
|