OpenCV之基础图像容器Mat

 今天的概念性比较强,还是贴上原文比较好,没事我自己多看看,多理解。自己不同时候都有不同的理解,现在没办法写对这些的理解。

数字图像存储概述

Mat结构的使用

int main(int argc, char** argv)
{
	Mat A, C;//仅是创建信息头部分
	A = imread("1.png");//这里为矩阵开辟内存
	Mat B(A);//使用拷贝构造函数
	C = A;
	return 0;
}

 像素值的存储

 显式创建Mat对象的七种方法

方式一:使用Mat()构造函数

int main(int argc, char** argv)
{
	Mat M(2, 2, CV_8UC3, Scalar(0, 0, 255));
	cout << "M = " << endl << "  " << M << endl;
}

 代码解析

 方式二:在C\C++中通过构造函数进行初始化

int main(int argc, char** argv)
{
	int sz[3] = { 2,2,2 };
	Mat L(3, sz, CV_8UC3, Scalar::all(0));
}

这部分书上的源码有问题

书上是这样写的

 

运行结果是没有找到宏,其实应该也不算问题,毕竟他在说明中已经说了后续两个参数与方法中的相同,CV_8UC后面的数字就是通道数。

 我看他关于8UC开头的宏就这么多,如果通道数不止1-4可按照带n的宏自己定义,但是一般4通道就够用吧,我暂时还没遇到需要超过四通道的情况!

后面的明天再说吧。

猜你喜欢

转载自blog.csdn.net/sono_io/article/details/124160425