Bicubic interpolation functions for 2D images. More...
Go to the source code of this file.
Defines | |
#define | vil_bicub_interp_txx_ |
#define | vil_I(dx, dy) (pix1[(dx)*xstep+(dy)*ystep]) |
#define | vil_I(dx, dy) (pix1[(dx)*xstep+(dy)*ystep]) |
#define | VIL_BICUB_INTERP_INSTANTIATE(T) |
Functions | |
template<class T > | |
double | vil_bicub_interp_unsafe (double x, double y, const T *data, vcl_ptrdiff_t xstep, vcl_ptrdiff_t ystep) |
Compute bicubic interpolation at (x,y), no bound checks. Requires 1<x<ni-3, 1<y<nj-3. | |
template<class T > | |
double | vil_bicub_interp_raw (double x, double y, const T *data, vcl_ptrdiff_t xstep, vcl_ptrdiff_t ystep) |
Compute bicubic interpolation at (x,y), no bound checks. |
Bicubic interpolation functions for 2D images.
The vil bicub source files were derived from the corresponding vil bilin files, thus the vil bilin/bicub source files are very similar. If you modify something in this file, there is a corresponding bilin file that would likely also benefit from the same change.
In this particular case, there is no corresponding vil_bilin_interp.txx file, see vil_bilin_interp.h instead.
Definition in file vil_bicub_interp.txx.
#define VIL_BICUB_INTERP_INSTANTIATE | ( | T | ) |
template double \ vil_bicub_interp_unsafe (double x, double y, const T* data, \ vcl_ptrdiff_t xstep, vcl_ptrdiff_t ystep); \ template double \ vil_bicub_interp_raw (double x, double y, const T* data, \ vcl_ptrdiff_t xstep, vcl_ptrdiff_t ystep)
Definition at line 158 of file vil_bicub_interp.txx.
#define vil_bicub_interp_txx_ |
Definition at line 3 of file vil_bicub_interp.txx.
#define vil_I | ( | dx, | |
dy | |||
) | (pix1[(dx)*xstep+(dy)*ystep]) |
#define vil_I | ( | dx, | |
dy | |||
) | (pix1[(dx)*xstep+(dy)*ystep]) |
double vil_bicub_interp_raw | ( | double | x, |
double | y, | ||
const T * | data, | ||
vcl_ptrdiff_t | xstep, | ||
vcl_ptrdiff_t | ystep | ||
) |
Compute bicubic interpolation at (x,y), no bound checks.
Image is nx * ny array of Ts. x,y element is data[xstep*x+ystep*y] No bound checks are done.
Definition at line 73 of file vil_bicub_interp.txx.
double vil_bicub_interp_unsafe | ( | double | x, |
double | y, | ||
const T * | data, | ||
vcl_ptrdiff_t | xstep, | ||
vcl_ptrdiff_t | ystep | ||
) |
Compute bicubic interpolation at (x,y), no bound checks. Requires 1<x<ni-3, 1<y<nj-3.
Image is nx * ny array of Ts. x,y element is data[xstep*x+ystep*y] No bound checks are done.
Definition at line 28 of file vil_bicub_interp.txx.