用OpenCV实现Photoshop算法(七) | opencv飽和度
系列文章:用OpenCV实现Photoshop算法(一):图像旋转[1]用OpenCV实现Photoshop算法(二):图像剪切[2]用OpenCV实现Photoshop算法(三):曲线调整[3]用OpenCV实现Photoshop算法(四):色阶调整[4]用OpenCV实现Photoshop算法(五):亮度对比度调整[5]用OpenCV实现Photoshop算法(六):变为黑白图像[6]用OpenCV实现Photoshop算法(七):调整色相饱和度[7]用OpenCV实现Photoshop算法(八):可选颜色[8]用OpenCV实现Photoshop算法(九):高反差保留[9]七、调整色相饱和度Photoshop的色相/饱和度调整,可以对全图、红、黄、绿、青、蓝、洋红六个通道进行设置...
系列文章:
用OpenCV实现Photoshop算法(一): 图像旋转[1]
用OpenCV实现Photoshop算法(二): 图像剪切[2]
用OpenCV实现Photoshop算法(三): 曲线调整[3]
用OpenCV实现Photoshop算法(四): 色阶调整[4]用OpenCV实现Photoshop算法(五): 亮度对比度调整[5]
用OpenCV实现Photoshop算法(六): 变为黑白图像[6]
用OpenCV实现Photoshop算法(七): 调整色相饱和度[7]
用OpenCV实现Photoshop算法(八): 可选颜色[8]
用OpenCV实现Photoshop算法(九): 高反差保留[9]
七、调整色相饱和度
Photoshop 的色相/饱和度调整,可以对全图、红、黄、绿、青、蓝、洋红六个通道进行设置。
每个通道可设置: 色相(hue), 饱和度(satuation), 明度(Lightness)三个调整值。
(一)颜色空间 (Color Space)
颜色空间也称彩色模型(又称彩色空间). 常用颜色空间有:RGB, HSL, CYMK, Lab等。
对于RGB图像,所谓色相/饱和度调整,就是把 RGB 转为 HSL, 再对色相(H), 饱和度(S), 明度(L)进行调整,然后再转回RGB.
(二)OpenCV代码实现
1,我用OpenCV 编写了多个 颜色空间转换函数, 在源文件 ColorSpace.hpp, ColorSpace.cpp中
2,我用OpenCV 编写了一个 HSL类,实现色相/饱和度调整。在源文件 ColorSpace.hpp, ColorSpace.cpp中
3, 使用方法: HSL类有一个属性channels[7], 定义了7个颜色通道。每个通道有hue, saturation, brightness三个值。设置好所需通...