如何在 opencv 中制作 Lab 和 YCrCb 调色板 (python)
How to make Lab and YCrCb color palette in opencv (python)
我想在 opencv 中使用 trackbar 制作 Lab 和 YCrCb 调色板 (python)。我得到了 RGB 通道的源代码。
https://i.stack.imgur.com/ybVox.png
能告诉我怎么改成Lab频道和YCrCb频道吗?对不起,我只是一个初学者,我真的不知道。
您可以更改实验室值而不是更改轨迹栏值。在您的代码之后添加此命令并针对您的代码进行修改。你可以在 imshow 中使用 newimg。
newimg= cv2.cvtColor(img, cv2.COLOR_Lab2BGR)
您只需更改图像的色彩空间。只需确保为每个组件设置正确的范围即可。下面是 Lab 的示例。 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()
我想在 opencv 中使用 trackbar 制作 Lab 和 YCrCb 调色板 (python)。我得到了 RGB 通道的源代码。
https://i.stack.imgur.com/ybVox.png
能告诉我怎么改成Lab频道和YCrCb频道吗?对不起,我只是一个初学者,我真的不知道。
您可以更改实验室值而不是更改轨迹栏值。在您的代码之后添加此命令并针对您的代码进行修改。你可以在 imshow 中使用 newimg。
newimg= cv2.cvtColor(img, cv2.COLOR_Lab2BGR)
您只需更改图像的色彩空间。只需确保为每个组件设置正确的范围即可。下面是 Lab 的示例。 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()