需要帮助更改 cv2 中的颜色,用户在 tinker 中输入
need help to change colour in cv2, with user input in tinker
我有一个颜色列表:
red = (50, 50, 255)
blue = (255, 127, 0)
dark_blue = (127, 20, 0)
green = (127, 255, 0)
最初,我设置输出颜色:
line_colour = red
这在画线时有效:
cv2.line(img, (x3, y3), (x2, y2), line_colour, 5)
我通过 tinker 扩展了程序以从用户那里获取颜色输入:
colour_list = ['red', 'blue', 'dark blue', 'green',
'light green', 'yellow', 'pink', 'black', 'white']
我能得到颜色:
line_clicked.get()
需要帮助更改 cv2.line(......) 以便使用用户选择的颜色绘制线条颜色。
您可以将所有颜色放入字典中,名称作为键,RGB 作为值。
类似于:
color_dict = {'red': (50, 50, 255),
'blue' : (255, 127, 0),
'dark blue': (127, 20, 0)} # etc...
那么如果你有用户选择的颜色:
selected_colour_name = line_clicked.get()
可以使用字典获取RGB颜色并绘制:
line_colour = colour_dict[selected_colour_name]
cv2.line(img, (x3, y3), (x2, y2), line_colour, 5)
我有一个颜色列表:
red = (50, 50, 255)
blue = (255, 127, 0)
dark_blue = (127, 20, 0)
green = (127, 255, 0)
最初,我设置输出颜色:
line_colour = red
这在画线时有效:
cv2.line(img, (x3, y3), (x2, y2), line_colour, 5)
我通过 tinker 扩展了程序以从用户那里获取颜色输入:
colour_list = ['red', 'blue', 'dark blue', 'green',
'light green', 'yellow', 'pink', 'black', 'white']
我能得到颜色:
line_clicked.get()
需要帮助更改 cv2.line(......) 以便使用用户选择的颜色绘制线条颜色。
您可以将所有颜色放入字典中,名称作为键,RGB 作为值。
类似于:
color_dict = {'red': (50, 50, 255),
'blue' : (255, 127, 0),
'dark blue': (127, 20, 0)} # etc...
那么如果你有用户选择的颜色:
selected_colour_name = line_clicked.get()
可以使用字典获取RGB颜色并绘制:
line_colour = colour_dict[selected_colour_name]
cv2.line(img, (x3, y3), (x2, y2), line_colour, 5)