opencv 2.4.2, python 2.7을 사용하고 있습니다. 다음 간단한 코드는 올바른 이름의 창을 만들었지 만 내용이 비어 있고 이미지가 표시되지 않습니다.
import cv2
img=cv2.imread('C:/Python27/03323_HD.jpg')
cv2.imshow('ImageWindow',img)
누구든지이 문제에 대해 알고 있습니까?
답변
imshow()
다음에서만 작동합니다 waitKey()
.
import cv2
img = cv2.imread('C:/Python27/03323_HD.jpg')
cv2.imshow('ImageWindow', img)
cv2.waitKey()
(창을 업데이트하는 데 필요한 전체 메시지 루프가 숨겨져 있습니다.)
답변
여기에서 나를 위해 일한 답을 찾았습니다 .http :
//txt.arboreus.com/2012/07/11/highgui-opencv-window-from-ipython.html
대화 형 ipython 세션을 실행하고 highgui 창을 사용하려면 먼저 cv2.startWindowThread ()를 수행하십시오.
자세히 : HighGUI는 OpenCV 코드에서 이미지와 비디오를 표시하는 단순화 된 인터페이스입니다. 다음과 같이 쉬워야합니다.
import cv2
img = cv2.imread("image.jpg")
cv2.startWindowThread()
cv2.namedWindow("preview")
cv2.imshow("preview", img)
답변
cv2.waitKey(0)
이후에 사용해야합니다 cv2.imshow("window",img)
. 그래야만 작동합니다.
import cv2
img=cv2.imread('C:/Python27/03323_HD.jpg')
cv2.imshow('Window',img)
cv2.waitKey(0)
답변
Python 콘솔 내에서 실행중인 경우 다음을 수행하십시오.
img = cv2.imread("yourimage.jpg")
cv2.imshow("img", img); cv2.waitKey(0); cv2.destroyAllWindows()
그런 다음 Enter이미지 를 누르면 이미지가 성공적으로 닫히고 다른 명령을 계속 실행할 수 있습니다.
답변
나는 같은 문제에 직면했다. IDLE에서 이미지를 읽고를 사용하여 표시하려고 cv2.imshow()
했지만 표시 창이 멈춰 창 pythonw.exe
을 닫으려고 할 때 응답하지 않습니다.
아래 게시물은 이것이 발생하는 이유에 대한 가능한 설명을 제공합니다.
” 기본적으로 IDLE에서이 작업을 수행하지 마십시오. 스크립트를 작성하고 .pyw 확장자로 이름을 지정하고 두 번 클릭하여 셸 또는 Windows의 경우 스크립트에서 직접 실행합니다. IDLE 자체 이벤트간에 충돌이있는 것 같습니다. 루프 및 GUI 툴킷의 것. “
imshow()
스크립트에서 사용 하고 IDLE에서 직접 실행하는 대신 실행하면 작동했습니다.
답변
cv2.waitKey(0)
끝에 추가 하십시오.
답변
나를 위해 0보다 큰 숫자를 가진 waitKey ()가 작동했습니다.
cv2.waitKey(1)
