2014-04-13 2 views
4

파이썬과 opencv에서 초보자입니다. 함수의 계층 구조를 제어하기 위해 트랙 바를 만들고 싶습니다. 그러나 소스에 추가하는 방법을 모르겠습니다. 코드 그녀는 코드입니다 : 파이썬을 사용하여 cv2.createTrackbar

import cv2 
import cv2.cv as cv 

cv2.namedWindow("test") 
vc = cv2.VideoCapture(2); 
retVal, frame = vc.read(); 
while True: 
    if frame is not None: 
     imgray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY) 
     ret,thresh = cv2.threshold(imgray,127,255,0) 
     contours, hierarchy = cv2.findContours(thresh,cv2.RETR_EXTERNAL,cv2.CHAIN_APPROX_SIMPLE) 

     cv2.drawContours(frame, contours, -1, (0,255,0), 2) 

     cv2.imshow("test", frame) 

    rval, frame = vc.read() 

    if cv2.waitKey(1) & 0xFF == 27: 
      break 

cv.DestroyAllWindows() 

미리

난 당신이 지금 당신의 문제를 해결 한 희망

답변

5

에 감사합니다,하지만 난 당신이하지 않은 경우에 그것을 설명하려고합니다. 명명 된 창 함수를 사용하여 창을 만든 다음 해당 창에 트랙 바를 연결할 수 있습니다.

cv2.namedWindow('test') 
cv2.createTrackbar('thrs1', 'test', 300, 800, callback) 
# Do whatever you want with contours 
cv2.imshow('test', frame) 

당신은 기능 createTrackbar 여기에 설명 찾을 수 있습니다 : cv2.createTrackbar

콜백 슬라이드가 그것의 위치를 ​​변경 때마다 호출되는 함수에 대한 포인터이다.

관련 문제