jupyter中用cv2.imshow打开窗口进行显示后不能点击关闭按钮,否则消息处理机制会导致python挂掉。那么只有用matplotlib来画了,由于numpy和opencv的rgb通道排列是反的,所以做一个转化就可以了,粘贴下面代码里的函数,直接调用就好。
def imshow(im): im = cv.cvtColor(im, cv.COLOR_BGR2RGB) h,w = im.shape[:2] print(im.shape) plt.imshow(im,cmap='gray') plt.show()
如果你还是想用opencv自己的imshow单独开个窗口显示,那么贴下面这部分代码就好,但是注意不要点击右上角的关闭按钮,否则会挂掉,直接按键盘任意一个键就可以了
image = cv2.imread('example/image.png') cv2.imshow("test", image) cv2.waitKey(0) cv2.destroyAllWindows()
比较容易,记录一下。