OpenCV 4.13.0
开源计算机视觉库 (Open Source Computer Vision)
正在加载...
正在搜索...
未找到匹配项

主题

 逐元素加减
 
 逐元素最小值或最大值
 
 逐元素绝对差值
 
 按位逻辑运算
 
 查找表
 
 16位索引查找表
 
 汉明距离
 
 绝对范数
 数组的通用范数。
 
 数组转换
 将数组转换为指定的另一种类型。
 
 逐元素比较
 
 逐元素相乘
 
 逐元素相除
 
 逐元素取倒数
 
 逐元素加权和
 
 通道分离
 
 通道合并
 
 反正切计算
 
 幅值计算
 
 平方根倒数计算
 
 平方根计算
 
 自然对数计算
 
 指数计算
 
 LU 矩阵分解
 
 Cholesky 矩阵分解
 
 奇异值矩阵分解
 
 QR 矩阵分解
 
 矩阵乘法
 

详细说明

注意
定义您的函数以覆盖默认实现
#undef hal_add8u
#define hal_add8u my_add8u

结构体  cvhalDFT
 用于存储 DFT/DCT 上下文的哑结构。更多...
 

函数

int hal_ni_copyToMasked (const uchar *src_data, size_t src_step, uchar *dst_data, size_t dst_step, int width, int height, int type, const uchar *mask_data, size_t mask_step, int mask_type)
 带掩码的 copyTo
 
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_dft (const uchar *src, uchar *dst, int depth, int nf, int *factors, double scale, int *itab, void *wave, int tab_size, int n, bool isInverse, bool noPermute)
 
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_dotProduct (const uchar *a_data, size_t a_step, const uchar *b_data, size_t b_step, int width, int height, int type, double *dot_val)
 计算两个向量(以二维图像形式表示)的点积
 
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
 
int hal_ni_inRange32f (const uchar *src_data, size_t src_step, uchar *dst_data, size_t dst_step, int dst_depth, int width, int height, int cn, double lower_bound, double upper_bound)
 inRange (lower_bound <= src_value) && (src_value <= upper_bound) ? 255 : 0
 
int hal_ni_inRange8u (const uchar *src_data, size_t src_step, uchar *dst_data, size_t dst_step, int dst_depth, int width, int height, int cn, uchar lower_bound, uchar upper_bound)
 inRange (lower_bound <= src_value) && (src_value <= upper_bound) ? 255 : 0
 
int hal_ni_meanStdDev (const uchar *src_data, size_t src_step, int width, int height, int src_type, double *mean_val, double *stddev_val, uchar *mask, size_t mask_step)
 独立计算每个通道数组元素的平均值和标准差
 
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)
 查找数组中的全局最小值和最大值。
 
int hal_ni_minMaxIdxMaskStep (const uchar *src_data, size_t src_step, int width, int height, int depth, double *minVal, double *maxVal, int *minIdx, int *maxIdx, uchar *mask, size_t mask_step)
 查找数组中的全局最小值和最大值。
 
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 (旋转90度)
 
int hal_ni_sum (const uchar *src_data, size_t src_step, int src_type, int width, int height, double *result)
 
int hal_ni_transpose2d (const uchar *src_data, size_t src_step, uchar *dst_data, size_t dst_step, int src_width, int src_height, int element_size)
 二维转置。
 

数据类型

原始类型

  • schar - 有符号 1 字节整数
  • uchar - 无符号 1 字节整数
  • short - 有符号 2 字节整数
  • ushort - 无符号 2 字节整数
  • int - 有符号 4 字节整数
  • uint - 无符号 4 字节整数
  • int64 - 有符号 8 字节整数
  • uint64 - 无符号 8 字节整数
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)
 
#define CV_BIG_UINT(n)
 
#define CV_USRTYPE1   (void)"OpenCV 4.0 已停止支持 CV_USRTYPE1"
 
#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)
 
#define CV_MAKETYPE(depth, cn)
 
#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)
 
#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)
 
#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)
 
#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)
 
#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)
 
#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)
 
#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)
 
#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)
 

返回代码

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

比较操作

另请参阅
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
 

边界处理模式

另请参阅
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 (101反射边界)   4
 
#define CV_HAL_BORDER_TRANSPARENT (透明边界)   5
 
#define CV_HAL_BORDER_ISOLATED (隔离边界)   16
 

DFT 标志

#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 标志

#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 标志

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

宏定义文档

◆ CV_16F

#define CV_16F   7

◆ CV_16FC

#define CV_16FC ( n)

#include <opencv2/core/hal/interface.h>

#define CV_16F
定义 interface.h:80
#define CV_MAKETYPE(depth, cn)
定义于 interface.h:85

◆ 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

◆ CV_16SC

#define CV_16SC ( n)

#include <opencv2/core/hal/interface.h>

#define CV_16S
定义 interface.h:76

◆ 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)

#include <opencv2/core/hal/interface.h>

#define CV_16U
定义 interface.h:75

◆ 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

◆ CV_32FC

#define CV_32FC ( n)

#include <opencv2/core/hal/interface.h>

#define CV_32F
定义位于 interface.h:78

◆ CV_32FC1

◆ 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

◆ CV_32SC

#define CV_32SC ( n)

#include <opencv2/core/hal/interface.h>

#define CV_32S
定义位于 interface.h:77

◆ 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

◆ CV_64FC

#define CV_64FC ( n)

#include <opencv2/core/hal/interface.h>

#define CV_64F
定义位于 interface.h:79

◆ 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)

#include <opencv2/core/hal/interface.h>

#define CV_8S
定义 interface.h:74

◆ 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

◆ CV_8UC

#define CV_8UC ( n)

#include <opencv2/core/hal/interface.h>

#define CV_8U
定义于 interface.h:73

◆ CV_8UC1

◆ CV_8UC2

#define CV_8UC2   CV_MAKETYPE(CV_8U,2)

◆ CV_8UC3

◆ CV_8UC4

◆ CV_BIG_INT

#define CV_BIG_INT ( n)

#include <opencv2/core/hal/interface.h>

n##LL

◆ CV_BIG_UINT

#define CV_BIG_UINT ( n)

#include <opencv2/core/hal/interface.h>

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 )

#include <opencv2/core/hal/interface.h>

(CV_MAT_DEPTH(depth) + (((cn)-1) << CV_CN_SHIFT))
#define CV_MAT_DEPTH(flags)
定义 interface.h:83
#define CV_CN_SHIFT
定义 interface.h:70

◆ CV_MAT_DEPTH

#define CV_MAT_DEPTH ( flags (标志))

#include <opencv2/core/hal/interface.h>

((flags) & CV_MAT_DEPTH_MASK)
#define CV_MAT_DEPTH_MASK
定义 interface.h:82

◆ CV_MAT_DEPTH_MASK

#define CV_MAT_DEPTH_MASK   (CV_DEPTH_MAX - 1)

◆ CV_USRTYPE1

#define CV_USRTYPE1   (void)"OpenCV 4.0 已停止支持 CV_USRTYPE1"

类型定义文档 (Typedef Documentation)

◆ int64

typedef int64_t int64

◆ schar

typedef signed char schar

◆ uchar

◆ uint

typedef uint32_t uint

◆ uint64

typedef uint64_t uint64

◆ ushort

typedef unsigned short ushort

函数文档 (Function Documentation)

◆ hal_ni_copyToMasked()

int hal_ni_copyToMasked ( const uchar * src_data,
size_t src_step,
uchar * dst_data,
size_t dst_step,
int width,
int height,
int type,
const uchar * mask_data,
size_t mask_step,
int mask_type )
内联

#include <core/src/hal_replacement.hpp>

带掩码的 copyTo

参数
src_data,src_step源图像
dst_data,dst_step目标图像
width,height源、目标和掩码的图像维度
type源图像和目标图像的类型,例如 CV_8UC1 或 CV_32FC3
mask_data,mask_step,mask_type掩码

◆ hal_ni_dct2D()

int hal_ni_dct2D ( cvhalDFT * context,
const uchar * src_data,
size_t src_step,
uchar * dst_data,
size_t dst_step )
内联

#include <core/src/hal_replacement.hpp>

参数
context指向存储所有必要数据的上下文的指针
src_data源图像数据
src_step源图像步长
dst_data目标图像数据
dst_step目标图像步长

◆ hal_ni_dctFree2D()

int hal_ni_dctFree2D ( cvhalDFT * context)
内联

#include <core/src/hal_replacement.hpp>

参数
context指向存储所有必要数据的上下文的指针

◆ hal_ni_dctInit2D()

int hal_ni_dctInit2D ( cvhalDFT ** context,
int width,
int height,
int depth,
int flags (标志) )
内联

#include <core/src/hal_replacement.hpp>

参数
context指向存储所有必要数据的上下文的二级指针
width图像宽度
height图像高度
depth图像类型 (CV_32F 或 CV_64F)
flags (标志)算法选项 (CV_HAL_DFT_INVERSE 等标志的组合)

◆ hal_ni_dft()

int hal_ni_dft ( const uchar * src,
uchar * dst,
int depth,
int nf,
int * factors (因子),
double scale,
int * itab,
void * wave,
int tab_size,
int n,
bool isInverse (是否逆变换),
bool noPermute (不置换) )
内联

#include <core/src/hal_replacement.hpp>

参数
src源数据
dst目标数据
depth源深度
nfOcvDftOptions 数据
factors (因子)OcvDftOptions 数据
scaleOcvDftOptions 数据
itabOcvDftOptions 数据
waveOcvDftOptions 数据
tab_sizeOcvDftOptions 数据
nOcvDftOptions 数据
isInverse (是否逆变换)OcvDftOptions 数据
noPermute (不置换)OcvDftOptions 数据

◆ hal_ni_dft1D()

int hal_ni_dft1D ( cvhalDFT * context,
const uchar * src,
uchar * dst )
内联

#include <core/src/hal_replacement.hpp>

参数
context指向存储所有必要数据的上下文的指针
src源数据
dst目标数据

◆ hal_ni_dft2D()

int hal_ni_dft2D ( cvhalDFT * context,
const uchar * src_data,
size_t src_step,
uchar * dst_data,
size_t dst_step )
内联

#include <core/src/hal_replacement.hpp>

参数
context指向存储所有必要数据的上下文的指针
src_data源图像数据
src_step源图像步长
dst_data目标图像数据
dst_step目标图像步长

◆ hal_ni_dftFree1D()

int hal_ni_dftFree1D ( cvhalDFT * context)
内联

#include <core/src/hal_replacement.hpp>

参数
context指向存储所有必要数据的上下文的指针

◆ hal_ni_dftFree2D()

int hal_ni_dftFree2D ( cvhalDFT * context)
内联

#include <core/src/hal_replacement.hpp>

参数
context指向存储所有必要数据的上下文的指针

◆ hal_ni_dftInit1D()

int hal_ni_dftInit1D ( cvhalDFT ** context,
int len,
int count,
int depth,
int flags (标志),
bool * needBuffer (是否需要缓冲区) )
内联

#include <core/src/hal_replacement.hpp>

参数
context指向存储所有必要数据的上下文的二级指针
len变换后的数组长度
count估计变换次数
depth数组类型 (CV_32F 或 CV_64F)
flags (标志)算法选项 (CV_HAL_DFT_INVERSE, CV_HAL_DFT_SCALE 等标志的组合)
needBuffer (是否需要缓冲区)指向布尔变量的指针,如果提供了有效指针,则变量值应设为 true,表示操作需要额外的内存缓冲区

◆ 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 (非零行数) )
内联

#include <core/src/hal_replacement.hpp>

参数
context指向存储所有必要数据的上下文的二级指针
width图像宽度
height图像高度
depth图像类型 (CV_32F 或 CV_64F)
src_channels (源通道数)输入图像中的通道数
dst_channels (目标通道数)输出图像中的通道数
flags (标志)算法选项 (CV_HAL_DFT_INVERSE 等标志的组合)
nonzero_rows (非零行数)图像中的非零行数,可用于优化

◆ hal_ni_dotProduct()

int hal_ni_dotProduct ( const uchar * a_data,
size_t a_step,
const uchar * b_data,
size_t b_step,
int width,
int height,
int type,
double * dot_val )
内联

#include <core/src/hal_replacement.hpp>

计算两个向量(以二维图像形式表示)的点积

参数
a_data指向第一个和第二个图像数据的指针
a_step第一个和第二个图像的步长
b_data指向第一个和第二个图像数据的指针
b_step第一个和第二个图像的步长
width两个图像的宽度
height两个图像的高度
type两个图像的数据类型,例如 CV_8U 或 CV_32F
dot_val指向结果点积值的指针
返回
int

◆ 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 (翻转模式) )
内联

#include <core/src/hal_replacement.hpp>

hal_flip

参数
src_type源和目标图像类型
src_data源图像数据
src_step源图像步长
src_width源和目标图像宽度
src_height源和目标图像高度
dst_data目标图像数据
dst_step目标图像步长
flip_mode (翻转模式)0 表示绕 x 轴翻转,正数表示绕 y 轴翻转,负数表示绕两个轴翻转

◆ hal_ni_inRange32f()

int hal_ni_inRange32f ( const uchar * src_data,
size_t src_step,
uchar * dst_data,
size_t dst_step,
int dst_depth,
int width,
int height,
int cn,
double lower_bound (下界),
double upper_bound (上界) )
内联

#include <core/src/hal_replacement.hpp>

inRange (lower_bound <= src_value) && (src_value <= upper_bound) ? 255 : 0

参数
src_data源图像数据
src_step源图像步长
dst_data目标图像数据
dst_step目标图像步长
dst_depth目标图像深度
width图像宽度
height图像高度
cn通道数 (number of channels)
lower_bound (下界)范围下界
upper_bound (上界)范围上界

◆ hal_ni_inRange8u()

int hal_ni_inRange8u ( const uchar * src_data,
size_t src_step,
uchar * dst_data,
size_t dst_step,
int dst_depth,
int width,
int height,
int cn,
uchar lower_bound (下界),
uchar upper_bound (上界) )
内联

#include <core/src/hal_replacement.hpp>

inRange (lower_bound <= src_value) && (src_value <= upper_bound) ? 255 : 0

参数
src_data源图像数据
src_step源图像步长
dst_data目标图像数据
dst_step目标图像步长
dst_depth目标图像深度
width图像宽度
height图像高度
cn通道数 (number of channels)
lower_bound (下界)范围下界
upper_bound (上界)范围上界

◆ hal_ni_meanStdDev()

int hal_ni_meanStdDev ( const uchar * src_data,
size_t src_step,
int width,
int height,
int src_type,
double * mean_val (均值),
double * stddev_val (标准差),
uchar * mask,
size_t mask_step )
内联

#include <core/src/hal_replacement.hpp>

独立计算每个通道数组元素的平均值和标准差

参数
src_data源图像
src_step源图像
width源图像维度
height源图像维度
src_type源图像类型
mean_val (均值)各通道均值的数组。如果不需要均值,可以是 nullptr。
stddev_val (标准差)各通道标准差的数组。如果不需要标准差,可以是 nullptr。
mask指定的数组区域。
mask_step掩码数组步长。
另请参阅
meanStdDev

◆ 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 )
内联

#include <core/src/hal_replacement.hpp>

查找数组中的全局最小值和最大值。

参数
src_data源图像
src_step源图像
width源图像维度
height源图像维度
depth源图像深度
minVal指向数组中返回的全局最小值和最大值的指针。
maxVal指向数组中返回的全局最小值和最大值的指针。
minIdx (最小索引)指向返回的最小值和最大值位置的指针。
maxIdx (最大索引)指向返回的最小值和最大值位置的指针。
mask指定的数组区域。

◆ hal_ni_minMaxIdxMaskStep()

int hal_ni_minMaxIdxMaskStep ( const uchar * src_data,
size_t src_step,
int width,
int height,
int depth,
double * minVal,
double * maxVal,
int * minIdx (最小索引),
int * maxIdx (最大索引),
uchar * mask,
size_t mask_step )
内联

#include <core/src/hal_replacement.hpp>

查找数组中的全局最小值和最大值。

参数
src_data源图像
src_step源图像
width源图像维度
height源图像维度
depth源图像深度
minVal指向数组中返回的全局最小值和最大值的指针。
maxVal指向数组中返回的全局最小值和最大值的指针。
minIdx (最小索引)指向返回的最小值和最大值位置的指针。
maxIdx (最大索引)指向返回的最小值和最大值位置的指针。
mask指定的数组区域。
mask_step掩码数组步长。

◆ 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 (角度) )
内联

#include <core/src/hal_replacement.hpp>

rotate90 (旋转90度)

参数
src_type源和目标图像类型
src_data源图像数据
src_step源图像步长
src_width源图像宽度。如果角度值为 [180],它也是目标图像宽度;如果角度值为 [90, 270],它也是目标图像高度
src_height源图像和目标图像高度(角度为 [90, 270] 时为目标图像宽度)。如果角度值为 [180],它也是目标图像高度;如果角度值为 [90, 270],它也是目标图像宽度
dst_data目标图像数据
dst_step目标图像步长
angle (角度)顺时针旋转的角度(度),取自集合 [90, 180, 270]

◆ hal_ni_sum()

int hal_ni_sum ( const uchar * src_data,
size_t src_step,
int src_type,
int width,
int height,
double * result )
内联

#include <core/src/hal_replacement.hpp>

@ brief 求和

参数
src_data源图像数据
src_step源图像步长
src_type源图像类型
width,height源图像维度
result用于保存求和结果的指针。

◆ hal_ni_transpose2d()

int hal_ni_transpose2d ( const uchar * src_data,
size_t src_step,
uchar * dst_data,
size_t dst_step,
int src_width,
int src_height,
int element_size (元素大小) )
内联

#include <core/src/hal_replacement.hpp>

二维转置。

参数
src_data,src_step源图像
dst_data,dst_step目标图像
src_width,src_height源图像维度
element_size (元素大小)一个元素的字节大小