00001 #ifndef __Abs1DMapping__
00002 #define __Abs1DMapping__
00003
00027 #include <stdio.h>
00028
00029
00030 #include "AnImage.hpp"
00031 #include "RealVector.hpp"
00032
00033 class Abs1DMapping
00034 {
00035 protected:
00036
00037 bool normalisation;
00038 double shift;
00039
00040 public:
00041
00042 Abs1DMapping(bool normalized=false, double biased=0.5){normalisation=normalized; shift=biased;}
00043 virtual ~Abs1DMapping(){}
00044
00045 virtual RealVector* generate(AnImage* src, RealVector* map)=0;
00046 virtual RealVector* generate(AnImage* src, RealVector* map, int channel)=0;
00047
00048 virtual AnImage* generateInv(RealVector* src, int w, int h, AnImage* dest)=0;
00049 virtual AnImage* generateInv(RealVector* src, int w, int h, int chMax, int ch, AnImage* dest)=0;
00050
00051 virtual void report(FILE* file){}
00052 };
00053
00054 #endif