vil_sample_grid_bicub.h
Go to the documentation of this file.
1 // This is core/vil/vil_sample_grid_bicub.h
2 #ifndef vil_sample_grid_bicub_h_
3 #define vil_sample_grid_bicub_h_
4 //:
5 // \file
6 // \brief Bicubic grid sampling function for 2D images
7 //
8 // The vil bicub source files were derived from the corresponding
9 // vil bilin files, thus the vil bilin/bicub source files are very
10 // similar. If you modify something in this file, there is a
11 // corresponding bilin file that would likely also benefit from
12 // the same change.
13 
14 #include <vil/vil_image_view.h>
15 
16 //: Sample grid from image, using bicubic interpolation
17 // Grid points are (x0+i.dx1+j.dx2,y0+i.dy1+j.dy2), where i=[0..n1-1], j=[0..n2-1]
18 // Vector v is filled with n1*n2*np elements, where np=image.nplanes()*image.ncomponents()
19 // v[0]..v[np-1] are the values from point (x0,y0)
20 // Samples are taken along direction (dx2,dy2) first, then along (dx1,dy1).
21 // Points outside image return zero.
22 // \relatesalso vil_image_view
23 template <class imType, class vecType>
24 void vil_sample_grid_bicub(vecType* v,
25  const vil_image_view<imType>& image,
26  double x0, double y0, double dx1, double dy1,
27  double dx2, double dy2, int n1, int n2);
28 
29 #endif // vil_sample_grid_bicub_h_
Concrete view of image data of type T held in memory.
Definition: vil_fwd.h:13
void vil_sample_grid_bicub(vecType *v, const vil_image_view< imType > &image, double x0, double y0, double dx1, double dy1, double dx2, double dy2, int n1, int n2)
Sample grid from image, using bicubic interpolation.
A base class reference-counting view of some image data.