www.pudn.com > stereo.rar > CaliDoc.h
// CaliDoc.h : interface of the CCaliDoc class
//
/////////////////////////////////////////////////////////////////////////////
#if !defined(AFX_CALIDOC_H__1B822B2F_9010_4C89_BF2F_71722499DD9C__INCLUDED_)
#define AFX_CALIDOC_H__1B822B2F_9010_4C89_BF2F_71722499DD9C__INCLUDED_
#include "CDIB.H" // Added by ClassView
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "Corner.h"
#include "PriorityQueue.h"
class CCaliDoc : public CDocument
{
protected: // create from serialization only
CCaliDoc();
DECLARE_DYNCREATE(CCaliDoc)
// Attributes
public:
// Operations
public:
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CCaliDoc)
public:
virtual BOOL OnNewDocument();
virtual void Serialize(CArchive& ar);
//}}AFX_VIRTUAL
// Implementation
public:
double s(CDib& image,int x,int y);
BOOL fitsize(const int w,CDib& left,CDib& right,int leftx,int lefty,int rightx,int righty);
void propagation(CDib& left,CDib& right,priorqueue& seed,CorrespondingMap& ResultMap);
double zncc(const int w,CDib& left,int leftx,int lefty,CDib& right,int rightx,int righty);
void leftmatchright(CDib & left,CDib& right,int leftx,int lefty,const int rightnum,int *cornerrightx,int * cornerrighty,int &matchrightx,int &matchrighty,double & matchscore);
void InitialCalibration(CDib &left,CDib &right,CCorner *&corner1,CCorner *&corner2,const int leftnum,const int rightnum,priorqueue& seed);
void RgbtoGray(CDib &image);
int CornerDetection(CDib &image,int flag,CCorner *&corner);
CDib m_dib1;
CDib m_dib2Copy;
CDib m_dib2;
int *leftmatched;
int *rightmatched;
CCorner *corner1;
CCorner *corner2;
int numofcorner1;
int numofcorner2;
int processing;
priorqueue seedq;
MatchPoint *seeds;//因为priorqueue不容易访问,只能pop,or push所以用数组及时更新保存seedq
int numofseeds;
MatchPoint *mapsafterpro;
int numofmapsafterpro;
virtual ~CCaliDoc();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
protected:
// Generated message map functions
protected:
//{{AFX_MSG(CCaliDoc)
afx_msg void OnCaliCornerdete();
afx_msg void OnCaliInicali();
afx_msg void OnCaliPropagation();
afx_msg void OnCaliWhole();
afx_msg void OnCaliRgbtogray();
afx_msg void OnReadLeft();
afx_msg void OnReadRight();
afx_msg void OnCaliDisparity();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_CALIDOC_H__1B822B2F_9010_4C89_BF2F_71722499DD9C__INCLUDED_)