_ipcv.h.svn-base

来自「非结构化路识别」· SVN-BASE 代码 · 共 1,074 行 · 第 1/5 页

SVN-BASE
1,074
字号
                                              CvSize size, double* mean, double* sdv )) \
IPCVAPI( CvStatus, icvMean_StdDev_##flavor##_C3R, ( const srctype* img, int imgstep,    \
                                              CvSize size, double* mean, double* sdv )) \
IPCVAPI( CvStatus, icvMean_StdDev_##flavor##_C4R, ( const srctype* img, int imgstep,    \
                                              CvSize size, double* mean, double* sdv )) \
IPCVAPI( CvStatus, icvMean_StdDev_##flavor##_CnCR,( const srctype* img, int imgstep,    \
                                              CvSize size, int cn,                      \
                                              int coi, double* mean, double* sdv ))     \
                                                                                        \
IPCVAPI( CvStatus, icvMean_StdDev_##flavor##_C1MR, ( const srctype* img, int imgstep,   \
                                              const uchar* mask, int maskStep,          \
                                              CvSize size, double* mean, double* sdv )) \
IPCVAPI( CvStatus, icvMean_StdDev_##flavor##_C2MR, ( const srctype* img, int imgstep,   \
                                              const uchar* mask, int maskStep,          \
                                              CvSize size, double* mean, double* sdv )) \
IPCVAPI( CvStatus, icvMean_StdDev_##flavor##_C3MR, ( const srctype* img, int imgstep,   \
                                              const uchar* mask, int maskStep,          \
                                              CvSize size, double* mean, double* sdv )) \
IPCVAPI( CvStatus, icvMean_StdDev_##flavor##_C4MR, ( const srctype* img, int imgstep,   \
                                              const uchar* mask, int maskStep,          \
                                              CvSize size, double* mean, double* sdv )) \
IPCVAPI( CvStatus, icvMean_StdDev_##flavor##_CnCMR, ( const srctype* img, int imgstep,  \
                                               const uchar* mask, int maskStep,         \
                                               CvSize size, int cn,                     \
                                               int coi, double* mean, double* sdv ))

IPCV_DEF_MEAN_SDV( 8u, uchar )
IPCV_DEF_MEAN_SDV( 8s, char )
IPCV_DEF_MEAN_SDV( 16s, short )
IPCV_DEF_MEAN_SDV( 32s, int )
IPCV_DEF_MEAN_SDV( 32f, float )
IPCV_DEF_MEAN_SDV( 64f, double )

#undef IPCV_DEF_MEAN_SDV

//////////////////////////////////// MinMaxIndx /////////////////////////////////////////


#define IPCV_DEF_MIN_MAX_LOC( flavor, srctype, extrtype )                               \
IPCVAPI( CvStatus, icvMinMaxIndx_##flavor##_C1R,( const srctype* img, int imgstep,      \
                                       CvSize size, extrtype* minVal, extrtype* maxVal, \
                                       CvPoint* minLoc, CvPoint* maxLoc ))              \
IPCVAPI( CvStatus, icvMinMaxIndx_##flavor##_CnCR,( const srctype* img, int imgstep,     \
                                       CvSize size, int cn, int coi,                    \
                                       extrtype* minVal, extrtype* maxVal,              \
                                       CvPoint* minLoc, CvPoint* maxLoc ))              \
                                                                                        \
IPCVAPI( CvStatus, icvMinMaxIndx_##flavor##_C1MR, ( const srctype* img, int imgstep,    \
                                       const uchar* mask, int maskStep,                 \
                                       CvSize size, extrtype* minVal, extrtype* maxVal, \
                                       CvPoint* minLoc, CvPoint* maxLoc ))              \
                                                                                        \
IPCVAPI( CvStatus, icvMinMaxIndx_##flavor##_CnCMR, ( const srctype* img, int imgstep,   \
                                       const uchar* mask, int maskStep,                 \
                                       CvSize size, int cn, int coi,                    \
                                       extrtype* minVal, extrtype* maxVal,              \
                                       CvPoint* minLoc, CvPoint* maxLoc ))

IPCV_DEF_MIN_MAX_LOC( 8u, uchar, float )
IPCV_DEF_MIN_MAX_LOC( 8s, char, float )
IPCV_DEF_MIN_MAX_LOC( 16s, short, float )
IPCV_DEF_MIN_MAX_LOC( 32s, int, double )
IPCV_DEF_MIN_MAX_LOC( 32f, float, float )
IPCV_DEF_MIN_MAX_LOC( 64f, double, double )

#undef IPCV_MIN_MAX_LOC

////////////////////////////////////////// Sum //////////////////////////////////////////

#define IPCV_DEF_SUM( flavor, srctype )                                     \
IPCVAPI( CvStatus, icvSum_##flavor##_C1R,( const srctype* img, int imgstep, \
                                           CvSize size, double* sum ))      \
IPCVAPI( CvStatus, icvSum_##flavor##_C2R,( const srctype* img, int imgstep, \
                                           CvSize size, double* sum ))      \
IPCVAPI( CvStatus, icvSum_##flavor##_C3R,( const srctype* img, int imgstep, \
                                           CvSize size, double* sum ))      \
IPCVAPI( CvStatus, icvSum_##flavor##_C4R,( const srctype* img, int imgstep, \
                                           CvSize size, double* sum ))      \
IPCVAPI( CvStatus, icvSum_##flavor##_CnCR,( const srctype* img, int imgstep,\
                                            CvSize size, int cn,            \
                                            int coi, double* sum ))

IPCV_DEF_SUM( 8u, uchar )
IPCV_DEF_SUM( 8s, char )
IPCV_DEF_SUM( 16s, short )
IPCV_DEF_SUM( 32s, int )
IPCV_DEF_SUM( 32f, float )
IPCV_DEF_SUM( 64f, double )

#undef IPCV_DEF_SUM

////////////////////////////////////////// CountNonZero /////////////////////////////////

#define IPCV_DEF_NON_ZERO( flavor, srctype )                                            \
IPCVAPI( CvStatus, icvCountNonZero_##flavor##_C1R,( const srctype* img, int imgstep,    \
                                                    CvSize size, int* nonzero ))        \
IPCVAPI( CvStatus, icvCountNonZero_##flavor##_CnCR,( const srctype* img, int imgstep,   \
                                                     CvSize size, int cn,               \
                                                     int coi, int* nonzero ))

IPCV_DEF_NON_ZERO( 8u, uchar )
IPCV_DEF_NON_ZERO( 16s, ushort )
IPCV_DEF_NON_ZERO( 32s, int )
IPCV_DEF_NON_ZERO( 32f, int )
IPCV_DEF_NON_ZERO( 64f, int64 )

#undef IPCV_DEF_NON_ZERO

//////////////////////////////////////// Moments ////////////////////////////////////////

#define IPCV_DEF_MOMENTS( name, flavor, srctype )       \
IPCVAPI( CvStatus, icv##name##_##flavor##_CnCR,         \
( const srctype* img, int step, CvSize size, int cn, int coi, double *moments ))

IPCV_DEF_MOMENTS( MomentsInTile, 8u, uchar )
IPCV_DEF_MOMENTS( MomentsInTile, 8s, char )
IPCV_DEF_MOMENTS( MomentsInTile, 16s, short )
IPCV_DEF_MOMENTS( MomentsInTile, 32f, float )
IPCV_DEF_MOMENTS( MomentsInTile, 64f, double )

IPCV_DEF_MOMENTS( MomentsInTileBin, 8u, uchar )
IPCV_DEF_MOMENTS( MomentsInTileBin, 16s, ushort )
IPCV_DEF_MOMENTS( MomentsInTileBin, 32f, int )
IPCV_DEF_MOMENTS( MomentsInTileBin, 64f, int64 )

#undef IPCV_DEF_MOMENTS

////////////////////////////////////////// Norm 1 /////////////////////////////////


#define IPCV_DEF_NORM_C1( flavor, srctype )                                             \
IPCVAPI( CvStatus, icvNorm_Inf_##flavor##_C1R,( const srctype* img, int imgstep,        \
                                                CvSize size, double* norm ))            \
IPCVAPI( CvStatus, icvNorm_L1_##flavor##_C1R,( const srctype* img, int imgstep,         \
                                                CvSize size, double* norm ))            \
IPCVAPI( CvStatus, icvNorm_L2_##flavor##_C1R,( const srctype* img, int imgstep,         \
                                                CvSize size, double* norm ))            \
IPCVAPI( CvStatus, icvNormDiff_Inf_##flavor##_C1R,( const srctype* img1, int imgstep1,  \
                                                    const srctype* img2, int imgstep2,  \
                                                    CvSize size, double* norm ))        \
IPCVAPI( CvStatus, icvNormDiff_L1_##flavor##_C1R,( const srctype* img1, int imgstep1,   \
                                                   const srctype* img2, int imgstep2,   \
                                                   CvSize size, double* norm ))         \
IPCVAPI( CvStatus, icvNormDiff_L2_##flavor##_C1R,( const srctype* img1, int imgstep1,   \
                                                   const srctype* img2, int imgstep2,   \
                                                   CvSize size, double* norm ))         \
IPCVAPI( CvStatus, icvNorm_Inf_##flavor##_C1MR,( const srctype* img, int imgstep,       \
                                                 const uchar* mask, int maskstep,       \
                                                 CvSize size, double* norm ))           \
IPCVAPI( CvStatus, icvNorm_L1_##flavor##_C1MR,( const srctype* img, int imgstep,        \
                                                const uchar* mask, int maskstep,        \
                                                CvSize size, double* norm ))            \
IPCVAPI( CvStatus, icvNorm_L2_##flavor##_C1MR,( const srctype* img, int imgstep,        \
                                                const uchar* mask, int maskstep,        \
                                                CvSize size, double* norm ))            \
IPCVAPI( CvStatus, icvNormDiff_Inf_##flavor##_C1MR,( const srctype* img1, int imgstep1, \
                                                    const srctype* img2, int imgstep2,  \
                                                    const uchar* mask, int maskstep,    \
                                                    CvSize size, double* norm ))        \
IPCVAPI( CvStatus, icvNormDiff_L1_##flavor##_C1MR,( const srctype* img1, int imgstep1,  \
                                                    const srctype* img2, int imgstep2,  \
                                                    const uchar* mask, int maskstep,    \
                                                   CvSize size, double* norm ))         \
IPCVAPI( CvStatus, icvNormDiff_L2_##flavor##_C1MR,( const srctype* img1, int imgstep1,  \
                                                    const srctype* img2, int imgstep2,  \
                                                    const uchar* mask, int maskstep,    \
                                                   CvSize size, double* norm ))

IPCV_DEF_NORM_C1( 8u, uchar )
IPCV_DEF_NORM_C1( 8s, char )
IPCV_DEF_NORM_C1( 16s, short )
IPCV_DEF_NORM_C1( 32s, int )
IPCV_DEF_NORM_C1( 32f, float )
IPCV_DEF_NORM_C1( 64f, double )

#undef IPCV_DEF_NORM_C1

/****************************************************************************************\
*                                       Utilities                                        *
\****************************************************************************************/

////////////////////////////// Copy Pixel <-> Plane /////////////////////////////////

#define IPCV_PIX_PLANE( flavor, arrtype )                                           \
IPCVAPI( CvStatus, icvCopy_##flavor##_C2P2R,                                        \
    ( const arrtype* src, int srcstep, arrtype** dst, int dststep, CvSize size ))   \
IPCVAPI( CvStatus, icvCopy_##flavor##_C3P3R,                                        \
    ( const arrtype* src, int srcstep, arrtype** dst, int dststep, CvSize size ))   \
IPCVAPI( CvStatus, icvCopy_##flavor##_C4P4R,                                        \
    ( const arrtype* src, int srcstep, arrtype** dst, int dststep, CvSize size ))   \
IPCVAPI( CvStatus, icvCopy_##flavor##_CnC1CR,                                       \
    ( const arrtype* src, int srcstep, arrtype* dst, int dststep,                   \
      CvSize size, int cn, int coi ))                                               \
IPCVAPI( CvStatus, icvCopy_##flavor##_C1CnCR,                                       \
    ( const arrtype* src, int srcstep, arrtype* dst, int dststep,                   \
      CvSize size, int cn, int coi ))                                               \
IPCVAPI( CvStatus, icvCopy_##flavor##_P2C2R,                                        \
    ( const arrtype** src, int srcstep, arrtype* dst, int dststep, CvSize size ))   \
IPCVAPI( CvStatus, icvCopy_##flavor##_P3C3R,                                        \
    ( const arrtype** src, int srcstep, arrtype* dst, int dststep, CvSize size ))   \
IPCVAPI( CvStatus, icvCopy_##flavor##_P4C4R,                                        \
    ( const arrtype** src, int srcstep, arrtype* dst, int dststep, CvSize size ))

IPCV_PIX_PLANE( 8u, uchar )
IPCV_PIX_PLANE( 16u, ushort )
IPCV_PIX_PLANE( 32s, int )
IPCV_PIX_PLANE( 64f, int64 )

#undef IPCV_PIX_PLANE

/****************************************************************************************\
*                                  Background differencing                               *
\****************************************************************************************/

////////////////////////////////////// AbsDiff ///////////////////////////////////////////

⌨️ 快捷键说明

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