www.pudn.com > Face3DModel.zip > global.h


#pragma once 
 
void WINAPI DeleteMediaType(AM_MEDIA_TYPE *pmt); 
void WINAPI FreeMediaType(AM_MEDIA_TYPE& mt); 
HRESULT GetPin(IBaseFilter *pFilter, PIN_DIRECTION PinDir, IPin **ppPin); 
HRESULT ConnectFilters(IGraphBuilder *pGraph, IBaseFilter *pFirst, IBaseFilter *pSecond); 
HRESULT InsertSampleFilter(IGraphBuilder *pGraph, IBaseFilter *pFirst, IBaseFilter *pSample); 
HRESULT ConnectSampleFilter(IGraphBuilder *pGraph, IBaseFilter *pSample); 
BOOL IsWindowsMediaFile(LPTSTR lpszFile); 
HRESULT RenderOutputPins(IGraphBuilder *pGB, IBaseFilter *pFilter); 
 
void EdgeDetectOnGrayImage(unsigned char *SrcImage, unsigned char *DstImage, int width, int height, int StandardDev, int LowerThreshold, int HigherThreshold); 
int canny_core(double s, int width, int height, unsigned char *data, unsigned char *derivative_mag, unsigned char *magnitude, unsigned char *orientation); 
double gaussian(double x, double s); 
double hypotenuse(double x, double y); 
void thresholding_tracker(int high, int low, int cols, int rows, unsigned char *data, unsigned char *magnitude, unsigned char *orientation); 
int follow(int i, int j, int low, int cols, int rows, unsigned char *data, unsigned char *magnitude, unsigned char *orientation); 
unsigned char GetGray(unsigned char x1,unsigned char x2,unsigned char x3); 
 
void PartialDerivativeX(int nWidth, int nHeight, BYTE *pbGray, int* pwPartialDerivativeX); 
void PartialDerivativeY(int nWidth, int nHeight, BYTE *pbGray, int* pwPartialDerivativeY); 
void ScalarMultiple(int nWidth, int nHeight, int *piSrc1, int *piSrc2, float *piDst); 
double ConvolutionProductWithW(int nWidth, int nHeight, int row, int col, float *piX, double *Gauss); 
double FindMax(int nLength, double *pdR); 
void Threshhold(int nWidth, int nHeight, double *pdR, BYTE *pbEdge, double RMax, double theta); 
 
BOOL OutRange(int nWidth, int nHeight, POINT point, int windowSize); 
double Correlation(int nWidth, int nHeight, BYTE *pbImage1, BYTE *pbImage2, POINT point1, POINT point2, int windowSize); 
double average(int nWidth, int nHeight, BYTE *pbImage, POINT point, int windowSize); 
 
int solve_equation_3(double &a0, double &a1, double &a2, double &a3, 
                     double &x1, double &x2, double &x3); 
double distance(int x1, int y1, int z1, int x2, int y2, int z2);