#include <BicubicImInterpolator.hpp>
Inheritance diagram for BicubicImInterpolator:
Purpose: Define the concept of bicubic interpolator One wants to define values between pixels for computation or magnification Book: "Numerical receipes in c.", William H. Press and all, Cambridge University, 1988, p105-108
@ Copyrights: Bernard De Cuyper & Eddy Fraiha 2004, Eggs & Pictures. MIT/Open BSD copyright model.
Public Methods | |
BicubicImInterpolator (AnImage *animage=0) | |
virtual | ~BicubicImInterpolator () |
virtual int | igetR (double x, double y, int c=0) |
virtual double | getR (double x, double y, int c=0) |
Static Public Attributes | |
const int | wt [16][16] |
Protected Methods | |
void | computeBoxAndGradients (double x, double y, int c=0) |
void | computeCoefficients () |
Private Attributes | |
int | ix |
int | iy |
int | ichannel |
float | y [4] |
float | y1 [4] |
float | y2 [4] |
float | y12 [4] |
float | c [4][4] |
|
Initial value: { { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, { 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0}, {-3, 0, 0, 3, 0, 0, 0, 0,-2, 0, 0,-1, 0, 0, 0, 0}, { 2, 0, 0,-2, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0}, { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0}, { 0, 0, 0, 0,-3, 0, 0, 3, 0, 0, 0, 0,-2, 0, 0,-1}, { 0, 0, 0, 0, 2, 0, 0,-2, 0, 0, 0, 0, 1, 0, 0, 1}, {-3, 3, 0, 0,-2,-1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, { 0, 0, 0, 0, 0, 0, 0, 0,-3, 3, 0, 0,-2,-1, 0, 0}, { 9,-9, 9,-9, 6, 3,-3,-6, 6,-6,-3, 3, 4, 2, 1, 2}, {-6, 6,-6, 6,-4,-2, 2, 4,-3, 3, 3,-3,-2,-1,-1,-2}, { 2,-2, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, { 0, 0, 0, 0, 0, 0, 0, 0, 2,-2, 0, 0, 1, 1, 0, 0}, {-6, 6,-6, 6,-3,-3, 3, 3,-4, 4, 2,-2,-2,-2,-1,-1}, { 4,-4, 4,-4, 2, 2,-2,-2, 2,-2,-2, 2, 1, 1, 1, 1} } |