oracular (3) FilterTab.3.gz

Provided by: libvolpack1-dev_1.0b3-10_amd64 bug

NAME

       vpBoxFilter, vpLinearFilter, vpBicubicFilter, vpGaussianFilter - initialize a filter weight table

SYNOPSIS

       #include <volpack.h>

       vpResult
       vpBoxFilter(num_taps, num_phases, weights, weights_bytes)
           int num_taps, num_phases;
           float *weights;
           int weights_bytes;

       vpResult
       vpLinearFilter(num_taps, num_phases, weights, weights_bytes)
           int num_taps, num_phases;
           float *weights;
           int weights_bytes;

       vpResult
       vpBicubicFilter(b_value, c_value, num_taps, num_phases, weights, weights_bytes)
           double b_value, c_value;
           int num_taps, num_phases;
           float *weights;
           int weights_bytes;

       vpResult
       vpGaussianFilter(sigma, num_taps, num_phases, weights, weights_bytes)
           double sigma;
           int num_taps, num_phases;
           float *weights;
           int weights_bytes;

ARGUMENTS

       num_taps
              Number of filter taps.

       num_phases
              Number of filter phases.

       weights
              Array containing filter weights.

       weights_bytes
              Size (in bytes) of array containing filter weights.

       b_value
              "B" parameter in the formula for a Mitchell bicubic.

       c_value
              "C" parameter in the formula for a Mitchell bicubic.

       sigma  Standard deviation for a Gaussian.

DESCRIPTION

       These  routines  can  be used to initialize filter weight tables for use with vpSetFilter and vpResample.
       See the vpSetFilter man page for information on the num_taps and num_phases arguments.

       vpBoxFilter creates a filter table for a box filter (a zero-order filter).  With num_taps equal to 1  the
       filter  is a nearest-neighbor filter, suitable for low-quality upsampling.  To create a decimation filter
       that averages down, the number of taps should equal the decimation factor (as nearly as possible).

       vpLinearFilter creates a filter table for a linear filter (a first-order or tent filter).  With  num_taps
       equal to 2 the filter performs linear interpolation.

       vpBicubicFilter  creates  a  filter  table for a Mitchell bicubic filter.  The first two arguments can be
       used to modify the shape of the filter kernel.  Some standard parameter values are:

       b_value = 1, c_value = 0
              Cubic B-spline.

       b_value = 0, c_value = 0.5
              Catmull-Rom spline.

       With four filter taps the cubic B-spline filter is suitable for upsampling.  For more  details,  see  the
       following paper: Mitchell, D.P. and Netravali, A.N., "Reconstruction filters in computer graphics," Proc.
       SIGGRAPH '88 (Computer Graphics V22 N4), p. 221-8.

       vpGaussianFilter creates a filter table for a gaussian  filter.   The  first  argument  is  the  standard
       deviation of the gaussian.

ERRORS

       The normal return value is VP_OK.  The following error return values are possible:

       VPERROR_BAD_SIZE
              The filter weight table size is invalid.

       VPERROR_BAD_VALUE
              The number of phases is not a positive power of two.

SEE ALSO

       VolPack(3), vpResample(3), vpSetFilter(3)