OpenCV  4.9.0
Open Source Computer Vision
Modules | Classes | Functions

Modules

 Element-wise add and subtract
 
 Element-wise minimum or maximum
 
 Element-wise absolute difference
 
 Bitwise logical operations
 
 Element-wise compare
 
 Element-wise multiply
 
 Element-wise divide
 
 Element-wise reciprocial
 
 Element-wise weighted sum
 
 Channel split
 
 Channel merge
 
 Atan calculation
 
 Magnitude calculation
 
 Inverse square root calculation
 
 Square root calculation
 
 Natural logarithm calculation
 
 Exponent calculation
 
 LU matrix decomposition
 
 Cholesky matrix decomposition
 
 Singular value matrix decomposition
 
 QR matrix decomposition
 
 Matrix multiplication
 

Classes

struct  cvhalDFT
 Dummy structure storing DFT/DCT context. More...
 

Functions

int hal_ni_dct2D (cvhalDFT *context, const uchar *src_data, size_t src_step, uchar *dst_data, size_t dst_step)
 
int hal_ni_dctFree2D (cvhalDFT *context)
 
int hal_ni_dctInit2D (cvhalDFT **context, int width, int height, int depth, int flags)
 
int hal_ni_dft1D (cvhalDFT *context, const uchar *src, uchar *dst)
 
int hal_ni_dft2D (cvhalDFT *context, const uchar *src_data, size_t src_step, uchar *dst_data, size_t dst_step)
 
int hal_ni_dftFree1D (cvhalDFT *context)
 
int hal_ni_dftFree2D (cvhalDFT *context)
 
int hal_ni_dftInit1D (cvhalDFT **context, int len, int count, int depth, int flags, bool *needBuffer)
 
int hal_ni_dftInit2D (cvhalDFT **context, int width, int height, int depth, int src_channels, int dst_channels, int flags, int nonzero_rows)
 
int hal_ni_flip (int src_type, const uchar *src_data, size_t src_step, int src_width, int src_height, uchar *dst_data, size_t dst_step, int flip_mode)
 hal_flip More...
 
int hal_ni_minMaxIdx (const uchar *src_data, size_t src_step, int width, int height, int depth, double *minVal, double *maxVal, int *minIdx, int *maxIdx, uchar *mask)
 Finds the global minimum and maximum in an array. More...
 
int hal_ni_rotate90 (int src_type, const uchar *src_data, size_t src_step, int src_width, int src_height, uchar *dst_data, size_t dst_step, int angle)
 rotate90 More...
 

Return codes

#define CV_HAL_ERROR_OK   0
 
#define CV_HAL_ERROR_NOT_IMPLEMENTED   1
 
#define CV_HAL_ERROR_UNKNOWN   -1
 

Data types

primitive types

  • schar - signed 1 byte integer
  • uchar - unsigned 1 byte integer
  • short - signed 2 byte integer
  • ushort - unsigned 2 byte integer
  • int - signed 4 byte integer
  • uint - unsigned 4 byte integer
  • int64 - signed 8 byte integer
  • uint64 - unsigned 8 byte integer
typedef uint32_t uint
 
typedef signed char schar
 
typedef unsigned char uchar
 
typedef unsigned short ushort
 
typedef int64_t int64
 
typedef uint64_t uint64
 
#define CV_BIG_INT(n)   n##LL
 
#define CV_BIG_UINT(n)   n##ULL
 
#define CV_USRTYPE1   (void)"CV_USRTYPE1 support has been dropped in OpenCV 4.0"
 
#define CV_CN_MAX   512
 
#define CV_CN_SHIFT   3
 
#define CV_DEPTH_MAX   (1 << CV_CN_SHIFT)
 
#define CV_8U   0
 
#define CV_8S   1
 
#define CV_16U   2
 
#define CV_16S   3
 
#define CV_32S   4
 
#define CV_32F   5
 
#define CV_64F   6
 
#define CV_16F   7
 
#define CV_MAT_DEPTH_MASK   (CV_DEPTH_MAX - 1)
 
#define CV_MAT_DEPTH(flags)   ((flags) & CV_MAT_DEPTH_MASK)
 
#define CV_MAKETYPE(depth, cn)   (CV_MAT_DEPTH(depth) + (((cn)-1) << CV_CN_SHIFT))
 
#define CV_MAKE_TYPE   CV_MAKETYPE
 
#define CV_8UC1   CV_MAKETYPE(CV_8U,1)
 
#define CV_8UC2   CV_MAKETYPE(CV_8U,2)
 
#define CV_8UC3   CV_MAKETYPE(CV_8U,3)
 
#define CV_8UC4   CV_MAKETYPE(CV_8U,4)
 
#define CV_8UC(n)   CV_MAKETYPE(CV_8U,(n))
 
#define CV_8SC1   CV_MAKETYPE(CV_8S,1)
 
#define CV_8SC2   CV_MAKETYPE(CV_8S,2)
 
#define CV_8SC3   CV_MAKETYPE(CV_8S,3)
 
#define CV_8SC4   CV_MAKETYPE(CV_8S,4)
 
#define CV_8SC(n)   CV_MAKETYPE(CV_8S,(n))
 
#define CV_16UC1   CV_MAKETYPE(CV_16U,1)
 
#define CV_16UC2   CV_MAKETYPE(CV_16U,2)
 
#define CV_16UC3   CV_MAKETYPE(CV_16U,3)
 
#define CV_16UC4   CV_MAKETYPE(CV_16U,4)
 
#define CV_16UC(n)   CV_MAKETYPE(CV_16U,(n))
 
#define CV_16SC1   CV_MAKETYPE(CV_16S,1)
 
#define CV_16SC2   CV_MAKETYPE(CV_16S,2)
 
#define CV_16SC3   CV_MAKETYPE(CV_16S,3)
 
#define CV_16SC4   CV_MAKETYPE(CV_16S,4)
 
#define CV_16SC(n)   CV_MAKETYPE(CV_16S,(n))
 
#define CV_32SC1   CV_MAKETYPE(CV_32S,1)
 
#define CV_32SC2   CV_MAKETYPE(CV_32S,2)
 
#define CV_32SC3   CV_MAKETYPE(CV_32S,3)
 
#define CV_32SC4   CV_MAKETYPE(CV_32S,4)
 
#define CV_32SC(n)   CV_MAKETYPE(CV_32S,(n))
 
#define CV_32FC1   CV_MAKETYPE(CV_32F,1)
 
#define CV_32FC2   CV_MAKETYPE(CV_32F,2)
 
#define CV_32FC3   CV_MAKETYPE(CV_32F,3)
 
#define CV_32FC4   CV_MAKETYPE(CV_32F,4)
 
#define CV_32FC(n)   CV_MAKETYPE(CV_32F,(n))
 
#define CV_64FC1   CV_MAKETYPE(CV_64F,1)
 
#define CV_64FC2   CV_MAKETYPE(CV_64F,2)
 
#define CV_64FC3   CV_MAKETYPE(CV_64F,3)
 
#define CV_64FC4   CV_MAKETYPE(CV_64F,4)
 
#define CV_64FC(n)   CV_MAKETYPE(CV_64F,(n))
 
#define CV_16FC1   CV_MAKETYPE(CV_16F,1)
 
#define CV_16FC2   CV_MAKETYPE(CV_16F,2)
 
#define CV_16FC3   CV_MAKETYPE(CV_16F,3)
 
#define CV_16FC4   CV_MAKETYPE(CV_16F,4)
 
#define CV_16FC(n)   CV_MAKETYPE(CV_16F,(n))
 

Comparison operation

See also
cv::CmpTypes
#define CV_HAL_CMP_EQ   0
 
#define CV_HAL_CMP_GT   1
 
#define CV_HAL_CMP_GE   2
 
#define CV_HAL_CMP_LT   3
 
#define CV_HAL_CMP_LE   4
 
#define CV_HAL_CMP_NE   5
 

Border processing modes

See also
cv::BorderTypes
#define CV_HAL_BORDER_CONSTANT   0
 
#define CV_HAL_BORDER_REPLICATE   1
 
#define CV_HAL_BORDER_REFLECT   2
 
#define CV_HAL_BORDER_WRAP   3
 
#define CV_HAL_BORDER_REFLECT_101   4
 
#define CV_HAL_BORDER_TRANSPARENT   5
 
#define CV_HAL_BORDER_ISOLATED   16
 

DFT flags

#define CV_HAL_DFT_INVERSE   1
 
#define CV_HAL_DFT_SCALE   2
 
#define CV_HAL_DFT_ROWS   4
 
#define CV_HAL_DFT_COMPLEX_OUTPUT   16
 
#define CV_HAL_DFT_REAL_OUTPUT   32
 
#define CV_HAL_DFT_TWO_STAGE   64
 
#define CV_HAL_DFT_STAGE_COLS   128
 
#define CV_HAL_DFT_IS_CONTINUOUS   512
 
#define CV_HAL_DFT_IS_INPLACE   1024
 

SVD flags

#define CV_HAL_SVD_NO_UV   1
 
#define CV_HAL_SVD_SHORT_UV   2
 
#define CV_HAL_SVD_MODIFY_A   4
 
#define CV_HAL_SVD_FULL_UV   8
 

Gemm flags

#define CV_HAL_GEMM_1_T   1
 
#define CV_HAL_GEMM_2_T   2
 
#define CV_HAL_GEMM_3_T   4
 

Detailed Description

Note
Define your functions to override default implementations:
#undef hal_add8u
#define hal_add8u my_add8u

Macro Definition Documentation

◆ CV_16F

#define CV_16F   7

◆ CV_16FC

#define CV_16FC (   n)    CV_MAKETYPE(CV_16F,(n))

◆ CV_16FC1

#define CV_16FC1   CV_MAKETYPE(CV_16F,1)

◆ CV_16FC2

#define CV_16FC2   CV_MAKETYPE(CV_16F,2)

◆ CV_16FC3

#define CV_16FC3   CV_MAKETYPE(CV_16F,3)

◆ CV_16FC4

#define CV_16FC4   CV_MAKETYPE(CV_16F,4)

◆ CV_16S

#define CV_16S   3

◆ CV_16SC

#define CV_16SC (   n)    CV_MAKETYPE(CV_16S,(n))

◆ CV_16SC1

#define CV_16SC1   CV_MAKETYPE(CV_16S,1)

◆ CV_16SC2

#define CV_16SC2   CV_MAKETYPE(CV_16S,2)

◆ CV_16SC3

#define CV_16SC3   CV_MAKETYPE(CV_16S,3)

◆ CV_16SC4

#define CV_16SC4   CV_MAKETYPE(CV_16S,4)

◆ CV_16U

#define CV_16U   2

◆ CV_16UC

#define CV_16UC (   n)    CV_MAKETYPE(CV_16U,(n))

◆ CV_16UC1

#define CV_16UC1   CV_MAKETYPE(CV_16U,1)

◆ CV_16UC2

#define CV_16UC2   CV_MAKETYPE(CV_16U,2)

◆ CV_16UC3

#define CV_16UC3   CV_MAKETYPE(CV_16U,3)

◆ CV_16UC4

#define CV_16UC4   CV_MAKETYPE(CV_16U,4)

◆ CV_32F

#define CV_32F   5

◆ CV_32FC

#define CV_32FC (   n)    CV_MAKETYPE(CV_32F,(n))

◆ CV_32FC1

#define CV_32FC1   CV_MAKETYPE(CV_32F,1)

◆ CV_32FC2

#define CV_32FC2   CV_MAKETYPE(CV_32F,2)

◆ CV_32FC3

#define CV_32FC3   CV_MAKETYPE(CV_32F,3)

◆ CV_32FC4

#define CV_32FC4   CV_MAKETYPE(CV_32F,4)

◆ CV_32S

#define CV_32S   4

◆ CV_32SC

#define CV_32SC (   n)    CV_MAKETYPE(CV_32S,(n))

◆ CV_32SC1

#define CV_32SC1   CV_MAKETYPE(CV_32S,1)

◆ CV_32SC2

#define CV_32SC2   CV_MAKETYPE(CV_32S,2)

◆ CV_32SC3

#define CV_32SC3   CV_MAKETYPE(CV_32S,3)

◆ CV_32SC4

#define CV_32SC4   CV_MAKETYPE(CV_32S,4)

◆ CV_64F

#define CV_64F   6

◆ CV_64FC

#define CV_64FC (   n)    CV_MAKETYPE(CV_64F,(n))

◆ CV_64FC1

#define CV_64FC1   CV_MAKETYPE(CV_64F,1)

◆ CV_64FC2

#define CV_64FC2   CV_MAKETYPE(CV_64F,2)

◆ CV_64FC3

#define CV_64FC3   CV_MAKETYPE(CV_64F,3)

◆ CV_64FC4

#define CV_64FC4   CV_MAKETYPE(CV_64F,4)

◆ CV_8S

#define CV_8S   1

◆ CV_8SC

#define CV_8SC (   n)    CV_MAKETYPE(CV_8S,(n))

◆ CV_8SC1

#define CV_8SC1   CV_MAKETYPE(CV_8S,1)

◆ CV_8SC2

#define CV_8SC2   CV_MAKETYPE(CV_8S,2)

◆ CV_8SC3

#define CV_8SC3   CV_MAKETYPE(CV_8S,3)

◆ CV_8SC4

#define CV_8SC4   CV_MAKETYPE(CV_8S,4)

◆ CV_8U

#define CV_8U   0

◆ CV_8UC

#define CV_8UC (   n)    CV_MAKETYPE(CV_8U,(n))

◆ CV_8UC1

#define CV_8UC1   CV_MAKETYPE(CV_8U,1)

◆ CV_8UC2

#define CV_8UC2   CV_MAKETYPE(CV_8U,2)

◆ CV_8UC3

#define CV_8UC3   CV_MAKETYPE(CV_8U,3)

◆ CV_8UC4

#define CV_8UC4   CV_MAKETYPE(CV_8U,4)

◆ CV_BIG_INT

#define CV_BIG_INT (   n)    n##LL

◆ CV_BIG_UINT

#define CV_BIG_UINT (   n)    n##ULL

◆ CV_CN_MAX

#define CV_CN_MAX   512

◆ CV_CN_SHIFT

#define CV_CN_SHIFT   3

◆ CV_DEPTH_MAX

#define CV_DEPTH_MAX   (1 << CV_CN_SHIFT)

◆ CV_HAL_BORDER_CONSTANT

#define CV_HAL_BORDER_CONSTANT   0

◆ CV_HAL_BORDER_ISOLATED

#define CV_HAL_BORDER_ISOLATED   16

◆ CV_HAL_BORDER_REFLECT

#define CV_HAL_BORDER_REFLECT   2

◆ CV_HAL_BORDER_REFLECT_101

#define CV_HAL_BORDER_REFLECT_101   4

◆ CV_HAL_BORDER_REPLICATE

#define CV_HAL_BORDER_REPLICATE   1

◆ CV_HAL_BORDER_TRANSPARENT

#define CV_HAL_BORDER_TRANSPARENT   5

◆ CV_HAL_BORDER_WRAP

#define CV_HAL_BORDER_WRAP   3

◆ CV_HAL_CMP_EQ

#define CV_HAL_CMP_EQ   0

◆ CV_HAL_CMP_GE

#define CV_HAL_CMP_GE   2

◆ CV_HAL_CMP_GT

#define CV_HAL_CMP_GT   1

◆ CV_HAL_CMP_LE

#define CV_HAL_CMP_LE   4

◆ CV_HAL_CMP_LT

#define CV_HAL_CMP_LT   3

◆ CV_HAL_CMP_NE

#define CV_HAL_CMP_NE   5

◆ CV_HAL_DFT_COMPLEX_OUTPUT

#define CV_HAL_DFT_COMPLEX_OUTPUT   16

◆ CV_HAL_DFT_INVERSE

#define CV_HAL_DFT_INVERSE   1

◆ CV_HAL_DFT_IS_CONTINUOUS

#define CV_HAL_DFT_IS_CONTINUOUS   512

◆ CV_HAL_DFT_IS_INPLACE

#define CV_HAL_DFT_IS_INPLACE   1024

◆ CV_HAL_DFT_REAL_OUTPUT

#define CV_HAL_DFT_REAL_OUTPUT   32

◆ CV_HAL_DFT_ROWS

#define CV_HAL_DFT_ROWS   4

◆ CV_HAL_DFT_SCALE

#define CV_HAL_DFT_SCALE   2

◆ CV_HAL_DFT_STAGE_COLS

#define CV_HAL_DFT_STAGE_COLS   128

◆ CV_HAL_DFT_TWO_STAGE

#define CV_HAL_DFT_TWO_STAGE   64

◆ CV_HAL_ERROR_NOT_IMPLEMENTED

#define CV_HAL_ERROR_NOT_IMPLEMENTED   1

◆ CV_HAL_ERROR_OK

#define CV_HAL_ERROR_OK   0

◆ CV_HAL_ERROR_UNKNOWN

#define CV_HAL_ERROR_UNKNOWN   -1

◆ CV_HAL_GEMM_1_T

#define CV_HAL_GEMM_1_T   1

◆ CV_HAL_GEMM_2_T

#define CV_HAL_GEMM_2_T   2

◆ CV_HAL_GEMM_3_T

#define CV_HAL_GEMM_3_T   4

◆ CV_HAL_SVD_FULL_UV

#define CV_HAL_SVD_FULL_UV   8

◆ CV_HAL_SVD_MODIFY_A

#define CV_HAL_SVD_MODIFY_A   4

◆ CV_HAL_SVD_NO_UV

#define CV_HAL_SVD_NO_UV   1

◆ CV_HAL_SVD_SHORT_UV

#define CV_HAL_SVD_SHORT_UV   2

◆ CV_MAKE_TYPE

#define CV_MAKE_TYPE   CV_MAKETYPE

◆ CV_MAKETYPE

#define CV_MAKETYPE (   depth,
  cn 
)    (CV_MAT_DEPTH(depth) + (((cn)-1) << CV_CN_SHIFT))

◆ CV_MAT_DEPTH

#define CV_MAT_DEPTH (   flags)    ((flags) & CV_MAT_DEPTH_MASK)

◆ CV_MAT_DEPTH_MASK

#define CV_MAT_DEPTH_MASK   (CV_DEPTH_MAX - 1)

◆ CV_USRTYPE1

#define CV_USRTYPE1   (void)"CV_USRTYPE1 support has been dropped in OpenCV 4.0"

Typedef Documentation

◆ int64

typedef int64_t int64

◆ schar

typedef signed char schar

◆ uchar

typedef unsigned char uchar

◆ uint

typedef uint32_t uint

◆ uint64

typedef uint64_t uint64

◆ ushort

typedef unsigned short ushort

Function Documentation

◆ hal_ni_dct2D()

int hal_ni_dct2D ( cvhalDFT context,
const uchar src_data,
size_t  src_step,
uchar dst_data,
size_t  dst_step 
)
inline

#include <core/src/hal_replacement.hpp>

Parameters
contextpointer to context storing all necessary data
src_datasource image data
src_stepsource image step
dst_datadestination image data
dst_stepdestination image step

◆ hal_ni_dctFree2D()

int hal_ni_dctFree2D ( cvhalDFT context)
inline

#include <core/src/hal_replacement.hpp>

Parameters
contextpointer to context storing all necessary data

◆ hal_ni_dctInit2D()

int hal_ni_dctInit2D ( cvhalDFT **  context,
int  width,
int  height,
int  depth,
int  flags 
)
inline

#include <core/src/hal_replacement.hpp>

Parameters
contextdouble pointer to context storing all necessary data
widthimage width
heightimage height
depthimage type (CV_32F or CV_64F)
flagsalgorithm options (combination of CV_HAL_DFT_INVERSE, ...)

◆ hal_ni_dft1D()

int hal_ni_dft1D ( cvhalDFT context,
const uchar src,
uchar dst 
)
inline

#include <core/src/hal_replacement.hpp>

Parameters
contextpointer to context storing all necessary data
srcsource data
dstdestination data

◆ hal_ni_dft2D()

int hal_ni_dft2D ( cvhalDFT context,
const uchar src_data,
size_t  src_step,
uchar dst_data,
size_t  dst_step 
)
inline

#include <core/src/hal_replacement.hpp>

Parameters
contextpointer to context storing all necessary data
src_datasource image data
src_stepsource image step
dst_datadestination image data
dst_stepdestination image step

◆ hal_ni_dftFree1D()

int hal_ni_dftFree1D ( cvhalDFT context)
inline

#include <core/src/hal_replacement.hpp>

Parameters
contextpointer to context storing all necessary data

◆ hal_ni_dftFree2D()

int hal_ni_dftFree2D ( cvhalDFT context)
inline

#include <core/src/hal_replacement.hpp>

Parameters
contextpointer to context storing all necessary data

◆ hal_ni_dftInit1D()

int hal_ni_dftInit1D ( cvhalDFT **  context,
int  len,
int  count,
int  depth,
int  flags,
bool *  needBuffer 
)
inline

#include <core/src/hal_replacement.hpp>

Parameters
contextdouble pointer to context storing all necessary data
lentransformed array length
countestimated transformation count
deptharray type (CV_32F or CV_64F)
flagsalgorithm options (combination of CV_HAL_DFT_INVERSE, CV_HAL_DFT_SCALE, ...)
needBufferpointer to boolean variable, if valid pointer provided, then variable value should be set to true to signal that additional memory buffer is needed for operations

◆ hal_ni_dftInit2D()

int hal_ni_dftInit2D ( cvhalDFT **  context,
int  width,
int  height,
int  depth,
int  src_channels,
int  dst_channels,
int  flags,
int  nonzero_rows 
)
inline

#include <core/src/hal_replacement.hpp>

Parameters
contextdouble pointer to context storing all necessary data
widthimage width
heightimage height
depthimage type (CV_32F or CV_64F)
src_channelsnumber of channels in input image
dst_channelsnumber of channels in output image
flagsalgorithm options (combination of CV_HAL_DFT_INVERSE, ...)
nonzero_rowsnumber of nonzero rows in image, can be used for optimization

◆ hal_ni_flip()

int hal_ni_flip ( int  src_type,
const uchar src_data,
size_t  src_step,
int  src_width,
int  src_height,
uchar dst_data,
size_t  dst_step,
int  flip_mode 
)
inline

#include <core/src/hal_replacement.hpp>

hal_flip

Parameters
src_typesource and destination image type
src_datasource image data
src_stepsource image step
src_widthsource and destination image width
src_heightsource and destination image height
dst_datadestination image data
dst_stepdestination image step
flip_mode0 flips around x-axis, positive around y-axis, negative both

◆ hal_ni_minMaxIdx()

int hal_ni_minMaxIdx ( const uchar src_data,
size_t  src_step,
int  width,
int  height,
int  depth,
double *  minVal,
double *  maxVal,
int *  minIdx,
int *  maxIdx,
uchar mask 
)
inline

#include <core/src/hal_replacement.hpp>

Finds the global minimum and maximum in an array.

Parameters
src_dataSource image
src_stepSource image
widthSource image dimensions
heightSource image dimensions
depthDepth of source image
minValPointer to the returned global minimum and maximum in an array.
maxValPointer to the returned global minimum and maximum in an array.
minIdxPointer to the returned minimum and maximum location.
maxIdxPointer to the returned minimum and maximum location.
maskSpecified array region.

◆ hal_ni_rotate90()

int hal_ni_rotate90 ( int  src_type,
const uchar src_data,
size_t  src_step,
int  src_width,
int  src_height,
uchar dst_data,
size_t  dst_step,
int  angle 
)
inline

#include <core/src/hal_replacement.hpp>

rotate90

Parameters
src_typesource and destination image type
src_datasource image data
src_stepsource image step
src_widthsource image width If angle has value [180] it is also destination image width If angle has values [90, 270] it is also destination image height
src_heightsource and destination image height (destination image width for angles [90, 270]) If angle has value [180] it is also destination image height If angle has values [90, 270] it is also destination image width
dst_datadestination image data
dst_stepdestination image step
angleclockwise angle for rotation in degrees from set [90, 180, 270]