如何将gpumat CvMat OpenCV中来

 Mat类型较CvMat和IplImage有更强的矩阵运算能力支持常见的矩阵运算(参照Matlab中的各种矩阵运算),所以将IplImage类型和CvMat类型转换为Mat类型更易于数据处理

Mat类型可用于直接存储图像信息,通过函数imread、imwrite、imshow等实现(与Matlab中的函数相似)似乎在某种程度上可以取代IplImage类型。

默认情况下新的Mat类型与原来的IplImage类型共享图像数据,转换只是创建一个Mat矩阵头当将参数copyData设为true后,就会复制整个图像数据

同样只是创建图像头,而没有复制数据

(3)将CvMat类型转换为Mat类型

与IplImage的转换类似,可以选择是否复制数据

(4)将Mat类型转换为CvMat类型

与IplImage的转换类似,不复制数据只创建矩阵头。

最近用到的OpenCV读取灰度值处理的方法所以总结一下相关的知识点

1、根据其他数据结构中的数据如何对于cv::Mat 的赋值和写入图片操作


//这里是将PCL的点云数据中的RGB信息提取出来进行賦值输出图片
 
2、元素的遍历并打印输出


关于遍历,cv::Mat元素遍历有很多方式但是下面的指针遍历是较快的方式,也是首选方法;


由于使用的昰uchar指针所以打印mat元素的时候不能使用cout,而是使用printf进行强制转换为int性进行打印输出

//上一句可以看出 三通道和一个通道的灰度图的遍历打印嘚不同之处

我要回帖

 

随机推荐