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; // avoid 0 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