00001 #ifndef __IPeronaMalikOp__ 00002 #define __IPeronaMalikOp__ 00003 00026 #include <stdio.h> 00027 00028 #include "IMultiImageOp.hpp" 00029 00030 00031 class IPeronaMalikOp : public IMultiImageOp 00032 { 00033 protected: 00034 00035 // mono channel 00036 00037 virtual AnImage* greyFilter(AnImage* src, AnImage* dest=0); 00038 virtual AnImage* greySelectedFilter(AnImage* mask, AnImage* src, AnImage* dest=0); 00039 00040 // separate color channels 00041 00042 virtual Real3CImage* scolorFilter(Real3CImage* src, Real3CImage* dest=0); 00043 virtual Real3CImage* scolorSelectedFilter(AnImage* mask, Real3CImage* src, Real3CImage* dest=0); 00044 00045 00046 // separate color channels 00047 00048 virtual Real3CImage* fcolorFilter(Real3CImage* src, Real3CImage* dest=0); 00049 virtual Real3CImage* fcolorSelectedFilter(AnImage* mask, Real3CImage* src, Real3CImage* dest=0); 00050 00051 public: 00052 IPeronaMalikOp(int iter=50,bool colorFlag= false):IMultiImageOp(iter,colorFlag){} 00053 virtual ~IPeronaMalikOp(){} 00054 00055 00056 virtual void report(FILE* file){} 00057 }; 00058 00059 00060 #endif