.TH LOG_MASKS 3 "6 December 1991"
.SH NAME
im_log_dmask, im_log_imask \- create a laplacian of gaussian (log) 
DOUBLEMASK or INTMASK
.SH SYNOPSIS
.B
#include <vips/vips.h>


.B DOUBLEMASK *im_log_dmask( name, sigma, min_amplitude )
.br
char *name;
.br
double sigma, min_amplitude;

.B INTMASK *im_log_imask( name, sigma, min_amplitude )
.br
char *name;
.br
double sigma, min_amplitude;
.SH DESCRIPTION
Both functions create a circularly symmetric laplacian of Gaussian mask.  The
size of the mask is determined by the variable min_amplitude; if for instance
the value .1 is entered this means that the produced mask is clipped at values
within 10 persent of zero, and where the change between mask elements is less
than 10%.
The mask can be directly used with the vasari convolution
programs, the default offset set is 0.

The program uses the following equation: (from Handbook of Pattern Recognition
and image processing by Young and Fu, AP 1986 pages 220-221):

  H(r) = (1 / (2 * M_PI * s4)) *
         (2 - (r2 / s2)) * 
	 exp(-r2 / (2 * s2))

where s2 = sigma * sigma, s4=s2 * s2, r2 = r * r.  The generated mask has odd 
size and its
maximum value is normalised to either 100 (log_imask) or to 1.0 (log_dmask)

.B im_log_dmask()
creates a DOUBLEMASK laplacian of Gaussian mask with maximum value normalised 
to 1.0.

.B im_log_imask()
creates a INTMASK laplacian of Gaussian mask with maximum value normalised
to 100.
.SH RETURNED VALUE:
The functions return NULL on erorr.
.SH SEE ALSO
im_gauss_dmask(3), im_conv(3)
.SH COPYRIGHT
.br
N. Dessipris
.SH AUTHOR
N. Dessipris \- 06/12/1991
