OpenCV用于RGB / BGR色彩空间的色彩匹配功能是什么?

时间:2015-09-01 19:53:15

标签: opencv colors rgb emgucv

我正在使用OpenCV 3.0,但我的问题应该与版本无关。我想知道默认情况下OpenCV使用哪个the many RGB颜色空间。 也就是说,用于default representation, BGR中的图像,哪个RGB空间使用OpenCV

我怀疑他们是CIE 1931 XYZ functions

CIE XYZ

CIE 1931 RGB functions

CIE RGB

抬头:这个问题是here的镜像(等待审核,截至目前)。我会确保他们之间分享任何知识。

2 个答案:

答案 0 :(得分:1)

事实证明,颜色匹配功能是捕获设备和显示设备问题。请查看sRGB wiki page

的相关部分
  

由于互联网,计算机和打印机上的sRGB标准化,许多中低端消费者数码相机和扫描仪使用sRGB作为默认(或仅可用)工作色彩空间。由于sRGB色域达到或超过低端喷墨打印机的色域,因此sRGB图像通常被认为对家庭使用而言是令人满意的。但是,消费级CCD通常是未经校准的,这意味着即使图像被标记为sRGB,也无法断定图像是色彩准确的sRGB。

OpenCV可用于转换颜色空间或从颜色空间转换或使用the right math得出颜色空间坐标。但是OpenCV没有一组“默认”的颜色匹配功能。如果您的相机在空间X中捕获(例如,CIE XYZ)并且您的显示设备或打印机也在空间X中显示,则可以使用OpenCV来处理数据而不考虑空间。但是,如果显示设备显示在不同的空间Y(例如,Adobe RGB)中,则可以使用OpenCV 将图像从空间X转换为空间Y.

答案 1 :(得分:0)

虽然OpenCV对RGB来说几乎是无关紧要的色彩空间,但cv :: cvtColor除外,它在明确定义的色彩空间和原生OpenCV RGB之间进行转换。从coefficients used开始,我们可以看到它使用sRGB空格。