This function is not yet fully documented. This is a transcript of the text-formatted help.
bbkernel Create a kernel for convolution. K=bbkernel(dim,'name',par) creates a hypercube with a standard kernel. This is an auxilliary function, mainly intended to create kernels to use with bbconvn. All kernels are created from a continuous function on a hyper-cube ranging from -1 to 1 in all dimensions. By default, this is normalized to a unit volume. However, if you give the option 'aver', the average of each cell of the unnormalized function is used. The function is discretized on a regular grid, with cells covering equal volumes. Each element in K is the integral of the kernel over a cell. Many kernels of interest are separable, i.e. the underlying function satisfies f(x,y,z,...)=f(x)*f(y)*f(z)*... The list specifies the underlying unnormalized function in one dimension. 'gauss' - Gaussian kernel Parameter: sigma (default: 1) Function: f(x)=exp(-x^2/(2*sigma^2)) AKA: 'gaussian' 'linear' - Piecewise linear with with maximum at the origin Function: f(x)=abs(x) 'box' - A constant Function: f(x)=1 AKA: 'const', 'cube' 'cossqr' - Squared cosine Function: f(x)=cos(x*pi/2)^2 The following kernel is non-separable. The argument d is the euclidean distance from the origin. 'ball' - Solid line (1D), circle (2D), or sphere (3D and up) Parameter: ra (default: 1) Function: f(d)=1 for d<=ra, 0 otherwise. AKA: 'disk', 'circle', 'pillbox', 'sphere' 'ellip' - Same as 'ball', except each semi-axis is given. Parameter: len, vector with length of semi-axis Function: f(p)=1 for sum((p./len).^2)<=1 AKA: 'ellipse', 'ellipsoid' NOTE: 'ball' is only accurate for 1D and 2D. For 3D and higher, an approximation is used for cells partly containing the ball. See also bbconvn, (image processing toolbox)