12 图像色彩空间转换 - 进阶
opencv
知识点:
- 色彩空间转换 -
cvtColor()
- 提取指定色彩范围区域 -
inRange()
- 更换图像背景 -
copyTo
的mask
用法
本课所解决的问题:
- 如何提取指定色彩范围的区域?
- 如何更换图像的背景?
1.HSV色彩空间
HSV相较于BGR色彩空间,颜色的区分度比较明显,对某个颜色来说可以很容易的提取出来。
2.提取指定色彩范围区域
在opencv中,我们提取指定色彩范围的区域,采用inRange
实现,这样的一块区域,学名叫做ROI(region of interest),感兴趣区域。
关于inRange的提取原理
图像中,
对于在指定色彩范围内的颜色,将置为255(白色)
,不在的则置为0(黑色)
对于多通道的输入,输出结果是各个通道的结果相与,当各通道结果都在上下限之内时,输出为255,否则为0。
因此也有人将输出理解为mask掩码模板,作为mask使用。
inRange
提取指定色彩范围内的区域
共4个参数
第1个参数 输入
第2个参数 色彩下界
第3个参数 色彩上界
第4个参数 输出
程序:
//函数定义
void inrange_demo(Mat& image); // .h文件
//函数实现
void