C#:CvMat矩阵结构
《学习OpenCV(中文版)》
作者:(美)布拉德斯基(Bradski,G.),
(美)克勒(Kaehler,A.) 著
出版社:清华大学出版社
出版时间:2009年10月
一、两个重点注意
-
第一
在OpenCV中,没有向量(Vector)结构。
任何时候需要向量,都只需要一个列矩阵(如果需要需要一个转置或共轭向量,则需要一个行距阵)。 -
第二
OpenCV矩阵的概念比线性代数矩阵的概念更抽象,尤其是矩阵的元素,不仅仅是数值类型。
二、CvMat结构
- CvMat的结构相当简单(在/opencv/cxcore/include/cxtypes.h中查看)。
矩阵由宽度(width)、高度(height)、类型(type)、行数据长度(step,行的长度用字节表示而不少整形或者浮点型长度)和一个指向数据的指针构成。
可以通过一个指向CvMat的指针访问这些成员,或者对于一些普通元素,使用现成的访问方法。
typedef struct CvMat
{
int type;
int step;
int* refcount;/* for internal use only */
int hdr_refcount;
union
{
uchar* ptr;
short* s;
int* i;
float* fl;
double* db;
} data;
union
{
int rows;
int height;
};
union
{
int cols;
int width;
};
} CvMat;
共有 0 条评论