GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
vpBoxFilter(3) FreeBSD Library Functions Manual vpBoxFilter(3)

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

#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;

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.

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.

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.

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

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.