📄 _cvipp.h
字号:
IPCV_WARPPERSPECTIVE_BACK( 32f, 1 )IPCV_WARPPERSPECTIVE_BACK( 32f, 3 )IPCV_WARPPERSPECTIVE_BACK( 32f, 4 )#undef IPCV_WARPPERSPECTIVE_BACK#define IPCV_WARPPERSPECTIVE( flavor, cn ) \IPCVAPI_EX( CvStatus, icvWarpPerspective_##flavor##_C##cn##R, \ "ippiWarpPerspective_" #flavor "_C" #cn "R", CV_PLUGINS1(CV_PLUGIN_IPPI),\ (const void* src, CvSize srcsize, int srcstep, CvRect srcroi, \ void* dst, int dststep, CvRect dstroi, \ const double* coeffs, int interpolate ))IPCV_WARPPERSPECTIVE( 8u, 1 )IPCV_WARPPERSPECTIVE( 8u, 3 )IPCV_WARPPERSPECTIVE( 8u, 4 )IPCV_WARPPERSPECTIVE( 32f, 1 )IPCV_WARPPERSPECTIVE( 32f, 3 )IPCV_WARPPERSPECTIVE( 32f, 4 )#undef IPCV_WARPPERSPECTIVE#define IPCV_REMAP( flavor, cn ) \IPCVAPI_EX( CvStatus, icvRemap_##flavor##_C##cn##R, \ "ippiRemap_" #flavor "_C" #cn "R", CV_PLUGINS1(CV_PLUGIN_IPPI), \ ( const void* src, CvSize srcsize, int srcstep, CvRect srcroi, \ const float* xmap, int xmapstep, const float* ymap, int ymapstep, \ void* dst, int dststep, CvSize dstsize, int interpolation )) IPCV_REMAP( 8u, 1 )IPCV_REMAP( 8u, 3 )IPCV_REMAP( 8u, 4 )IPCV_REMAP( 32f, 1 )IPCV_REMAP( 32f, 3 )IPCV_REMAP( 32f, 4 )#undef IPCV_REMAP/****************************************************************************************\* Morphology *\****************************************************************************************/#define IPCV_MORPHOLOGY( minmaxtype, morphtype, flavor, cn ) \IPCVAPI_EX( CvStatus, icv##morphtype##Rect_##flavor##_C##cn##R, \ "ippiFilter" #minmaxtype "BorderReplicate_" #flavor "_C" #cn "R", \ CV_PLUGINS1(CV_PLUGIN_IPPCV), ( const void* src, int srcstep, void* dst, \ int dststep, CvSize roi, CvSize esize, CvPoint anchor, void* buffer )) \IPCVAPI_EX( CvStatus, icv##morphtype##Rect_GetBufSize_##flavor##_C##cn##R, \ "ippiFilter" #minmaxtype "GetBufferSize_" #flavor "_C" #cn "R", \ CV_PLUGINS1(CV_PLUGIN_IPPCV), ( int width, CvSize esize, int* bufsize )) \ \IPCVAPI_EX( CvStatus, icv##morphtype##_##flavor##_C##cn##R, \ "ippi" #morphtype "BorderReplicate_" #flavor "_C" #cn "R", \ CV_PLUGINS1(CV_PLUGIN_IPPCV), ( const void* src, int srcstep, \ void* dst, int dststep, CvSize roi, int bordertype, void* morphstate ))IPCV_MORPHOLOGY( Min, Erode, 8u, 1 )IPCV_MORPHOLOGY( Min, Erode, 8u, 3 )IPCV_MORPHOLOGY( Min, Erode, 8u, 4 )IPCV_MORPHOLOGY( Min, Erode, 32f, 1 )IPCV_MORPHOLOGY( Min, Erode, 32f, 3 )IPCV_MORPHOLOGY( Min, Erode, 32f, 4 )IPCV_MORPHOLOGY( Max, Dilate, 8u, 1 )IPCV_MORPHOLOGY( Max, Dilate, 8u, 3 )IPCV_MORPHOLOGY( Max, Dilate, 8u, 4 )IPCV_MORPHOLOGY( Max, Dilate, 32f, 1 )IPCV_MORPHOLOGY( Max, Dilate, 32f, 3 )IPCV_MORPHOLOGY( Max, Dilate, 32f, 4 )#undef IPCV_MORPHOLOGY#define IPCV_MORPHOLOGY_INIT_ALLOC( flavor, cn ) \IPCVAPI_EX( CvStatus, icvMorphInitAlloc_##flavor##_C##cn##R, \ "ippiMorphologyInitAlloc_" #flavor "_C" #cn "R", \ CV_PLUGINS1(CV_PLUGIN_IPPCV), ( int width, const uchar* element, \ CvSize esize, CvPoint anchor, void** morphstate ))IPCV_MORPHOLOGY_INIT_ALLOC( 8u, 1 )IPCV_MORPHOLOGY_INIT_ALLOC( 8u, 3 )IPCV_MORPHOLOGY_INIT_ALLOC( 8u, 4 )IPCV_MORPHOLOGY_INIT_ALLOC( 32f, 1 )IPCV_MORPHOLOGY_INIT_ALLOC( 32f, 3 )IPCV_MORPHOLOGY_INIT_ALLOC( 32f, 4 )#undef IPCV_MORPHOLOGY_INIT_ALLOCIPCVAPI_EX( CvStatus, icvMorphFree, "ippiMorphologyFree", CV_PLUGINS1(CV_PLUGIN_IPPCV), ( void* morphstate ))/****************************************************************************************\* Smoothing Filters *\****************************************************************************************/#define IPCV_FILTER_MEDIAN( flavor, cn ) \IPCVAPI_EX( CvStatus, icvFilterMedian_##flavor##_C##cn##R, \ "ippiFilterMedian_" #flavor "_C" #cn "R", CV_PLUGINS1(CV_PLUGIN_IPPI), \ ( const void* src, int srcstep, void* dst, int dststep, \ CvSize roi, CvSize ksize, CvPoint anchor ))IPCV_FILTER_MEDIAN( 8u, 1 )IPCV_FILTER_MEDIAN( 8u, 3 )IPCV_FILTER_MEDIAN( 8u, 4 )#define IPCV_FILTER_BOX( flavor, cn ) \IPCVAPI_EX( CvStatus, icvFilterBox_##flavor##_C##cn##R, \ "ippiFilterBox_" #flavor "_C" #cn "R", 0/*CV_PLUGINS1(CV_PLUGIN_IPPI)*/,\ ( const void* src, int srcstep, void* dst, int dststep, \ CvSize roi, CvSize ksize, CvPoint anchor ))IPCV_FILTER_BOX( 8u, 1 )IPCV_FILTER_BOX( 8u, 3 )IPCV_FILTER_BOX( 8u, 4 )IPCV_FILTER_BOX( 32f, 1 )IPCV_FILTER_BOX( 32f, 3 )IPCV_FILTER_BOX( 32f, 4 )#undef IPCV_FILTER_BOX/****************************************************************************************\* Derivative Filters *\****************************************************************************************/#define IPCV_FILTER_SOBEL_BORDER( suffix, flavor, srctype ) \IPCVAPI_EX( CvStatus, icvFilterSobel##suffix##GetBufSize_##flavor##_C1R, \ "ippiFilterSobel" #suffix "GetBufferSize_" #flavor "_C1R", \ CV_PLUGINS1(CV_PLUGIN_IPPCV), ( CvSize roi, int masksize, int* buffersize )) \IPCVAPI_EX( CvStatus, icvFilterSobel##suffix##Border_##flavor##_C1R, \ "ippiFilterSobel" #suffix "Border_" #flavor "_C1R", CV_PLUGINS1(CV_PLUGIN_IPPCV), \ ( const void* src, int srcstep, void* dst, int dststep, CvSize roi, int masksize, \ int bordertype, srctype bordervalue, void* buffer ))IPCV_FILTER_SOBEL_BORDER( NegVert, 8u16s, uchar )IPCV_FILTER_SOBEL_BORDER( Horiz, 8u16s, uchar )IPCV_FILTER_SOBEL_BORDER( VertSecond, 8u16s, uchar )IPCV_FILTER_SOBEL_BORDER( HorizSecond, 8u16s, uchar )IPCV_FILTER_SOBEL_BORDER( Cross, 8u16s, uchar )IPCV_FILTER_SOBEL_BORDER( NegVert, 32f, float )IPCV_FILTER_SOBEL_BORDER( Horiz, 32f, float )IPCV_FILTER_SOBEL_BORDER( VertSecond, 32f, float )IPCV_FILTER_SOBEL_BORDER( HorizSecond, 32f, float )IPCV_FILTER_SOBEL_BORDER( Cross, 32f, float )#undef IPCV_FILTER_SOBEL_BORDER#define IPCV_FILTER_SCHARR_BORDER( suffix, flavor, srctype ) \IPCVAPI_EX( CvStatus, icvFilterScharr##suffix##GetBufSize_##flavor##_C1R, \ "ippiFilterScharr" #suffix "GetBufferSize_" #flavor "_C1R", \ CV_PLUGINS1(CV_PLUGIN_IPPCV), ( CvSize roi, int* buffersize )) \IPCVAPI_EX( CvStatus, icvFilterScharr##suffix##Border_##flavor##_C1R, \ "ippiFilterScharr" #suffix "Border_" #flavor "_C1R", CV_PLUGINS1(CV_PLUGIN_IPPCV), \ ( const void* src, int srcstep, void* dst, int dststep, CvSize roi, \ int bordertype, srctype bordervalue, void* buffer ))IPCV_FILTER_SCHARR_BORDER( Vert, 8u16s, uchar )IPCV_FILTER_SCHARR_BORDER( Horiz, 8u16s, uchar )IPCV_FILTER_SCHARR_BORDER( Vert, 32f, float )IPCV_FILTER_SCHARR_BORDER( Horiz, 32f, float )#undef IPCV_FILTER_SCHARR_BORDER#define IPCV_FILTER_LAPLACIAN_BORDER( flavor, srctype ) \IPCVAPI_EX( CvStatus, icvFilterLaplacianGetBufSize_##flavor##_C1R, \ "ippiFilterLaplacianGetBufferSize_" #flavor "_C1R", \ CV_PLUGINS1(CV_PLUGIN_IPPCV), ( CvSize roi, int masksize, int* buffersize )) \IPCVAPI_EX( CvStatus, icvFilterLaplacianBorder_##flavor##_C1R, \ "ippiFilterLaplacianBorder_" #flavor "_C1R", CV_PLUGINS1(CV_PLUGIN_IPPCV), \ ( const void* src, int srcstep, void* dst, int dststep, CvSize roi, int masksize, \ int bordertype, srctype bordervalue, void* buffer ))IPCV_FILTER_LAPLACIAN_BORDER( 8u16s, uchar )IPCV_FILTER_LAPLACIAN_BORDER( 32f, float )#undef IPCV_FILTER_LAPLACIAN_BORDER/////////////////////////////////////////////////////////////////////////////////////////#define IPCV_FILTER_SOBEL( suffix, ipp_suffix, flavor ) \IPCVAPI_EX( CvStatus, icvFilterSobel##suffix##_##flavor##_C1R, \ "ippiFilterSobel" #ipp_suffix "_" #flavor "_C1R", CV_PLUGINS1(CV_PLUGIN_IPPI), \ ( const void* src, int srcstep, void* dst, int dststep, CvSize roi, int aperture ))IPCV_FILTER_SOBEL( Vert, Vert, 8u16s )IPCV_FILTER_SOBEL( Horiz, Horiz, 8u16s )IPCV_FILTER_SOBEL( VertSecond, VertSecond, 8u16s )IPCV_FILTER_SOBEL( HorizSecond, HorizSecond, 8u16s )IPCV_FILTER_SOBEL( Cross, Cross, 8u16s )IPCV_FILTER_SOBEL( Vert, VertMask, 32f )IPCV_FILTER_SOBEL( Horiz, HorizMask, 32f )IPCV_FILTER_SOBEL( VertSecond, VertSecond, 32f )IPCV_FILTER_SOBEL( HorizSecond, HorizSecond, 32f )IPCV_FILTER_SOBEL( Cross, Cross, 32f )#undef IPCV_FILTER_SOBEL#define IPCV_FILTER_SCHARR( suffix, ipp_suffix, flavor ) \IPCVAPI_EX( CvStatus, icvFilterScharr##suffix##_##flavor##_C1R, \ "ippiFilterScharr" #ipp_suffix "_" #flavor "_C1R", CV_PLUGINS1(CV_PLUGIN_IPPI), \ ( const void* src, int srcstep, void* dst, int dststep, CvSize roi ))IPCV_FILTER_SCHARR( Vert, Vert, 8u16s )IPCV_FILTER_SCHARR( Horiz, Horiz, 8u16s )IPCV_FILTER_SCHARR( Vert, Vert, 32f )IPCV_FILTER_SCHARR( Horiz, Horiz, 32f )#undef IPCV_FILTER_SCHARR/****************************************************************************************\* Generic Filters *\****************************************************************************************/#define IPCV_FILTER( suffix, ipp_suffix, cn, ksizetype, anchortype ) \IPCVAPI_EX( CvStatus, icvFilter##suffix##_C##cn##R, \ "ippiFilter" #ipp_suffix "_C" #cn "R", CV_PLUGINS1(CV_PLUGIN_IPPI), \ ( const void* src, int srcstep, void* dst, int dststep, CvSize size, \ const float* kernel, ksizetype ksize, anchortype anchor ))IPCV_FILTER( _8u, 32f_8u, 1, CvSize, CvPoint )IPCV_FILTER( _8u, 32f_8u, 3, CvSize, CvPoint )IPCV_FILTER( _8u, 32f_8u, 4, CvSize, CvPoint )IPCV_FILTER( _16s, 32f_16s, 1, CvSize, CvPoint )IPCV_FILTER( _16s, 32f_16s, 3, CvSize, CvPoint )IPCV_FILTER( _16s, 32f_16s, 4, CvSize, CvPoint )IPCV_FILTER( _32f, _32f, 1, CvSize, CvPoint )IPCV_FILTER( _32f, _32f, 3, CvSize, CvPoint )IPCV_FILTER( _32f, _32f, 4, CvSize, CvPoint )IPCV_FILTER( Column_8u, Column32f_8u, 1, int, int )IPCV_FILTER( Column_8u, Column32f_8u, 3, int, int )IPCV_FILTER( Column_8u, Column32f_8u, 4, int, int )IPCV_FILTER( Column_16s, Column32f_16s, 1, int, int )IPCV_FILTER( Column_16s, Column32f_16s, 3, int, int )IPCV_FILTER( Column_16s, Column32f_16s, 4, int, int )IPCV_FILTER( Column_32f, Column_32f, 1, int, int )IPCV_FILTER( Column_32f, Column_32f, 3, int, int )IPCV_FILTER( Column_32f, Column_32f, 4, int, int )
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -