我正在尝试使用skimage.io.imread读取一张RGB图片。但是在读取图片后,我发现图片的shape不正确,print(img.shape)
显示图片的shape是(2,)
。完整的代码如下:
from skimage import io
img = io.imread(path/to/the/image)
print(img.shape)
我还尝试使用opencv的python包读取图像,返回的形状是正确的(高度*宽度*3)。
使用的skimage版本为0.12.3,有人能解释一下我的使用方式是否有问题或者这真的是一个bug吗?
点击链接查看测试图片
编辑1
上传时测试图片被更改了,未更改版本在这里。我还在skimage的github仓库中开了一个issue,结果发现测试图片是由两帧组成的图像,但第二帧为空。你可以将此图像视为"已损坏"的图像。
为了读取正确的图像,您可以使用这个解决方法,img = io.imread(/path/to/the/image, img_num=0)
。
(978L, 2000L, 3L)
的结果。 - Tonechas