为什么imageio.imread有时会返回`imageio.core.util.Array`而不是numpy数组?

问题描述

docs for imageio中,它表示imageio.imread返回一个numpy数组。这是我大部分时间的经验,但是有时它返回一个imageio.core.util.Array对象。 imageio.core.util.arrayimageio documentation中只被提及一次,只是指出imageio.core.Image是它的别名。我没有提供一个小示例,因为我仅在加载某些图像时看到它,但是我发现它发生在scipy image processing guide中。

解决方法

imageio.core.util.Array是NumPy数组的子类,因此可以说imread返回NumPy数组是正确的。您可以在https://github.com/imageio/imageio/blob/efc560c514409e6425e2d7a839b4904b3d918fcf/imageio/core/util.py#L111上找到Array的源代码。