manpage oopses
This commit is contained in:
parent
1160f6a4b7
commit
41ed8375e7
@ -1,6 +1,7 @@
|
|||||||
25/3/09 started 7.18.0
|
25/3/09 started 7.18.0
|
||||||
- revised version numbers
|
- revised version numbers
|
||||||
- updated vipsmanual
|
- updated vipsmanual
|
||||||
|
- revised manpages
|
||||||
|
|
||||||
6/3/09 started 7.17.3
|
6/3/09 started 7.17.3
|
||||||
- revised nohalo
|
- revised nohalo
|
||||||
|
4
TODO
4
TODO
@ -1,7 +1,3 @@
|
|||||||
- im_rank.3 has a note about a black border, argh
|
|
||||||
|
|
||||||
any other references to this?
|
|
||||||
|
|
||||||
- VipsFormat.3 man page should list all formats, since eg. radiance does not
|
- VipsFormat.3 man page should list all formats, since eg. radiance does not
|
||||||
have a separate im_rad2vips page
|
have a separate im_rad2vips page
|
||||||
|
|
||||||
|
@ -61,12 +61,12 @@ using look-up tables. The output is integer. coefficients. The size of the
|
|||||||
output image and the number of channels are the same as the corresponding of
|
output image and the number of channels are the same as the corresponding of
|
||||||
the input.
|
the input.
|
||||||
|
|
||||||
If the sizes of the mask are xm and ym and the sizes of the image are xs and ys,
|
The output image is the same size as the input. The edge pixels are calculated
|
||||||
then there is a black border at the output image as follows:
|
by expanding the input image using
|
||||||
|
.B im_embed(3)
|
||||||
|
in mode 1 (replicating edge pixels) just enough so that the output can match
|
||||||
|
the input.
|
||||||
|
|
||||||
The top ym/2 lines black, bottom ys-ym/2-ym lines black; each of the remaining
|
|
||||||
lines has the initial xm/2 pels blank, and the final
|
|
||||||
xs-xm/2-xm pels black (division over 2 is integer division).
|
|
||||||
The output at each point is divided by scale and then the offset is added.
|
The output at each point is divided by scale and then the offset is added.
|
||||||
Both offset and scale are held in mask.
|
Both offset and scale are held in mask.
|
||||||
|
|
||||||
|
@ -1,123 +1 @@
|
|||||||
.TH CONVOLUTION 3 "2 May 1991"
|
.so man3/im_conv.3
|
||||||
.SH NAME
|
|
||||||
im_conv, im_convf, im_convsep, im_convsepf,
|
|
||||||
im_convsub, im_shrink \- convolves an image with a generalised
|
|
||||||
mask
|
|
||||||
.SH SYNOPSIS
|
|
||||||
#include <vips/vips.h>
|
|
||||||
|
|
||||||
int im_conv(in, out, mask)
|
|
||||||
.br
|
|
||||||
IMAGE *in, *out;
|
|
||||||
.br
|
|
||||||
INTMASK *mask;
|
|
||||||
|
|
||||||
int im_convf(in, out, mask)
|
|
||||||
.br
|
|
||||||
IMAGE *in, *out;
|
|
||||||
.br
|
|
||||||
DOUBLEMASK *mask;
|
|
||||||
|
|
||||||
int im_convsep(in, out, mask)
|
|
||||||
.br
|
|
||||||
IMAGE *in, *out;
|
|
||||||
.br
|
|
||||||
INTMASK *mask;
|
|
||||||
|
|
||||||
int im_convsepf(in, out, mask)
|
|
||||||
.br
|
|
||||||
IMAGE *in, *out;
|
|
||||||
.br
|
|
||||||
DOUBLEMASK *mask;
|
|
||||||
|
|
||||||
int im_convsub(in, out, mask, xskip, yskip)
|
|
||||||
.br
|
|
||||||
IMAGE *in, *out;
|
|
||||||
.br
|
|
||||||
INTMASK *mask;
|
|
||||||
.br
|
|
||||||
int xskip, yskip;
|
|
||||||
|
|
||||||
int im_shrink(in, out, xfactor, yfactor)
|
|
||||||
.br
|
|
||||||
IMAGE *in, *out;
|
|
||||||
.br
|
|
||||||
double xfactor, yfactor;
|
|
||||||
|
|
||||||
.SH DESCRIPTION
|
|
||||||
These functions
|
|
||||||
convolve the image pointed by the image descriptor in with the file
|
|
||||||
pointed by mask and puts the result in the image pointed by out.
|
|
||||||
The mask structures INTMASK and DOUBLEMASK are
|
|
||||||
returned by the function im_read_imask(3) or im_read_dmask(3),
|
|
||||||
for integer and double masks respectively.
|
|
||||||
|
|
||||||
Input should be non-complex.
|
|
||||||
The size and type of the output image are the same as the size of the input.
|
|
||||||
To
|
|
||||||
output a larger type (for example, to output an int image from convolution
|
|
||||||
of a byte image, avoiding clipping), cast the input image up with one of
|
|
||||||
the im_clip2*() functions.
|
|
||||||
|
|
||||||
If the sizes of the mask are xm and ym and the sizes of the image are xs and ys,
|
|
||||||
then there is a black border at the output image as follows:
|
|
||||||
|
|
||||||
The top ym/2 lines black, bottom ys-ym/2-ym lines black; each of the remaining
|
|
||||||
lines has the initial xm/2 pels blank, and the final
|
|
||||||
xs-xm/2-xm pels (division over 2 is integer division).
|
|
||||||
|
|
||||||
The output at each point is divided by scale and then the offset is added.
|
|
||||||
Both offset and scale are held in mask.
|
|
||||||
|
|
||||||
.B im_conv()
|
|
||||||
and
|
|
||||||
.B im_convsep()
|
|
||||||
have 'raw' versions which do not add the black border: instead the output
|
|
||||||
image is smaller than the input.
|
|
||||||
|
|
||||||
.B im_conv()
|
|
||||||
and
|
|
||||||
.B im_conv_raw()
|
|
||||||
convolve any non-complex input image to make an output image of the same
|
|
||||||
type. Rounding is appropriate to the image type.
|
|
||||||
|
|
||||||
.B im_convf()
|
|
||||||
convolves to float (double if the input is double).
|
|
||||||
The function expects a double mask.
|
|
||||||
|
|
||||||
.B im_convsep()
|
|
||||||
and
|
|
||||||
.B im_convsep_raw()
|
|
||||||
carry out convolution using an 1xN or Nx1 separable mask.
|
|
||||||
|
|
||||||
The function
|
|
||||||
scales the output result by dividing it with scale*scale. The scale
|
|
||||||
factor should therefore be the sqrt of the scale of the square NxN mask.
|
|
||||||
|
|
||||||
Rounding is appropriate to the image type. It works on any non-complex image,
|
|
||||||
and writes the output in the same format as the input.
|
|
||||||
The function expects integer mask.
|
|
||||||
|
|
||||||
.B im_convsepf()
|
|
||||||
convolves to float (double if the input is double).
|
|
||||||
The function expects a double mask.
|
|
||||||
|
|
||||||
.B im_convsub()
|
|
||||||
convolves the byte image pointed by in and writes the result as a byte output.
|
|
||||||
Using this function the input image is subsampled on
|
|
||||||
both directions by an integer factor of xskip horizontally and
|
|
||||||
an integer factor of yskip vertically.
|
|
||||||
During the covolution, values are rounded before division.
|
|
||||||
Both input and output are bytes. Output is clipped between 0 and 255.
|
|
||||||
The function expects an integer mask.
|
|
||||||
|
|
||||||
.B im_shrink()
|
|
||||||
shrink the input image file by xfactor along the horizontal and
|
|
||||||
yfactor along the vertical direction. The function doesnot perform subpixel
|
|
||||||
interpolation and therefore the resultant image can present aliasing especially
|
|
||||||
for small x and y factors. Any size image, any non-complex type, any number of
|
|
||||||
bands.
|
|
||||||
.SH RETURN VALUE
|
|
||||||
The function returns 0 on success and -1 on error.
|
|
||||||
.SH SEE ALSO
|
|
||||||
im_read_imask(3), im_compass(3), im_fastcor(3).
|
|
||||||
|
@ -40,33 +40,42 @@ Mask coefficients can be either 0 (for object) or 255 (for background) or 128
|
|||||||
The mask should have odd length sides and the origin of the mask is at location
|
The mask should have odd length sides and the origin of the mask is at location
|
||||||
(m-\>xsize/2,m-\>ysize/2) integer division. All algorithms have been based on
|
(m-\>xsize/2,m-\>ysize/2) integer division. All algorithms have been based on
|
||||||
the book "Fundamentals of Digital Image Processing" by A. Jain, pp 384-388,
|
the book "Fundamentals of Digital Image Processing" by A. Jain, pp 384-388,
|
||||||
Prentice-Hall, 1989. Essentially, im_dilate(3) sets pixels in the output if
|
Prentice-Hall, 1989. Essentially,
|
||||||
*any* part of the mask matches, whereas im_erode(3) sets pixels only if *all*
|
.B im_dilate(3)
|
||||||
|
sets pixels in the output if
|
||||||
|
*any* part of the mask matches, whereas
|
||||||
|
.B im_erode(3)
|
||||||
|
sets pixels only if *all*
|
||||||
of the mask matches.
|
of the mask matches.
|
||||||
|
|
||||||
im_dilate(3)
|
.B im_dilate(3)
|
||||||
dilates the image pointed by in, according to the mask pointed by m and writes
|
dilates the image pointed by in, according to the mask pointed by m and writes
|
||||||
the result in the location pointed by the IMAGE descriptor out. The output
|
the result in the location pointed by the IMAGE descriptor out. The output
|
||||||
image is the same size as the input, with a black border in the manner of
|
image is the same size as the input, in the manner of
|
||||||
im_conv(3).
|
.B im_conv(3).
|
||||||
|
|
||||||
im_dilate_raw(3)
|
.B im_dilate_raw(3)
|
||||||
works as im_dilate(3), but does not add a black border.
|
works as im_dilate(3), but does not expand the input.
|
||||||
|
|
||||||
im_erode(3)
|
.B im_erode(3)
|
||||||
erodes the image pointed by in, according to the mask pointed by m and writes
|
erodes the image pointed by in, according to the mask pointed by m and writes
|
||||||
the result in the location pointed by the IMAGE descriptor out. Again, the
|
the result in the location pointed by the IMAGE descriptor out. Again, the
|
||||||
output image is forced to have the same size as the input.
|
output image is forced to have the same size as the input.
|
||||||
|
|
||||||
im_erode_raw(3)
|
.B im_erode_raw(3)
|
||||||
works as im_erode(3), but does not add a black border.
|
works as im_erode(3), but does not expand the input.
|
||||||
|
|
||||||
See the boolean operations im_and(3), im_or(3) and im_eor(3) for analogues
|
See the boolean operations
|
||||||
|
.B im_andimage(3),
|
||||||
|
.B im_orimage(3)
|
||||||
|
and
|
||||||
|
.B im_eorimage(3)
|
||||||
|
for analogues
|
||||||
of the usual set difference and set union operations.
|
of the usual set difference and set union operations.
|
||||||
|
|
||||||
.SH RETURN VALUE
|
.SH RETURN VALUE
|
||||||
All functions returns 0 on success and -1 on error.
|
All functions returns 0 on success and -1 on error.
|
||||||
.SH SEE ALSO
|
.SH SEE ALSO
|
||||||
im_read_imask(3), im_conv(3), im_and(3), im_rotate_imask(3).
|
im_read_imask(3), im_conv(3), im_andimage(3), im_rotate_imask(3).
|
||||||
.SH COPYRIGHT
|
.SH COPYRIGHT
|
||||||
1991-1995, Birkbeck College and the National Gallery
|
1991-1995, Birkbeck College and the National Gallery
|
||||||
|
18
man/im_heq.3
18
man/im_heq.3
@ -21,28 +21,32 @@ int im_hsp( in, ref, out )
|
|||||||
IMAGE *in, *ref, *out;
|
IMAGE *in, *ref, *out;
|
||||||
|
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
im_heq()
|
.B im_heq(3)
|
||||||
histogram equalises the unsigned char image held by the IMAGE descriptor
|
histogram equalises the unsigned char image held by the IMAGE descriptor
|
||||||
in. The result is written to the IMAGE descriptor out.
|
in. The result is written to the IMAGE descriptor out.
|
||||||
If bandno is -1 then all input bands are equalised independently. In all
|
If bandno is -1 then all input bands are equalised independently. In all
|
||||||
other cases the input image is equalised using the histogram of bandno only.
|
other cases the input image is equalised using the histogram of bandno only.
|
||||||
The latter processing produces better results.
|
The latter processing produces better results.
|
||||||
|
|
||||||
im_hsp()
|
.B im_hsp(3)
|
||||||
maps in to out with histogram specified by the ref. All images should be
|
maps in to out with histogram specified by the ref. All images should be
|
||||||
unsigned char. Each band of the output image is specified according to the
|
unsigned char. Each band of the output image is specified according to the
|
||||||
distribution of grey levels of the reference image according to
|
distribution of grey levels of the reference image according to
|
||||||
im_histspec(3).
|
im_histspec(3).
|
||||||
|
|
||||||
im_lhisteq()
|
.B im_lhisteq(3)
|
||||||
histogram equalises the one channel unsigned char image pointed to by the
|
histogram equalises the one channel unsigned char image pointed to by the
|
||||||
Image descriptor in. The result is written to the IMAGE descriptor out.
|
Image descriptor in. The result is written to the IMAGE descriptor out.
|
||||||
The histogram equalisation is based on a window of size xw by yw centered at
|
The histogram equalisation is based on a window of size xw by yw centered at
|
||||||
the current location of each input pixel. The produced image has a black
|
the current location of each input pixel.
|
||||||
border of sizes xw/2 (left), xw-xw/2 (right), yw/2 (top) and yw-yw/2 (bottom).
|
|
||||||
|
|
||||||
im_lhisteq_raw()
|
In the manner of
|
||||||
is as above, but does not add the black border to the output image.
|
.B im_conv(3)
|
||||||
|
the input image is expanded so that the output image is the same size as the
|
||||||
|
input.
|
||||||
|
|
||||||
|
.B im_lhisteq_raw(3)
|
||||||
|
is as above, but does not expand the input.
|
||||||
|
|
||||||
.SH RETURN VALUE
|
.SH RETURN VALUE
|
||||||
All functions returns 0 on success and -1 on error.
|
All functions returns 0 on success and -1 on error.
|
||||||
|
@ -23,12 +23,14 @@ 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
|
sorted into ascending order and the pixel at the nth position is output. n
|
||||||
numbers from 0.
|
numbers from 0.
|
||||||
|
|
||||||
It works for any non-complex image type, with any number of bands. A black
|
It works for any non-complex image type, with any number of bands.
|
||||||
border is added to the output image to make it the same size as the
|
The input
|
||||||
input.
|
is expanded by copying edge pixels before performing the operation so that the
|
||||||
|
output image has the same size as the input. Edge pixels in the output image
|
||||||
|
are therefore only approximate.
|
||||||
|
|
||||||
.B im_rank_raw()
|
.B im_rank_raw()
|
||||||
works just as im_rank(), but does not add the border.
|
works just as im_rank(), but does not expand the input.
|
||||||
.SH EXAMPLES
|
.SH EXAMPLES
|
||||||
For a median filter with mask size m (3 for 3x3, 5 for 5x5, etc.) use
|
For a median filter with mask size m (3 for 3x3, 5 for 5x5, etc.) use
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user