cv2.createTrackbar(trackbarname,winname,value,count,onChange)
trackbarname: 트랙바 이름
winname: 윈도우 이름
value: 트랙바 시작 값
count: 트랙바 끝 값
onChange: 트랙바 이벤트 발생시 수행되는 TrackbakCallback
TrackbarCallback::def onChange(x)
cv2.getTrackbarPos(trackbarname,winname) -> retval
retval : 트랙바 내의 현재 위치
import cv2
import numpy as np
def onChange(x):
pass
def trackbar():
img = np.full((200,512,3),255,np.uint8)
cv2.namedWindow('Color_Palette')
cv2.createTrackbar('B','Color_Palette',0,255,onChange)
cv2.createTrackbar('G','Color_Palette',0,255,onChange)
cv2.createTrackbar('R','Color_Palette',0,255,onChange)
switch ='0:OFF\n1:ON'
cv2.createTrackbar(switch,'Color_Palette',0,1,onChange)
while True:
cv2.imshow('Color_Palette',img)
k = cv2.waitKey(1) & 0xFF
if k == 27:
break
b=cv2.getTrackbarPos('B','Color_Palette')
g=cv2.getTrackbarPos('G','Color_Palette')
r=cv2.getTrackbarPos('R','Color_Palette')
s=cv2.getTrackbarPos(switch,'Color_Palette')
if s == 0:
img[:] = 0
else:
img[:] = [b,g,r]
cv2.destroyAllWindows()
trackbar()