我正在使用OpenCV 3.0,但我的问题应该与版本无关。我想知道默认情况下OpenCV使用哪个the many RGB颜色空间。
也就是说,用于default representation, BGR
中的图像,哪个RGB空间使用OpenCV ?
我怀疑他们是CIE 1931 XYZ functions:
抬头:这个问题是here的镜像(等待审核,截至目前)。我会确保他们之间分享任何知识。
答案 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空格。