OpenCV
Open Source Computer Vision
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages

Detailed Description

The function performs generalized matrix multiplication similar to the gemm functions in BLAS level 3: D=αAB+βC

Parameters
src1pointer to input M×N matrix A or AT stored in row major order.
src1_stepnumber of bytes between two consequent rows of matrix A or AT.
src2pointer to input N×K matrix B or BT stored in row major order.
src2_stepnumber of bytes between two consequent rows of matrix B or BT.
alphaα multiplier before AB
src3pointer to input M×K matrix C or CT stored in row major order.
src3_stepnumber of bytes between two consequent rows of matrix C or CT.
betaβ multiplier before C
dstpointer to input M×K matrix D stored in row major order.
dst_stepnumber of bytes between two consequent rows of matrix D.
mnumber of rows in matrix A or AT, equals to number of rows in matrix D
nnumber of columns in matrix A or AT
knumber of columns in matrix B or BT, equals to number of columns in matrix D
flagsalgorithm options (combination of CV_HAL_GEMM_1_T, ...).

Functions

int hal_ni_gemm32f (const float *src1, size_t src1_step, const float *src2, size_t src2_step, float alpha, const float *src3, size_t src3_step, float beta, float *dst, size_t dst_step, int m, int n, int k, int flags)
 
int hal_ni_gemm32fc (const float *src1, size_t src1_step, const float *src2, size_t src2_step, float alpha, const float *src3, size_t src3_step, float beta, float *dst, size_t dst_step, int m, int n, int k, int flags)
 
int hal_ni_gemm64f (const double *src1, size_t src1_step, const double *src2, size_t src2_step, double alpha, const double *src3, size_t src3_step, double beta, double *dst, size_t dst_step, int m, int n, int k, int flags)
 
int hal_ni_gemm64fc (const double *src1, size_t src1_step, const double *src2, size_t src2_step, double alpha, const double *src3, size_t src3_step, double beta, double *dst, size_t dst_step, int m, int n, int k, int flags)
 

Function Documentation

◆ hal_ni_gemm32f()

int hal_ni_gemm32f ( const float * src1,
size_t src1_step,
const float * src2,
size_t src2_step,
float alpha,
const float * src3,
size_t src3_step,
float beta,
float * dst,
size_t dst_step,
int m,
int n,
int k,
int flags )
inline

◆ hal_ni_gemm32fc()

int hal_ni_gemm32fc ( const float * src1,
size_t src1_step,
const float * src2,
size_t src2_step,
float alpha,
const float * src3,
size_t src3_step,
float beta,
float * dst,
size_t dst_step,
int m,
int n,
int k,
int flags )
inline

◆ hal_ni_gemm64f()

int hal_ni_gemm64f ( const double * src1,
size_t src1_step,
const double * src2,
size_t src2_step,
double alpha,
const double * src3,
size_t src3_step,
double beta,
double * dst,
size_t dst_step,
int m,
int n,
int k,
int flags )
inline

◆ hal_ni_gemm64fc()

int hal_ni_gemm64fc ( const double * src1,
size_t src1_step,
const double * src2,
size_t src2_step,
double alpha,
const double * src3,
size_t src3_step,
double beta,
double * dst,
size_t dst_step,
int m,
int n,
int k,
int flags )
inline