滑动条可以动态的调节图像,是一个很方便的工具。
滑动条创建函数
cv2.createTrackbar(trackbarName, windowName, value, count, onChange)
trackbarName:滑动条名称
windowName:所在窗口名
value:初始值
count:最大值
onChange:回调函数名称
cv2.getTrackbar(trackbarname, winname)
trackbarname:滑动条名称
winname:所在窗口名
代码
import cv2
import numpy as np
def nothing(x):
pass
#创建一副黑色图像
img=np.zeros((300,512,3),np.uint8)
cv2.namedWindow('image')
# cv2.createTrackbar(trackbarName, windowName, value, count, onChange)
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)
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()
结果