为什么OpenCV使用BGR色彩空间而不是RGB



为什么OpenCV使用BGR颜色空间而不是RGB .我们都知道RGB是大多数计算机图形的方便颜色模型,人类视觉系统的工作方式类似于RGB色彩空间。色彩空间背后有什么原因OpenCV BGR

"OpenCV的早期开发人员选择BGR颜色格式的原因可能是当时BGR颜色格式在相机制造商和软件提供商中很受欢迎。例如,在Windows中,当使用COLORREF指定颜色值时,它们使用BGR格式0x00bbggrr。

BGR是出于历史原因做出的选择,现在我们必须忍受它。换句话说,BGR是OpenCV中的马屁股。

OpenCV以BGR格式(而不是RGB)读取图像,因为当OpenCV首次开发时,BGR颜色格式在相机制造商和图像软件提供商中很受欢迎。红色通道被认为是最不重要的颜色通道之一,因此列在最后,许多位图使用 BGR 格式进行图像存储。但是,现在标准已经改变,大多数图像软件和相机都使用RGB格式,这就是为什么在程序中,在分析或操作任何图像之前首先将BGR图像转换为RGB是一种很好的做法。

为什么?出于历史原因。1987年,Microsoft Windows运行在IBM PS/2上,早期的IBM视频显示控制器VGA使用了INMOS 171/176 RAMDAC芯片,当图像以BGR格式存储时,该芯片更容易使用。

详情见为什么选择 BGR 颜色顺序 - 逆向计算堆栈交换

相关内容

  • 没有找到相关文章

最新更新