使用python转换图像RGB-> Lab

发布于 2021-01-29 18:00:05

今天使用PIL / Numpy / SciPy进行转换的首选方式是什么?

关注者
0
被浏览
53
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    自2010年提出链接问题时,相应的代码就从scipy转移到了单独的工具包中:http ://scikit-
    image.org/

    所以这是我实际上正在寻找的代码:

    from skimage import io, color
    rgb = io.imread(filename)
    lab = color.rgb2lab(rgb)
    

    还应注意,由于实验室性质,srgb->
    lab转换取决于附加参数: whitepoint ,例如:
    Photoshop 使用称为D50的白点(这是icc的标准)
    OpenCV 和skimage使用D65(即srgb的标准)。
    •默认的 Matlab
    实现使用D50(它可以使用其他功能),

    这个很好的常见问题解答通过以下方式对此进行了解释:

    除非有充分的理由使用其他东西,否则应使用D65。
    印刷行业通常使用D50,而摄影行业通常使用D55。
    这些代表了室内(钨丝灯)和日光观看条件之间的折衷。

    您可以通过将RGB转换(0,0,255)为Lab来确定要处理的白点:
    •D50将给您(30,68,-112)
    •D55(30,73,-110)
    •D65(32,79,-108)

    “ D”之后的数字对应于(内部)白点使用的色温:D50 = 5003 K(淡黄色),D65 = 6504 K(淡蓝色)

    我感谢Alex和Roman的回答,因为他们为我指明了正确的方向。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看