cvCreateMat的用法
分配矩阵空间:
CvMat*cvCreateMat(int rows , int cols ,int type);
Type:
矩阵元素类型,格式为
CV_
<bit_depth>(
S
/
U
/
F
)
C
<number_of_channels>
如:CV_8UC1
表示8位无符号单通道矩阵
CV_32SC2
表示32
位有符号双通道矩阵
例程:CvMat* M =cvCreateMat(4,4,CV_32FC1);
释放矩阵空间: cvReleaseMat(&M);
cvRectangle(img,cvPoint(100,100),cvPoint(200,200),cvScalar(255,0,0),1);
//
表示用宽度为1
的红线在(100,100)与(200,200)之间画一长方体
画圆用cvCircle
画直线用cvLine 画矩形用
cvRectangle
比较Mat, IplImage, CvMat, CvArr的关系:
1、opencv文档中明确声明,CvMat已经过时了(CvMat is now obsolete, consider using Mat instead)不建议用;
2、 派生关系:CvArr -> CvMat -> IplImage
3、Mat用的一套东西是imread,imshow等,有别于CvArr及其子类的cvLoadImage(),cvShowImage()…