opencv——创建矩阵并显示

来源:互联网 发布:建筑节能设计软件 编辑:程序博客网 时间:2024/05/29 03:25
//单通道
#include <opencv2\opencv.hpp>#include <iostream>#include <conio.h>int main(){float data[18]={3,4,5,6,7,8,        9,0,1,2,1,3,        4,5,6,6,7,8};    /*创建数据*/CvMat mat ;     /*创建矩阵*/cvInitMatHeader(&mat ,3,6,CV_32FC1,data);   /*初始化矩阵*///显示矩阵
          for(int y=0;y<mat.rows;y++){for( int x=0;x<mat.cols;x++){double val = cvGetReal2D(&mat,y,x);printf("%f  ",val);}printf("\n");}_getch();return 0;}

运行结果:

 

/* Initializes CvMat header */
CVAPI(CvMat*) cvInitMatHeader( CvMat* mat, int rows, int cols,
                              int type, void* data CV_DEFAULT(NULL),
                              int step CV_DEFAULT(CV_AUTOSTEP) );

//双通道

#include <opencv2\opencv.hpp>#include <iostream>#include <conio.h>int main(){float data[18]={3,4,5,6,7,8,            9,0,1,2,1,3,            4,5,6,6,7,8};CvMat mat ;cvInitMatHeader(&mat ,3,3,CV_32FC2,data);for(int y=0;y<mat.rows;y++){for( int x=0;x<mat.cols;x++){CvScalar value = cvGet2D(&mat,y,x);printf("(%f %f)  ",value.val[0],value.val[1]);}printf("\n");}free(&mat);_getch();return 0;}
运行结果:



0 0