任何人都可以解释为什么OpenCV使用BGR色彩空间而不是RGB.我们都知道RGB对于大多数计算机图形来说是方便的颜色模型,并且人类视觉系统的工作方式类似于RGB颜色空间.OpenCV BGR色彩空间背后有什么原因吗?
提前致谢.......
Dan*_*ues 47
"OpenCV的早期开发人员选择BGR颜色格式的原因可能是当时BGR颜色格式在相机制造商和软件供应商中很受欢迎.例如在Windows中,当使用COLORREF指定颜色值时,他们使用BGR格式0x00bbggrr.
BGR是出于历史原因而做出的选择,现在我们必须忍受它.换句话说,BGR是OpenCV的马屁."
小智 11
OpenCV 以 BGR 格式(而不是 RGB)读取图像,因为在 OpenCV 最初开发时,BGR 颜色格式在相机制造商和图像软件供应商中很流行。红色通道被认为是最不重要的颜色通道之一,因此列在最后,许多位图使用 BGR 格式存储图像。但是,现在标准发生了变化,大多数图像软件和相机都使用 RGB 格式,这就是为什么在程序中,在分析或处理任何图像之前先将 BGR 图像转换为 RGB 是一种很好的做法。
为什么?由于历史原因。1987年,微软Windows运行在IBM PS/2上,早期的IBM视频显示控制器VGA使用了INMOS 171/176 RAMDAC芯片,当图像以BGR格式存储时更容易使用。
详细信息请参阅 为什么使用 BGR 颜色顺序