zxhproj v 2.2
zxhproj

zxhIntensityDistance.h

00001 
00002 /*=========================================================================
00003 
00004   Program:   ZXH Registration Software
00005   Author:    Xiahai Zhuang
00006   Module:    $RCSfle: zxhIntensityDistance.h    $
00007   Language:  C++
00008   Date:      $Date: From  2007-12 $
00009   Version:   $Revision: 2.0 $
00010 
00011 =========================================================================*/
00012 #ifndef zxhIntensityDistance_H
00013 #define zxhIntensityDistance_H
00014 
00015 #include "zxhImageData.h"
00016 
00025 
00026 class zxhIntensityDistance :
00027     public zxhImageDataT<float>
00028 {
00029 public:
00031     zxhIntensityDistance(void);
00033     ~zxhIntensityDistance(void);
00035     virtual void SetSurfaceImage( zxhImageData*p )              { m_pSurface = p ;} ;
00037     virtual void SetImageFirst( zxhImageData*p )                { m_pImage1 = p ; } ;
00039     virtual void SetImageSecond( zxhImageData*p )               { m_pImage2 = p ; } ;
00041     virtual void SetMaskImage( zxhImageData*p )                 { m_pMaskImage = p ; };
00043     virtual void SetBlurImageFirst( zxhImageData*p )            { m_pBlurImage = p ; } ;
00045     virtual void SetIntensityNormaliseRange( float f )          { m_fNormaliseRange = f ; } ;
00047     virtual void SetIntensitySubtractionRange( float f )        { m_fSubtractRange = f ; } ;
00049     virtual void SetThresholdWindow( float f )                  { m_fThresholdWindow = f ; };
00050 
00052     virtual bool Evaluate() ;
00053 protected:
00055     zxhImageData * m_pSurface ;
00057     zxhImageData * m_pImage1 ;
00059     zxhImageData * m_pImage2 ;
00061     zxhImageData * m_pMaskImage;
00063     zxhImageData * m_pBlurImage ;
00065     float m_fNormaliseRange ;
00067     float m_fSubtractRange ;
00069     float m_fThresholdWindow ;
00070 };
00071 
00072 #endif //zxhIntensityDistance_H
00073 
00074 
 All Classes Namespaces Functions Variables Typedefs