OpenCV

[OpenCV] 기초 6 : 트랙바

AI 그게 뭔데 2022. 1. 31. 10:15

트랙바(Trackbar)?

프로그램 동작  사용자가 지정한 범위 안의 값을 선택할  있는 컨트롤

OpenCV에서 제공하는 그래픽 사용자 인터페이스(GUI)

 

 

 

✔ 트랙  함수 - cv2.createTrackbar

cv2.createTrackbar(trackbarName, windowName, value, count, onChange)
  • trackbarName : 트랙바 이름
  • windowName : 트랙바를 생성할 창 이름
  • value : 트랙바 위치 초기값
  • count : 트랙바 최댓값. 최솟값은 항상 0
  • onChange : 트랙바 위치가 변경될 때마다 호출할 콜백 함수 이름
                     트랙바 이벤트 콜백 함수는 다음 형식을 따른다.

 

 

💬 실습

- 트랙바 이용 그레이스케 레벨 표현하기

 

import numpy as np
import cv2


def on_level_change(pos):
    value = pos * 16
    if value >= 255:
        value = 255

    img[:] = value
    cv2.imshow('image', img)


img = np.zeros((480, 640), np.uint8)
cv2.namedWindow('image')
cv2.createTrackbar('level', 'image', 0, 16, on_level_change)

cv2.imshow('image', img)
cv2.waitKey()
cv2.destroyAllWindows()