1、InitMatHeader
初始化矩阵头
CvMat* cvInitMatHeader(
CvMat* mat, int rows, int cols, int type,
void* data=NULL, int
step=CV_AUTOSTEP );
mat
指针指向要被初始化的矩阵头.
rows
矩阵的行数.
cols
矩阵的列数.
type
矩阵元素类型.
data
可选的,将指向数据指针分配给矩阵头.
step
排列后的数据的整个行宽,默认状态下,使用STEP
的最小可能值。例如假定矩阵的行与行之间无隙函数
cvInitMatHeader 初始化已经分配了的
CvMat 结构. 它可以被OpenCV 矩阵函数用于处理原始数据。
例如,
下面的代码计算通用数组格式存贮的数据的矩阵乘积.
计算两个矩阵的积
double a[] = { 1, 2, 3,
4
5, 6, 7, 8,
9, 10, 11, 12 };
double b[] = { 1, 5,
9,
2, 6, 10,
3, 7, 11,
4, 8, 12 };
double c[9];
CvMat Ma, Mb, Mc ;
cvInitMatHeader( &Ma,
3, 4, CV_64FC1, a );
cvInitMatHeader( &Mb,
4, 3, CV_64FC1, b );
cvInitMatHeader( &Mc,
3, 3, CV_64FC1, c );
cvMatMulAdd( &Ma,
&Mb, 0, &Mc );
// c 数组存贮 a(3x4) 和 b(4x3)
矩阵的积
留言列表