www.pudn.com > Particlefilter_code.zip > ProbContour.h


////////////////////////////////////////////////////////////////////////////////////// 
// 
//	Header file  of Probabilistic Contour Extraction Approach 
// 
//	XinFan 2003.5.26 
// 
//Reference: 
//	[1] P. P¨Śrez, A. Blake, and M. Gangnet.  
//		JetStream: Probabilistic contour extraction with particles.  
//		Proc. Int. Conf. on Computer Vision (ICCV),  II:524-531, 2001. 
////////////////////////////////////////////////////////////////////////////////////// 
 
#ifndef _PROBCONTOUR_H 
#define	_PROBCONTOUR_H 
 
#include "JetStream.h" 
#include "AAMShape.h" 
 
////////////////////////////////////////////////////////////////////////////////////// 
// 
//	Interface for Jetstream algorithm 
// 
////////////////////////////////////////////////////////////////////////////////////// 
void cvrJetInitPara(JETPARA *jetPara, const CJetImgData *jetData = 0); 
void cvrJetInitData(const void * src, CJetImgData *jetData); 
 
 
////////////////////////////////////////////////////////////////////////////////////// 
// 
//	For Particle filters 
// 
////////////////////////////////////////////////////////////////////////////////////// 
void cvrParticleIteration(CParticle *cvrParticle, int nStep); 
void cvrStreamIter(CJetStream *cvrStream, int nStartStep, int nEndStep); 
 
///////////////////////////////////////////////////////////////////////////////////// 
// Contour retrieve and drawing 
///////////////////////////////////////////////////////////////////////////////////// 
void cvrProbContour(void *srcImg, const CParticle *cvParticle, int nStep); 
void cvrDrawFaceContour(void *srcImg,  
					 const CParticle *cvParticle,  
					 int nStep,  
					 const std::vector &ptInfo, 
					 const CString &szPathName); 
void DrawAAMShape(void *srcImg, const CAAMShape &shape); 
 
 
/////////////////////////////////////////////////////////////////////////////////// 
// Drawing functions 
//////////////////////////////////////////////////////////////////////////////////// 
void DrawCross(void *srcImg, int *point, int cross_width); 
void DrawCross(void *srcImg, long *point, int cross_width); 
void DrawCross(void *srcImg, float *point, int cross_width); 
void DrawCircle(void *srcImg, int *point, int radius = 3); 
#endif