2014-11-25 1 views
3

현재 프로그램에서 사용자에게 이미지를 출력하고 사용자 입력에 따라 필요에 따라 이미지를 재조정합니다.Python 용 imshow() 창 업데이트 방법 OpenCV CV2

간단히 말해서 이미지 파일에서 원형 개체를 찾으려고합니다. 나는 Hough Circle Transform을 사용할 것입니다. 그러나 이미지의 내 서클 중 많은 수가 "완벽한 원"이 아니므로 원의 반지름을 "추측"하는 알고리즘을 수행하고 있습니다. 그러나 사용자가 필요에 따라 반지름을 재조정 할 수있게하고 싶습니다.

사용자에게 입력을 요청한 후 사용자 입력을 기반으로하는 방법이 있습니까? imshow()에서 창을 다시 조정하십시오. 지금 imshow()는 cv2.waitKey (0)을 사용할 때까지 실제 윈도우를 표시하지 않습니다.이 시점에서 윈도우가 소멸 될 때까지 사용자 입력을 요청할 수 없습니다.

답변

6

imshow을 (를) 반복해서 호출 할 수 있습니다. 그리고 예, 아마도 waitKey이 필요합니다. 0으로 호출하지 않거나 무기한 대기합니다. 1로 대기하고 단지 1ms를 기다리고 이미지가 다시 그려지는지 확인하십시오. 다음과 같이 시도해보세요.

while True: 
    cv2.imshow('image', img) 
    cv2.waitKey(1) 
    radius = input('Input radius') 
    # recalculate image with new radius here...