Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   Related Pages  

IShockProximityOp.hpp

00001 #ifndef __IShockProximityOp__
00002 #define __IShockProximityOp__
00003 
00004 
00005 
00027 #include <stdio.h>
00028 
00029 #include "IMultiImageOp.hpp"
00030 
00031 #include "Real3CImage.hpp"
00032 
00033 
00034 class IShockProximityOp : public IMultiImageOp 
00035 {
00036 private:
00037 
00038 double  alpha;
00039 
00040 double  lambda; // tangent diff
00041 
00042 double  limitDistance;          // balance shock / diffusion
00043 RImage* distanceMapEdges;
00044 
00045 
00046 protected:
00047 
00048 // mono channel
00049 
00050 virtual AnImage* greyFilter(AnImage* src, AnImage* dest=0);
00051 virtual AnImage* greySelectedFilter(AnImage* mask, AnImage* src, AnImage* dest=0);
00052 
00053 // separate color channels
00054 
00055 virtual Real3CImage* scolorFilter(Real3CImage* src, Real3CImage* dest=0);
00056 virtual Real3CImage* scolorSelectedFilter(AnImage* mask, Real3CImage* src, Real3CImage* dest=0);
00057 
00058 
00059 // separate color channels
00060 
00061 virtual Real3CImage* fcolorFilter(Real3CImage* src, Real3CImage* dest=0);
00062 virtual Real3CImage* fcolorSelectedFilter(AnImage* mask, Real3CImage* src, Real3CImage* dest=0);
00063 
00064 public:
00065         
00066 IShockProximityOp(int iter, double anAlpha=0.03, RImage* dmap=0, double dlimit=5.0, double alambda=0.2,  bool colorFlag= false)
00067         :IMultiImageOp(iter,colorFlag)
00068         {alpha=anAlpha; lambda= alambda; limitDistance=dlimit; distanceMapEdges=dmap;}
00069 virtual ~IShockProximityOp(){}
00070 
00071 
00072 virtual void report(FILE* file){}
00073 };
00074 
00075 
00076 #endif
SourceForge.net Logo
Restoreinpaint sourceforge project `C++/Java Image Processing, Restoration, Inpainting Project'.

Bernard De Cuyper: Open Project Leader: Concept, design and development.
Bernard De Cuyper & Eddy Fraiha 2002, 2003. Bernard De Cuyper 2004. Open and free, for friendly usage only.
Modifications on Belgium ground of this piece of artistic work, by governement institutions or companies, must be notified to Bernard De Cuyper.
bern_bdc@hotmail.com