当前位置: 首页 > news >正文

OpenCV-8RGB和BGR颜色空间

一. RGB和BGR

最常见的色彩空间就是RGB,人眼也是基于RGB的色彩空间去分辨颜色。

OpenCV默认使用的是BGR. BGR和RGB色彩空间的区别在于图片在色彩通道上的排列顺序不同。

二.HSV, HSL和YUV

1.HSV(HSB)

OpenCV用的最多的色彩空间是HSV.

Hue:色相,即色彩,如红色,蓝色. 用角度度量,取值范围为0°~360°,从红色开始逆时针方向计算,红色为0°,绿色为120°,蓝色为240°

Saturation:饱和度,表示颜色接近光谱色的程度。一种颜色,可以看作是某种光谱色和白色混合的结果。其中光谱色所占比例越大,颜色接近光谱色的程度就越高,颜色的饱和度也就越高。饱和度高,颜色则深而艳。光谱色的白光成分为0,饱和度达到最高。通常饱和度取值为0°~100°,值越大,颜色越饱和。

Value或Brightness:明度或亮度,表示颜色的明亮程度,对于光源色,明度值与发光体的光亮度有关;对于物体色,此值与物体的透射比或反射比有关。通常取值范围为0%(黑)到100%(白)

底部为黑色

使用HSV的原因:方便OpenCV做图像处理,比如根据hue的值判断背景颜色.

2.HSL

HSV和HSL在字面上意思一样:

H:指的是色相,就是颜色名称,例如红色,蓝色

S:指的是饱和度,即颜色的纯度

L:Lightness和Brightness是明度,颜色的明亮程度

在原理和表现上,HSL和HSV中的H一样,但是二者的S和L不一样:

HSB中的S控制纯色中混入白色的量,值越大,白色越少,颜色越纯。(类似加入白色液体稀释)

HSB中的B控制纯色中混入黑色的量,即颜色的纯度。

HSL中的S和黑白没有关系,饱和度不控制颜色中混入黑白的多寡。(类似于加入纯净水稀释)

HSL中的L控制纯色中的混入的黑白两种颜色。

中间为灰色,上面为白色,下面为黑色。

3.YUV

YUV:是一种颜色的编码方法,常用在各个视频处理组件中。YUV在对照片或视频编码时,考虑到人类的感知能力,允许降低色度的宽度。

Y:表示明亮度,也就是灰阶值。

U和V表示色度,作用是描述影响色彩及饱和度,用于指定像素的颜色。

YUV的发明是由于彩色电视与黑白电视的过渡时期。

YUV最大的优点在于只需要占用极少的宽带。

共有下列四种取样格式:

4:4:4表示完全取样(带宽最多)

4:2:2表示2:1的水平采样,垂直完全采样

4:2:0表示2:1的水平采样,垂直2:1采样(最经常采用)

4:1:1表示4:1的水平采样,垂直完全采样

http://www.lryc.cn/news/262824.html

相关文章:

  • 阿里云主导《Serverless 计算安全指南》国际标准正式立项!
  • YOLOv5改进 | 2023 | CARAFE提高精度的上采样方法(助力细节长点)
  • AWS RDS慢日志文件另存到ES并且每天发送邮件统计慢日志
  • 如何在断线后不重连加入音视频房间
  • RabbitMq交换机详解
  • 智能优化算法应用:基于适应度相关算法3D无线传感器网络(WSN)覆盖优化 - 附代码
  • spring之基于注解管理Bean
  • Wireshark在云计算中的应用
  • 三菱plc学习入门(一,认识三菱plc)
  • 设计模式——中介者模式
  • 【 USRP安装教程】MATLAB 2023B
  • AI绘画中UNet用于预测噪声
  • 解决 Hbuilder打包 Apk pad 无法横屏 以及 H5 直接打包 成Apk
  • 云原生之深入解析如何在K8S环境中使用Prometheus来监控CoreDNS指标
  • Unity3D UDP传输大文件怎么提高速度详解
  • 数据结构——栈和队列的应用
  • 第7章 排序
  • AR眼镜光学方案_AR眼镜整机硬件定制
  • Linux shell编程学习笔记36:read命令
  • Python表达式
  • 风速预测(六)基于Pytorch的EMD-CNN-GRU并行模型
  • 【Stm32-F407】全速DAP仿真器下载程序
  • ArcGIS Pro SDK导出的几何XML和Json
  • 随笔记录-springboot_LoggingApplicationListener+LogbackLoggingSystem
  • 超级计算机与天气预报:精准预测的科技革命
  • 【uniapp小程序-分享】
  • 思幻二次元风格的工作室个人引导页源码
  • Rsync+notify文件实时同步工具
  • 小信砍柴的题解
  • 华为OD机试 - 跳格子3(Java JS Python C)