在Colab,为什么图像不显示在执行文件时,他们在一个相同的代码单元?



在Colab中,下面的代码片段将(如预期的那样)显示指定的图像:

from google.colab.patches import cv2_imshow
import cv2
#from PIL import Image
img = cv2.imread('drive/MyDrive/beagle2.jpg')
cv2_imshow(img)

但是,如果此代码作为Python文件运行,则会出现错误:AttributeError:模块'PIL'没有属性'Image'

为什么有差异?什么是模块PIL"有什么关系吗?我尝试过各种图像显示方法,虽然我可以让它们都在代码单元中工作,但在执行的文件中,它们要么给出错误,图像文件的文本描述,要么什么都没有。

我需要运行我的代码作为文件,以便传递参数。

答案如下:

而不是运行

!python yourScript.py

运行
%run yourScript.py

和图像将显示pyplot,cv2_imshow等。

cf。如何从谷歌Colab的脚本文件与pyplot绘图?

这个解决方案花了很长时间才找到,为什么它的工作对我来说是不清楚的。这只是Colab的另一个没有很好记录的特性吗?

If

from PIL import Image

放在文件的顶部(而且只放在顶部)。),则生成以下图像描述:

& lt; PIL.Image。图片图片模式=RGB size=259x201 at 0x7F05007C5DA0>

但图像本身仍未显示。

相关内容

最新更新