Jupyter Notebook: 怎么使用cv2.imshow()来显示图像(避免图像卡死或无反应)

先来一个特别简单的操作,在jupyter notebook中,使用cv2 module来读取一张图片,然后进行显示

代码如下:

import cv2
img = cv2.imread("../test_imgs/11.jpeg")
cv2.imshow("test",img)
cv2.waitKey()

运行后显示:
在这里插入图片描述
然后进行退出时,就出现卡死现象
在这里插入图片描述
这其实是使用opencv的一个习惯问题,在c++下,通常会在最后增加一个destroyWindow的操作,在jupyter notebook下也要增加这个操作。

修改后代码如下:

import cv2
img = cv2.imread("../test_imgs/11.jpeg")
cv2.imshow("test",img)
cv2.waitKey()
cv2.destroyAllWindows() # important part!

ps: 问题解决,还有小伙伴会说为什么不使用matplotlib呢?

1.个人的习惯问题

2.对于图片显示,LZ习惯于使用cv2,所以读入图片的通道顺序为bgr,使用plt显示需要进行转换,并且会存在一定色差,所以还是使用cv2.imshow()进行显示。

发布了349 篇原创文章 · 获赞 237 · 访问量 65万+

猜你喜欢

转载自blog.csdn.net/Felaim/article/details/104962969