00001 00033 #ifndef __PLANAR_VISUALIZATION_MODEL__ 00034 #define __PLANAR_VISUALIZATION_MODEL__ 00035 00036 #include "VisualizationModel.h" 00037 #include "ObjectModel.h" 00038 #include "MetaFile.h" 00039 #include <cv.h> 00040 #include <string> 00041 00042 class PlanarVisualizationModel: public VisualizationModel 00043 { 00044 public: 00045 00054 PlanarVisualizationModel(const std::vector<ObjectModel::Face> &faces, 00055 const MetaFile::MetaData::tDimensions::tPlanar &dim); 00056 00057 virtual ~PlanarVisualizationModel(){} 00058 00067 void draw(cv::Mat &img, const cv::Mat &cTo, const cv::Mat &A, 00068 const cv::Mat &K = cv::Mat()) const; 00069 00077 void draw(cv::Mat &img, const cv::Mat &sHm, unsigned int face_idx) const; 00078 00079 protected: 00080 00082 std::vector<cv::Mat> m_face_images, m_face_images_bw; 00083 00086 std::vector<cv::Mat> m_inv_A; 00087 00090 MetaFile::MetaData::tDimensions::tPlanar m_dim; 00091 00092 }; 00093 00094 #endif