opencv.imshow will cause jupyter notebook crash

后端 未结 8 1472
借酒劲吻你
借酒劲吻你 2021-01-31 07:46

I check other question on google or stackoverflow, they are talking about run cv2.imshow in script, but my code run in jupyter notebook.

Here is my configuration:

<
8条回答
  •  庸人自扰
    2021-01-31 08:48

    The following code works fine in Jupyter to show one image

    %matplotlib inline
    import cv2
    from matplotlib import pyplot as plt
    cap = cv2.VideoCapture(videoFName)
    ret, image = cap.read()
    image=cv2.resize(image,None,fx=0.25,fy=0.25,interpolation=cv2.INTER_AREA)
    plt.imshow(image)
    plt.show()
    

    If you want to show the video instead of an image in a separate window, use the following code:

    import cv2
    cap = cv2.VideoCapture(videoFName)
    while cap.isOpened():
        ret, image = cap.read()
        image=cv2.resize(image,None,fx=0.25,fy=0.25,interpolation=cv2.INTER_AREA)
        cv2.imshow('image',image)
    
        k = cv2.waitKey(30) & 0xff # press ESC to exit
        if k == 27 or cv2.getWindowProperty('image', 0)<0:
            break
    cv2.destroyAllWindows()
    cap.release()
    

    Make sure the window name match, otherwise it will not work. In this case I use 'image' as window name.

提交回复
热议问题