繁体   English   中英

如何在 opencv (python) 中制作 Lab 和 YCrCb 调色板

[英]How to make Lab and YCrCb color palette in opencv (python)

我想在 opencv (python) 中使用轨迹栏制作 Lab 和 YCrCb 调色板。 我得到了这个 RGB 通道的源代码。

https://i.stack.imgur.com/ybVox.png

你能告诉我如何把它改成Lab频道和YCrCb频道吗? 对不起,我只是一个初学者,我真的不知道它。

您可以更改实验室值,而不是更改轨迹栏值。 在您的代码后添加此命令并修改您的代码。 您可以在 imshow 中使用 newimg。

    newimg= cv2.cvtColor(img, cv2.COLOR_Lab2BGR)

您只需要更改图像的色彩空间。 只需确保为每个组件设置正确的范围。 下面是一个带实验室的例子。 a,b 的范围在 -127 到 127 之间,因此减去 127。

import cv2
import numpy as np

def nothing(x):
    pass

img = np.zeros((300,512,3), np.uint8)
cv2.namedWindow('image')

cv2.createTrackbar('L','image',0,100,nothing)
cv2.createTrackbar('A','image',0,255,nothing)
cv2.createTrackbar('B','image',0,255,nothing)

while(1):

    cv2.imshow('image',img)
    k = cv2.waitKey(1) & 0xFF
    if k == 27:
        break

    img= cv2.cvtColor(img, cv2.COLOR_BGR2LAB)
    l = cv2.getTrackbarPos('L','image')
    a = cv2.getTrackbarPos('A','image')-127
    b = cv2.getTrackbarPos('B','image')-127
    img[:] = [l,a,b]





cv2.destroyAllWindows()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM