00001 #ifndef __RRegularizedAosOp__
00002 #define __RRegularizedAosOp__
00003
00004
00042 #include <stdio.h>
00043
00044 #include "RSimpleAosOp.hpp"
00045
00046 class RRegularizedAosOp : public RSimpleAosOp
00047 {
00048 protected:
00049
00050
00051
00052 double lambda;
00053
00054 RImage* I0;
00055
00056
00057 public:
00058
00059 RRegularizedAosOp(int iterations=8, double t=0.5,
00060 double deltaGradient=16.0, double alambda=0.1, double asigma=5.0,
00061 bool iirFlag=false, bool nonLinearFlag=true);
00062 virtual ~RRegularizedAosOp(){}
00063
00064 virtual void setI0(RImage* Istart){ I0= Istart; }
00065
00066
00067 virtual RImage* filter(RImage* src, RImage* dest=0);
00068 virtual RImage* selectedFilter(AnImage* mask, RImage* src, RImage* dest=0);
00069
00070 virtual void report(FILE* file){ fprintf(file,"Real Regularized Aos Operator\n"); }
00071 };
00072
00073
00074 #endif