Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

strk_region_info.h

Go to the documentation of this file.
00001 // This is brl/bseg/strk/strk_region_info.h
00002 #ifndef strk_region_info_h_
00003 #define strk_region_info_h_
00004 //---------------------------------------------------------------------
00005 //:
00006 // \file
00007 // \brief a processor for computing the mutual information between image regions
00008 //
00009 // \author
00010 //  J.L. Mundy - March 14, 2003
00011 //
00012 // \verbatim
00013 //  Modifications
00014 //   <none>
00015 // \endverbatim
00016 //
00017 //-------------------------------------------------------------------------
00018 #include <vgl/algo/vgl_h_matrix_2d.h>
00019 #include <vil1/vil1_image.h>
00020 #include <vil1/vil1_memory_image_of.h>
00021 #include <vtol/vtol_face_2d_sptr.h>
00022 #include <strk/strk_tracking_face_2d_sptr.h>
00023 #include <strk/strk_region_info_params.h>
00024 
00025 class strk_region_info : public strk_region_info_params
00026 {
00027  public:
00028 
00029   //Constructors/destructor
00030 
00031   strk_region_info(strk_region_info_params& tp);
00032  ~strk_region_info();
00033 
00034   //Accessors
00035 
00036   //unsigned char images for display purposes
00037   vil1_memory_image_of<unsigned char> image_0();
00038   vil1_memory_image_of<unsigned char> image_i();
00039 
00040   //Mutators
00041 
00042   void set_image_0(vil1_image& image);
00043   void set_image_i(vil1_image& image);
00044   void set_face_0(vtol_face_2d_sptr const& face);
00045   void set_face_i(vtol_face_2d_sptr const& face);
00046   void set_background_face(vtol_face_2d_sptr const& face);
00047   //Utility Methods
00048 
00049   void init();
00050 
00051   //Debug Methods
00052 
00053   //: Evalutate the information at the initial region
00054   void evaluate_info();
00055   
00056   //: Evalutate the information for the background region
00057   void evaluate_background_info();
00058   
00059   //Protected methods
00060 
00061  protected:
00062   bool map_i_to_0(vgl_h_matrix_2d<double>& H);
00063 
00064   //Members
00065 
00066   vil1_memory_image_of<float> image_0_;  //!< frame 0 intensity
00067   vil1_memory_image_of<float> image_i_;  //!< frame i intensity
00068   vil1_memory_image_of<float> hue_0_;  //!< hue of image_0
00069   vil1_memory_image_of<float> sat_0_;  //!< saturation of image_0
00070   vil1_memory_image_of<float> hue_i_;  //!< hue of image i
00071   vil1_memory_image_of<float> sat_i_;  //!< saturation of image_i
00072   vil1_memory_image_of<float> Ix_0_;  //!< x derivative of image_0 intensity
00073   vil1_memory_image_of<float> Iy_0_;  //!< y derivative of image_0 intensity
00074   vil1_memory_image_of<float> Ix_i_;  //!< x derivative of image_i intensity
00075   vil1_memory_image_of<float> Iy_i_;  //!< y derivative of image_i intensity
00076   vtol_face_2d_sptr face_0_;//!< initial model
00077   vtol_face_2d_sptr face_i_;//!< observation model
00078   vtol_face_2d_sptr background_face_;
00079   strk_tracking_face_2d_sptr info_face_;
00080 };
00081 
00082 #endif // strk_region_info_h_

Generated on Thu Jan 10 14:53:19 2008 for contrib/brl/bseg/strk by  doxygen 1.4.4