opencv中的颜色通道BGR与常规颜色通道RGB的差异

本文探讨了颜色在计算机中的表示,特别关注OpenCV中的BGR颜色通道与常见的RGB模式的区别。在RGB模式中,像素点由红、绿、蓝三原色的亮度值组成,而在OpenCV中,颜色顺序被调整为BGR。通过举例展示了如何使用matplotlib显示纯色,同时提到了RGB和RGBA模式,以及24位图的概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

颜色通道

颜色是由红绿蓝三原色组合而成的,每一种颜色的比例不同,展示的颜色也不同。我在北京工业大学应用数理学院读研究生时,发激光的论文都是发红、绿、蓝颜色的激光,也是由于这是三原色的原因。

颜色在计算机中的表示

  • 在计算机中,一个像素点的数据对应就是3个值,这三个值代表三原色。其中每一个值的范围是从0-255,正好是256个值,可以用8个位表示,也就是一个字节表示。这个值代表颜色的亮度,0的话就是黑色,255就代表对应的饱和纯色。
    红色像素点在计算机中表示为[255,0,0]
    绿色像素点在计算机中表示为[0,255,0]
    蓝色像素点在计算机中表示为[0,0,255]
    括号内每一个值,对应一个颜色通道。一般颜色模式是RGB,就是一个像素点的三个值分别对应G,G,B。
  • 还有颜色模式RGBA,A代表透明度。
    由于RGB中每一个值是8位,三个值就是24位。所以一个像素点需要24位的数据。我们也称这样格式的图片是24位图。

用matplotlib显示纯色

import matplotlib.pyplot as plt
import numpy as np
r = np.array(
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

python_xiaofeng

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值