一、GEMM函数的定义
void cvGEMM( const CvArr* src1, const CvArr* src2, double alpha,
const CvArr* src3, double beta, CvArr* dst, int tABC=0 );
这是通用矩阵乘法,其中各个参数表示:
src1:第一输入数组
src2:第二输入数组
alpha:系数
src3“第三输入数组(偏移量),如果没有偏移量,可以为空(NULL)
beta:表示偏移量的系数
dst:输出数组
tABC:
转置操作标志,可以是0。当为0时,没有转置。或者还有下面的值的组合:
CV_GEMM_A_T:表示src1转置
CV_GEMM_B_T:表示src2转置
CV_GEMM_C_T:表示src3转置
例如,CV_GEMM_A_T+CV_GEMM_C_T对应
alpha*(src1转置)*src2+beta*(src3转置)
二、cvMatMul函数的定义
#define cvMatMul(src1,src2,dst);
表示dst=src1*src2
三、cvMatMulAdd函数的定义
#define cvMatMulAdd(src1,src2,src3,dst);
表示:dst=src1*src2+src3
四、cvConvertScaleAbs函数
该函数作用:使用线性变换转换输入数组元素成8位无符号整型
原型:void cvConvertScaleAbs( const CvArr* src, CvArr* dst, double scale=1, double shift=0 );
src : 原数组
dst :输出数组 (深度为 8u).
scale :比例因子.
shift :原数组元素按比例缩放后添加的值。
函数 cvConvertScaleAbs 存贮变换结果的绝对值:dst=abs(src*scale + shift)
转载自:https://blog.csdn.net/liulianfanjianshi/article/details/11737921