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

图像颜色空间对比(Opencv)

1. 颜色转换

import cv2
import matplotlib.pyplot as plot

img = cv2.imread("tmp.jpg")
img_r = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
img_g = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
img_h = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
img_l = cv2.cvtColor(img, cv2.COLOR_BGR2LAB)

plot.figure(figsize=(15,3));
plot.subplot(1,5,1)
plot.title('BGR image')
plot.imshow(img)
plot.subplot(1,5,2)
plot.title('BGR to RGB')
plot.imshow(img_r)
plot.subplot(1,5,3)
plot.title('BGR to Gray')
plot.imshow(img_g)
plot.subplot(1,5,4)
plot.title('BGR to HSV')
plot.imshow(img_h)
plot.subplot(1,5,3)
plot.title('BGR to LAB')
plot.imshow(img_l)

plot.show()

在这里插入图片描述

2. 各颜色空间对比

颜色空间通道数通道含义数据范围主要应用场景优缺点
RGB3Red(红)、Green(绿)、Blue(蓝)各通道值范围:0-255图像显示、基础图像处理✅ 直观易用
❌ 对光照变化敏感
BGR3Blue(蓝)、Green(绿)、Red(红)各通道值范围:0-255OpenCV默认图像格式、视频处理✅ OpenCV原生支持
❌ 与常规RGB顺序相反
Gray1亮度(Luminance)单通道值范围:0-255人脸检测、文字识别、简化计算✅ 计算效率高
❌ 丢失颜色信息
HSV3Hue(色相)、Saturation(饱和度)、Value(明度)H: 0-180
S/V: 0-255
颜色检测、色彩分割、光照鲁棒处理✅ 颜色分离效果好
❌ H通道是循环角度值(0°=180°)
Lab3L(亮度)、a(红绿轴)、b(黄蓝轴)L: 0-255
a/b: -128~127
颜色一致性校正、复杂颜色分割✅ 接近人类视觉感知
❌ 计算复杂度较高

3. 应用说明

3.1 RGB vs BGR

  • OpenCV默认使用BGR格式,与其他库(如Matplotlib)交互时需转换
  • 转换方法:cv2.cvtColor(img, cv2.COLOR_BGR2RGB)

3.2 HSV

  • H(色相)在OpenCV中被压缩到0-180范围(常规为0-360°)
  • 常用于颜色过滤(如检测红色物体)

3.3 Lab

  • L通道表示亮度,与设备无关
  • a通道:绿色→红色(-128→127)
  • b通道:蓝色→黄色(-128→127)
  • 在Photoshop等专业工具中广泛使用

3.4 Gray

  • 转换公式:Gray = 0.299R + 0.587G + 0.114*B(加权平均法)

3.5 典型使用场景示例:

  • 人脸检测:优先使用灰度图(减少计算量)
  • 颜色追踪:HSV空间定义颜色范围(如cv2.inRange())
  • 图像增强:Lab空间调整亮度(L通道)不影响颜色
  • 跨设备颜色一致性:Lab空间进行颜色校正

相关文章:

  • 【Nginx】Nginx代理Tomcat配置及404问题解决
  • JavaScript逆向工程:如何判断对称加密与非对称加密
  • LLM应用开发(七)--记忆
  • 聊一聊接口测试时遇到第三方服务时怎么办
  • map映射到二维数组
  • Windows下安装depot_tools
  • 云曦月末断网考核复现
  • 力扣HOT100之链表: 148. 排序链表
  • queue容器
  • 3.软考高项(信息系统项目管理师)-范围管理
  • Openssl升级至openssl9.8p1含全部踩坑内容
  • Socket多路复用网络编程应用总结
  • RDD行动算子和累加器
  • 低代码控件开发平台:飞帆中粘贴富文本的控件
  • C++学习中常见的数组越界问题及解决方案
  • fit 转 gpx
  • w286入校申报审批系统设计与实现
  • 单片机方案开发 代写程序/烧录芯片 九齐/应广等 电动玩具 小家电 语音开发
  • Gemini Deep Research惊艳升级:2.5 Pro模型带来的研究效率革命
  • Transformer 多卡并行计算-SimpleDataset设计:`labels`;input_ids;attention_mask是什么
  • 政府网站建设需求调研问卷/搜关键词网站
  • 一个刚做好的网站怎么做seo/百度的营销中心上班怎么样
  • 自己做培训需要网站吗/seo搜索优化工程师招聘
  • 深圳行业网站建设/品牌推广的意义
  • 网页图片不能保存怎么办/网站如何优化排名软件
  • 2016年两学一做教育网站/如何加入百度推广