图片是什么
人类看到的是图像
数字设备‘看’到的是矩阵,即时在记录图像时的点的数值。
计算机中所有的图像都是可以简化为数值矩阵以及矩阵信息的。
Mat类的构成
矩阵头(矩阵尺寸,存储方法,存储地址等)
存储像素值的矩阵的指针
矩阵头的尺寸是常数值,但矩阵本身的尺寸会依据图片的不同而不同。
拷贝图像
引入计数机制
拷贝时,只拷贝信息头和矩阵指针
使指针指向不同的地址
不拷贝矩阵本身
图片存储方法
存储像素值时需要指定颜色空间和数据类型。
颜色空间是指对一个给定的颜色,如何组合颜色元素以对其编码。
灰度级空间(灰度图):只需要处理黑色和白色就可以产生不同程度的灰色。
彩色图片
RGB颜色空间分为Red(红)、Green(绿)、Blue(蓝色),有时为了表示透明颜色会加入alpha(A)
颜色系统
RGB采用人眼相似的工作机制。
HSV和HLS把颜色分为色调、饱和度、和亮度(明度)。更自然的图片描述方式。
YCrCB在JPEG格式中广泛应用。
CIE Lab* 是感知上均匀的颜色空间,适合用来度量两个颜色之间的距离。
构建Mat对象
对于二维多通道图像,首先要定义其尺寸,即是行数和列数。
然后需要指定存储元素的数据类型以及每个矩阵点的通道数。