소스 뷰어
마우스 및 트랙바 이벤트 사용¶
import numpy as np
import cv2
def onChange(value):
global image, title
add_value = value -int(image[0][0])
image = image + add_value
cv2.imshow(title, image)
def onMouse(event, x, y, flags, param):
global image, bar_name
if event == cv2.EVENT_RBUTTONDOWN:
if (image[0][0] < 246):
image = image + 10
cv2.setTrackbarPos(bar_name, title, image[0][0])
cv2.imshow(title, image)
elif event == cv2.EVENT_LBUTTONDOWN:
if (image[0][0] >=10):
image = image - 10
cv2.setTrackbarPos(bar_name, title, image[0][0])
cv2.imshow(title, image)
image = np.zeros((300, 500), np.uint8) # 영상 생성
title = "Mouse & Trackbar event"
bar_name = "Brightness"
cv2.imshow(title, image)
cv2.createTrackbar(bar_name, title, image[0][0], 255, onChange) # 트랙바 콜백
cv2.setMouseCallback(title, onMouse)
cv2.waitKey(0)
cv2.destroyAllWindows()