1. CV_MAT_ELEM(matrix,elemtype, row, col)
matrix: 访问矩阵
elemtype: 矩阵元素的类型
row: 元素行数
clo: 元素的列数
2. cvMatMulAdd(src1,src2,src3,dst)
功能是:dist=src1*src2+src3
src1 第一输入数组
src2 第二输入数组
src3 第三输入数组
dst 输出数组
使用例子如下所示:
// cvMat.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include "cv.h"
#include "highgui.h"
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
CvMat* mat_01, * mat_02, * mat_03; //声明三个矩阵指针
mat_01=cvCreateMat(3,3,CV_64FC1); //指明矩阵头的类型
mat_02=cvCreateMat(3,3,CV_64FC1);
mat_03=cvCreateMat(3,3,CV_64FC1);
double a[9]={ 4, 2, 4, //具体存放数据的数组
9, 7, 6,
17, 81, 9 };
cvInitMatHeader(mat_01,3,3,CV_64FC1,a); //初始化矩阵头
mat_02=cvCloneMat(mat_01); //mat_02拷贝mat_01
cvMatMulAdd(mat_01, mat_02, 0, mat_03); //矩阵相乘
for(int i=0; i<3; i++) //输出相乘结果
{
for(int j=0; j<3; j++)
{
cout<<CV_MAT_ELEM( * mat_03, double, i, j )<<" ";
}
cout<<endl;
}
cvReleaseMat(&mat_01);
cvReleaseMat(&mat_02);
cvReleaseMat(&mat_03);
return 0;
}