⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cvaux.h.svn-base

📁 这是于老师移植到dsp的源码
💻 SVN-BASE
📖 第 1 页 / 共 4 页
字号:
    CV_GRAPH_WEIGHTED_VERTEX_FIELDS()}CvGraphWeightedVtx;typedef struct CvGraphWeightedEdge{    CV_GRAPH_WEIGHTED_EDGE_FIELDS()}CvGraphWeightedEdge;typedef enum CvGraphWeightType{    CV_NOT_WEIGHTED,    CV_WEIGHTED_VTX,    CV_WEIGHTED_EDGE,    CV_WEIGHTED_ALL} CvGraphWeightType;/*****************************************************************************************//*******************************Stereo correspondence*************************************/typedef struct CvCliqueFinder{       CvGraph* graph;    int**    adj_matr;    int N; //graph size    // stacks, counters etc/    int k; //stack size    int* current_comp;    int** All;        int* ne;    int* ce;    int* fixp; //node with minimal disconnections    int* nod;    int* s; //for selected candidate    int status;    int best_score;    int weighted;    int weighted_edges;        float best_weight;    float* edge_weights;    float* vertex_weights;    float* cur_weight;    float* cand_weight;} CvCliqueFinder;#define CLIQUE_TIME_OFF 2#define CLIQUE_FOUND 1#define CLIQUE_END   0/*CVAPI(void) cvStartFindCliques( CvGraph* graph, CvCliqueFinder* finder, int reverse,                                    int weighted CV_DEFAULT(0),  int weighted_edges CV_DEFAULT(0));CVAPI(int) cvFindNextMaximalClique( CvCliqueFinder* finder, int* clock_rest CV_DEFAULT(0) ); CVAPI(void) cvEndFindCliques( CvCliqueFinder* finder );CVAPI(void) cvBronKerbosch( CvGraph* graph );*//*F///////////////////////////////////////////////////////////////////////////////////////////    Name:    cvSubgraphWeight//    Purpose: finds weight of subgraph in a graph//    Context://    Parameters://      graph - input graph.//      subgraph - sequence of pairwise different ints.  These are indices of vertices of subgraph.//      weight_type - describes the way we measure weight.//            one of the following://            CV_NOT_WEIGHTED - weight of a clique is simply its size//            CV_WEIGHTED_VTX - weight of a clique is the sum of weights of its vertices//            CV_WEIGHTED_EDGE - the same but edges//            CV_WEIGHTED_ALL - the same but both edges and vertices//      weight_vtx - optional vector of floats, with size = graph->total.//            If weight_type is either CV_WEIGHTED_VTX or CV_WEIGHTED_ALL//            weights of vertices must be provided.  If weight_vtx not zero//            these weights considered to be here, otherwise function assumes//            that vertices of graph are inherited from CvGraphWeightedVtx.//      weight_edge - optional matrix of floats, of width and height = graph->total.//            If weight_type is either CV_WEIGHTED_EDGE or CV_WEIGHTED_ALL//            weights of edges ought to be supplied.  If weight_edge is not zero//            function finds them here, otherwise function expects//            edges of graph to be inherited from CvGraphWeightedEdge.//            If this parameter is not zero structure of the graph is determined from matrix//            rather than from CvGraphEdge's.  In particular, elements corresponding to//            absent edges should be zero.//    Returns://      weight of subgraph.//    Notes://F*//*CVAPI(float) cvSubgraphWeight( CvGraph *graph, CvSeq *subgraph,                                  CvGraphWeightType weight_type CV_DEFAULT(CV_NOT_WEIGHTED),                                  CvVect32f weight_vtx CV_DEFAULT(0),                                  CvMatr32f weight_edge CV_DEFAULT(0) );*//*F///////////////////////////////////////////////////////////////////////////////////////////    Name:    cvFindCliqueEx//    Purpose: tries to find clique with maximum possible weight in a graph//    Context://    Parameters://      graph - input graph.//      storage - memory storage to be used by the result.//      is_complementary - optional flag showing whether function should seek for clique//            in complementary graph.//      weight_type - describes our notion about weight.//            one of the following://            CV_NOT_WEIGHTED - weight of a clique is simply its size//            CV_WEIGHTED_VTX - weight of a clique is the sum of weights of its vertices//            CV_WEIGHTED_EDGE - the same but edges//            CV_WEIGHTED_ALL - the same but both edges and vertices//      weight_vtx - optional vector of floats, with size = graph->total.//            If weight_type is either CV_WEIGHTED_VTX or CV_WEIGHTED_ALL//            weights of vertices must be provided.  If weight_vtx not zero//            these weights considered to be here, otherwise function assumes//            that vertices of graph are inherited from CvGraphWeightedVtx.//      weight_edge - optional matrix of floats, of width and height = graph->total.//            If weight_type is either CV_WEIGHTED_EDGE or CV_WEIGHTED_ALL//            weights of edges ought to be supplied.  If weight_edge is not zero//            function finds them here, otherwise function expects//            edges of graph to be inherited from CvGraphWeightedEdge.//            Note that in case of CV_WEIGHTED_EDGE or CV_WEIGHTED_ALL//            nonzero is_complementary implies nonzero weight_edge.//      start_clique - optional sequence of pairwise different ints.  They are indices of//            vertices that shall be present in the output clique.//      subgraph_of_ban - optional sequence of (maybe equal) ints.  They are indices of//            vertices that shall not be present in the output clique.//      clique_weight_ptr - optional output parameter.  Weight of found clique stored here.//      num_generations - optional number of generations in evolutionary part of algorithm,//            zero forces to return first found clique.//      quality - optional parameter determining degree of required quality/speed tradeoff.//            Must be in the range from 0 to 9.//            0 is fast and dirty, 9 is slow but hopefully yields good clique.//    Returns://      sequence of pairwise different ints.//      These are indices of vertices that form found clique.//    Notes://      in cases of CV_WEIGHTED_EDGE and CV_WEIGHTED_ALL weights should be nonnegative.//      start_clique has a priority over subgraph_of_ban.//F*//*CVAPI(CvSeq*) cvFindCliqueEx( CvGraph *graph, CvMemStorage *storage,                                 int is_complementary CV_DEFAULT(0),                                 CvGraphWeightType weight_type CV_DEFAULT(CV_NOT_WEIGHTED),                                 CvVect32f weight_vtx CV_DEFAULT(0),                                 CvMatr32f weight_edge CV_DEFAULT(0),                                 CvSeq *start_clique CV_DEFAULT(0),                                 CvSeq *subgraph_of_ban CV_DEFAULT(0),                                 float *clique_weight_ptr CV_DEFAULT(0),                                 int num_generations CV_DEFAULT(3),                                 int quality CV_DEFAULT(2) );*/#define CV_UNDEF_SC_PARAM         12345 //default value of parameters#define CV_IDP_BIRCHFIELD_PARAM1  25    #define CV_IDP_BIRCHFIELD_PARAM2  5#define CV_IDP_BIRCHFIELD_PARAM3  12#define CV_IDP_BIRCHFIELD_PARAM4  15#define CV_IDP_BIRCHFIELD_PARAM5  25#define  CV_DISPARITY_BIRCHFIELD  0    /*F///////////////////////////////////////////////////////////////////////////////    Name:    cvFindStereoCorrespondence//    Purpose: find stereo correspondence on stereo-pair//    Context://    Parameters://      leftImage - left image of stereo-pair (format 8uC1).//      rightImage - right image of stereo-pair (format 8uC1).//   mode - mode of correspondence retrieval (now CV_DISPARITY_BIRCHFIELD only)//      dispImage - destination disparity image//      maxDisparity - maximal disparity //      param1, param2, param3, param4, param5 - parameters of algorithm//    Returns://    Notes://      Images must be rectified.//      All images must have format 8uC1.//F*/CVAPI(void) cvFindStereoCorrespondence(                    const  CvArr* leftImage, const  CvArr* rightImage,                   int     mode,                   CvArr*  dispImage,                   int     maxDisparity,                                                   double  param1 CV_DEFAULT(CV_UNDEF_SC_PARAM),                    double  param2 CV_DEFAULT(CV_UNDEF_SC_PARAM),                    double  param3 CV_DEFAULT(CV_UNDEF_SC_PARAM),                    double  param4 CV_DEFAULT(CV_UNDEF_SC_PARAM),                    double  param5 CV_DEFAULT(CV_UNDEF_SC_PARAM) );/*****************************************************************************************//************ Epiline functions *******************/typedef struct CvStereoLineCoeff{    double Xcoef;    double XcoefA;    double XcoefB;    double XcoefAB;    double Ycoef;    double YcoefA;    double YcoefB;    double YcoefAB;    double Zcoef;    double ZcoefA;    double ZcoefB;    double ZcoefAB;}CvStereoLineCoeff;typedef struct CvCamera{    float   imgSize[2]; /* size of the camera view, used during calibration */    float   matrix[9]; /* intinsic camera parameters:  [ fx 0 cx; 0 fy cy; 0 0 1 ] */    float   distortion[4]; /* distortion coefficients - two coefficients for radial distortion                              and another two for tangential: [ k1 k2 p1 p2 ] */    float   rotMatr[9];    float   transVect[3]; /* rotation matrix and transition vector relatively                             to some reference point in the space. */}CvCamera;typedef struct CvStereoCamera{    CvCamera* camera[2]; /* two individual camera parameters */    float fundMatr[9]; /* fundamental matrix */    /* New part for stereo */    CvPoint3D32f epipole[2];    CvPoint2D32f quad[2][4]; /* coordinates of destination quadrangle after                                epipolar geometry rectification */    double coeffs[2][3][3];/* coefficients for transformation */    CvPoint2D32f border[2][4];    CvSize warpSize;    CvStereoLineCoeff* lineCoeffs;    int needSwapCameras;/* flag set to 1 if need to swap cameras for good reconstruction */    float rotMatrix[9];    float transVector[3];}CvStereoCamera;typedef struct CvContourOrientation{    float egvals[2];    float egvects[4];    float max, min; // minimum and maximum projections    int imax, imin;} CvContourOrientation;#define CV_CAMERA_TO_WARP 1#define CV_WARP_TO_CAMERA 2#ifndef _TMS320C6XCVAPI(int) icvConvertWarpCoordinates(double coeffs[3][3],                                CvPoint2D32f* cameraPoint,                                CvPoint2D32f* warpPoint,                                int direction);CVAPI(int) icvGetSymPoint3D(  CvPoint3D64d pointCorner,                            CvPoint3D64d point1,                            CvPoint3D64d point2,                            CvPoint3D64d *pointSym2);CVAPI(void) icvGetPieceLength3D(CvPoint3D64d point1,CvPoint3D64d point2,double* dist);CVAPI(int) icvCompute3DPoint(    double alpha,double betta,                            CvStereoLineCoeff* coeffs,                            CvPoint3D64d* point);CVAPI(int) icvCreateConvertMatrVect( CvMatr64d     rotMatr1,

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -