通过调节进度条来调整画板颜色。
# -*- coding: utf-8 -*-
import cv2
import numpy as np
def nothing(x):
pass #本例中回调函数不作用,pass 即可
# 创建一副彩色图像,像素为300*513,3中颜色,默认黑色
img=np.zeros((300,512,3),np.uint8)
cv2.namedWindow('image')
cv2.createTrackbar('R','image',0,255,nothing) #创造一个进度条
cv2.createTrackbar('G','image',0,255,nothing)
cv2.createTrackbar('B','image',0,255,nothing)
switch='0:OFF\n1:ON'
cv2.createTrackbar(switch,'image',0,1,nothing) #创造进度条的转换按钮,只有0和1
while(1):
cv2.imshow('image',img)
k=cv2.waitKey(1)&0xFF
if k==27:
break
r=cv2.getTrackbarPos('R','image') #一个是滑动条的名字,一个是放置滑动条的窗口名,第三个参数是滑动条的默认位置,
# 第四个参数是滑动条的最大值,第五个参数是回调函数名,滑动条滑动时,会调用函数
g=cv2.getTrackbarPos('G','image')
b=cv2.getTrackbarPos('B','image')
s=cv2.getTrackbarPos(switch,'image')
if s==0:
img[:]=0
else:
img[:]=[b,g,r]
cv2.destroyAllWindows()
运行后图: