一、图像颜色空间
1.1 RGB颜色模型
OpenCV的存储顺序是BGR
1.2 YUV颜色模型
电视信号的颜色编码方式,YUV420、YUV422、NV12等等。
Y:像素的亮度 U:红色分量与亮度信号的差值 V:蓝色与亮度的差值
RGB与YUV的相互转换:
Y=0.299R+0.587G+0.144B
U=-0.147R-0.289G+0.436B
V=0.615R-0.515G-0.100B
R=Y+1.14V
G=Y-0.39U-0.58V
B=Y+2.03U
1.3 HSV颜色模型
H:色度(Hue) 色彩的基本属性 饱和度:(Saturation) 指颜色的纯度 亮度:Value颜色的明亮程度
1.4 Lab颜色模型
L:颜色亮度 ab:两个颜色的通道
a由小到大颜色是从绿色变成红色
b由小到大颜色是从蓝色变成黄色
1.5 GRAY颜色模型
GRAY=0.3R+0.59G+0.11B
1.6 不同颜色模型的相互转换
void cvColor(输入矩阵,输出矩阵,int code,int dstCn=0);
code:颜色空间的转换标志
dstCn:目标文件的通道数,如果是0,则从src和代码中自动导出通道数
code:颜色空间的转换标志
COLOR_BGR2GARY COLOR_BGR2HSV COLOR_BGR2YUV
COLOR_BGR2Lab
数据类型的转换:convertTo(OutputArry m,int rtype,double alpha=1,double beta=0)
参数1:转换类型后的输出图像
参数2:转换图像的数类型
参数3:转换过程中的缩放因子
参数4:转换过程中的偏置因子
1.7 多通道分离与合并
1.7.1 多通道合并merge()
void merge(需要合并的图像数组,输入图像数组的长度,需要合并的图像的向量,合并后输出的图像)
1.7.2多通道分离split()
void split(待分离的多通道图像,分离后的单通道图像)
分离后的单通道图像:有两种,分为A、B
A:Mat类型的数组,长度需要与多通道的图像的通道数相等
B:vector<Mat>容器
二、图像像素操作处理
三、图像变换
四、几何图形的绘制
五、感兴趣区域
六、图像“金字塔”
七、窗口交互操作