import cv2
from IPython import display
from PIL import Image
def cv2_imshow(a):
"""A replacement for cv2.imshow() for use in Jupyter notebooks.
Args:
a : np.ndarray. shape (N, M) or (N, M, 1) is an NxM grayscale image. shape
(N, M, 3) is an NxM BGR color image. shape (N, M, 4) is an NxM BGRA color
image.
"""
a = a.clip(0, 255).astype('uint8')
# cv2 stores colors as BGR; convert to RGB
if a.ndim == 3:
if a.shape[2] == 4:
a = cv2.cvtColor(a, cv2.COLOR_BGRA2RGBA)
else:
a = cv2.cvtColor(a, cv2.COLOR_BGR2RGB)
display.display(Image.fromarray(a))
5条答案
按热度按时间5ssjco0h1#
您是否只想查看映像?我不确定您想使用startWindowThread执行什么操作,但是如果您想以最简单的方式安装opencv,请打开映像并查看它,尝试以下操作:
install conda(一个比homebrew更好的opencv软件包管理器)
然后创建CV环境:
激活它并从menpo的频道安装opencv
然后在python中(单击
q
退出):bbuxkriu2#
我已经重现了jupyter内核崩溃的问题。下面是测试环境的设置。
将
cv2.waitKey()
更改为等待Q按下后,问题消失。代码如下:
希望这能有所帮助。
pu82cl6c3#
有同样的问题,我发现没有解决办法为我工作。我能够解决它,只有从谷歌colab工具复制这个功能。它不显示图像在一个新的窗口,但内联在Jupyter笔记本。
klsxnrf14#
我在Mac OS X 10.14.3上有最新版本的Python(2.7.15)。
为什么我们不能将内容保存到一个文件中,然后使用命令
python filename.py
运行它呢?它仍然是一样的,而且它可以工作!!我测试的示例代码是:
希望能有所帮助!
huwehgph5#
这对我来说很有效。窗口关闭了,程序可以继续。美中不足的是窗口图标仍然在停靠栏中。