问题定义
Mat是opencv的核心
如何初步学习认知?
编写几个基础事例来观察
工作原理
创建一个且每个‘点’只有一个通道的简单矩阵,通常用到Mat对象中的三个静态函数中的一个eys、ones、zeros。 来吧 伪代码飘起~~~~
{
//函数 zeros 创建值全部为0的矩阵
Mat.zeros(3,3,CvType.CV_8UC1)
//输出
[0,0,0;
0,0,0;
0,0,0]
}
{
// eye 创建除了坐标x=y外其他为0的矩阵
Mat.eye(3,3,CvType.CV_8UC1)
//输出
[1,0,0;
0,1,0;
0,0,1]
}
{
//ones 创建值全部为1的矩阵
Mat.ones(3,3,CvType.CV_8UC1)
//输出
[1,1,1;
1,1,1;
1,1,1]
}
{
//参数CV_8UC3 类型,创建每个像素包含三个通道的矩阵
Mat.ones(1,1,CvType.8Uc3);
//输出
[1,0,0]
Mat.ones(3,3,CvType.8Uc3);
//输出
[ 1, 0, 0, 0, 0, 0, 0, 0, 0;
0, 0, 0, 1, 0, 0, 0, 0, 0;
0, 0, 0, 0, 0, 0, 1, 0, 0]
}
{
//cv8uc1和cv8uc3是常用到的像素格式,此外CvType中还定义了其他类型,
//比如当进行矩阵之间的计算时,还可能用到每个通道为浮点数的矩阵,Cv_64FC3.
//通长情况下,并不需要自己创建矩阵,而是从文件中加载图像。
}