OpenCV学习笔记(三)——Mat,图像的新容器
来源:互联网 发布:域名转出到godaddy 编辑:程序博客网 时间:2024/05/24 06:36
原文地址:点击打开链接
自从版本2.0,OpenCV采用了新的数据结构,用Mat类结构取代了之前用extended C写的cvMat和lplImage,更加好用啦,最大的好处就是更加方便的进行内存管理,对写更大的程序是很好的消息。
需要注意的几点:1. Mat的拷贝只是复制了Mat的信息头,数据的指针也指向了被拷贝的数据地址,而没有真正新建一块内存来存放新的矩阵内容。这样带来的一个问题就是对其中一个Mat的数据操作就会对其他指向同一块数据的Mat产生灾难性的影响。
2.建立多维数组的格式是这样的- int sz[3] = {2, 2, 2};
- Mat L(3, sz, CV_8UC(1), Scalar::all(0));
3.传统的lplImage格式也可直接转换为Mat格式
- IplImage* img = cvLoadImage("greatwave.png", 1);
- Mat mtx(img); // convert IplImage* -> Mat
如果想将新版本的Mat格式转换为老版本,则需要如下调用:
- Mat I;
- IplImage* pI = &I.operator IplImage();
- CvMat* mI = &I.operator CvMat();
不过更安全的调用格式为:
- Ptr<IplImage> piI = &I.operator IplImage();
4.Mat结构更加友好,很多操作更接近matlab的风格5.也有Point2f,Point3f,vector等数据结构可以使用
6.RNG类可以产生随机数
7.实现颜色通道的分离使用函数split
0 0
- OpenCV学习笔记(三)——Mat,图像的新容器
- OpenCV学习笔记(三)——Mat,图像的新容器
- OpenCV学习笔记(三)——Mat,图像的新容器
- OpenCV学习笔记(三)——Mat,图像的新容器
- OpenCV学习笔记(三)——Mat,图像的新容器
- OpenCV学习笔记(三)——Mat,图像的新容器
- OpenCV学习笔记(三)——Mat,图像的新容器
- OpenCV学习笔记(三)——Mat,图像的新容器
- OpenCV学习笔记——Mat,图像的新容器
- OpenCV学习笔记——Mat,图像的新容器
- OpenCV学习笔记(二)——Mat,图像的新容器
- opencv学习笔记之Mat,图像的新容器
- OpenCV Mat —— 基本的图像容器
- opencv Mat - 图像的容器
- Mat,图像的新容器
- 【Opencv学习(三)】获取Mat图像的ROI区域
- 2.1 Mat—基础图像容器(OpenCV教程)
- 2.1 Mat—基础图像容器(OpenCV教程)
- 通过安卓应用获取任意蓝牙设备的MAC地址
- 使用pdf转换器转换文件的方法
- Apache Shiro 使用手册(四)Realm 实现
- CentOS6.2(X86-64)安装配置Redis2.8.9
- 网页调用JS音频播放器兼容所有浏览器,包括IE6,7,8,9,FF,GOOGLE,OPERA,360等
- OpenCV学习笔记(三)——Mat,图像的新容器
- Calabash-Android For windows 环境搭建说明
- 数组操作
- Chisel-LLDB命令插件,让调试更Easy
- Ubuntu Kylin设置自定义桌面分辨率 完美支持全屏
- Apache Shiro 使用手册(五)Shiro 配置说明
- cic滤波器设计
- 格式说明符
- SQL Profiles-MANUAL