include/OkanMos.h

00001 #ifndef _OKAN_MOS_H
00002 #define _OKAN_MOS_H
00003 
00004 #include "OkanMisc.h"
00005 
00006 #include <string>
00007 
00008 #define NEAR_NEIG 0
00009 #define BILINEAR 1
00010 #define BICUBIC 2
00011 
00012 using namespace std;
00013 
00019 class OkanMos
00020 {
00021         public:
00025         IplImage* image[2];
00026 
00030         double line[6];
00031 
00035         uchar **realMask;
00036 
00042         CvMat* homMat[2];
00043 
00048         double shadeMul[3];
00049 
00054         double shadeAdd[3];
00055 
00063         void removeShade( IplImage* &i0 , IplImage* &i1 , CvMat* &m0 , CvMat* &m1 );
00064 
00072         void makeMosaic( int interpolationType , uchar** im1Mask = NULL );
00073 
00079         uchar makeUImagePixel( double x);
00080 
00081         public:
00082 
00086         OkanMos();
00087 
00091         ~OkanMos();
00092 
00098         void getMosaic( IplImage ** im , uchar *** mask , double imLine[6] = NULL );
00099 
00104         void setBaseImage( IplImage* i0 , uchar** i0mask = NULL  , double i0line[6] = NULL );
00105 
00116         void addSucImage( IplImage* suc , CvMat* mbase , CvMat* msuc , int interpolationType , uchar** i1mask = NULL );
00117 };
00118 
00119 #endif
00120 

Generated on Sun Jun 15 22:35:25 2008 by  doxygen 1.5.3