Code covered by the BSD License  

Highlights from
B-spline tools

4.0

4.0 | 1 rating Rate this file 45 Downloads (last 30 days) File Size: 589 KB File ID: #27047

B-spline tools

by

 

22 Mar 2010 (Updated )

Basic toolbox for polynomial B-splines on a uniform grid. OO overloading of common operators.

| Watch this File

File Information
Description

B-splines is a natural signal representation for continous signals, where
many continous-domain operations can be carried out exactly once the
B-spline approximation has been done.

The B-spline estimation procedure in this toolbox using allpole filters
is based on the classic papers by M. Unser and others [1,2,3], it allows
very fast estimation of B-spline coefficients when the sampling grid is
uniform. Evaluation/interpolation is also a linear filter operation.

The toolbox has two layers; a set of functions for the fundamental
operations on polynomial B-splines, and an object-oriented wrapper which
keeps track of the properties of a spline signal and overload common
operators.

The representation is dimensionality-independent, and much of the code is
vectorized.

Units tests are included, these require the MATLAB xunit toolbox.

[1] M. Unser, A. Aldroubi, M. Eden, "B-Spline Signal Processing: Part
I-Theory", IEEE Transactions on Signal Processing, vol. 41, no. 2, pp.
821-833, February 1993

[2] M. Unser, A. Aldroubi, M. Eden, "B-Spline Signal Processing: Part
II-Efficient Design and Applications", IEEE Transactions on Signal
Processing, vol. 41, no. 2, pp. 834-848, February 1993

[3] M.Unser, "Splines: A Perfect Fit for Signal and Image Processing",
IEEE Signal Processing Magazine, vol. 16, no. 6, pp. 22-38, 1999

Required Products Signal Processing Toolbox
MATLAB release MATLAB 7.8 (R2009a)
Other requirements One provided example requires image processing toolbox. Requires a newer MATLAB version with object orientation support.
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (1)
19 Jan 2011 Srinivas Murthy

First of all, thanks a lot for the code..In bsplineNdtrans.m, roots of pole are being calculated and poles only between _1 to +1 are being considered. The roots of pole for any particular spline will be same and i feel this as a redundant calculation.
Also i am interested in calculating the partial derivatives(2-D data) i.e wrt x,y,xx,yy,xy,etc. It would be of great help if you can illustrate these calculations with the help of an example
Any help would be greatly appreciated..

Updates
13 May 2010

Support for LS-optimal upsampling and downsampling with a factor of 2 (reduce and expand methods on the Bspline class). This is the basis for making an LS image pyramid (rudimentary example included)

Improvements to documentation.

08 May 2011

New filter functions with higher precision and more flexible boundary conditions.

Contact us