import numpy as np
from PIL import Image
image_path = f"D:\datasets\dataset_game_objects\\1.jpg"
image = Image.open(image_path)
image_array = np.array(image)
image.show()
我正在运行下面的简单代码来测试我的图像路径是否正确,但我遇到了一个奇怪的错误,我的图像打开了,但当我将其转换为数组时,我得到了以下输出
[[[0 4 0]
[0 4 0]
[0 4 0]
...
[0 0 0]
[1 0 0]
[1 0 0]]
[[0 4 0]
[0 4 0]
[0 4 0]
...
[0 0 0]
[1 0 0]
[1 0 0]]
[[1 3 0]
[1 3 0]
[1 3 0]
...
[0 0 0]
[1 0 0]
[1 0 0]]
...
[[0 0 0]
[0 0 0]
[0 0 0]
...
[2 1 0]
[3 2 0]
[4 3 1]]
[[0 0 0]
[0 0 0]
[0 0 0]
...
[1 0 0]
[1 0 0]
[2 1 0]]
[[0 0 0]
[0 0 0]
[0 0 0]
...
[1 0 0]
[1 0 0]
[1 0 0]]]
所以我尝试了PilToTensor()作为变换
tensor([[[0., 0., 0., ..., 0., 0., 0.],
[0., 0., 0., ..., 0., 0., 0.],
[0., 0., 0., ..., 0., 0., 0.],
...,
[0., 0., 0., ..., 0., 0., 0.],
[0., 0., 0., ..., 0., 0., 0.],
[0., 0., 0., ..., 0., 0., 0.]],
[[0., 0., 0., ..., 0., 0., 0.],
[0., 0., 0., ..., 0., 0., 0.],
[0., 0., 0., ..., 0., 0., 0.],
...,
[0., 0., 0., ..., 0., 0., 0.],
[0., 0., 0., ..., 0., 0., 0.],
[0., 0., 0., ..., 0., 0., 0.]],
[[0., 0., 0., ..., 0., 0., 0.],
[0., 0., 0., ..., 0., 0., 0.],
[0., 0., 0., ..., 0., 0., 0.],
...,
[0., 0., 0., ..., 0., 0., 0.],
[0., 0., 0., ..., 0., 0., 0.],
[0., 0., 0., ..., 0., 0., 0.]]])
所以这是相当奇怪的行为,因为照片都是jpgs
1条答案
按热度按时间wnavrhmk1#
您是否已经考虑到
torchvision.transforms.PILToTensor
方法会改变维度顺序。引用文档:参考:https://pytorch.org/vision/stable/generated/torchvision.transforms.PILToTensor.html
如果是的话,你能不能也分享一下这张照片,我可以试试。
附言:我可以简单地评论这一点,但没有足够的点,在我的个人资料中这样做呢