尝试使用skimage.transform在Python中旋转简单图片

2024-10-06 11:48:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一张Python 3.X中的简单图片 我可以展示它。 但是,我不能使用skimage.transform.rotate旋转它。

错误是我的“图片”对象没有形状。我已经看到了在rotate命令之后包含的.shape,但是它仍然不起作用。

这是我的密码

import skimage
from skimage import novice

# New, all black picture
pic = skimage.novice.Picture.from_size((600, 600), color=(0, 0, 0))

# Coloring some pixels in white
for i in range(0, len(all_dots) - 1, 2):
    x = all_dots[i]
    y = all_dots[i + 1]
    pic[x, y] = (255, 255, 255)

from skimage.transform import rotate

new_pic = rotate(pic, 180)
# Also new_pic = rotate(pic, 180).shape does not work

new_pic.show()

有什么想法吗?谢谢


Tags: 对象infromimportnew错误图片transform
1条回答
网友
1楼 · 发布于 2024-10-06 11:48:31

可能需要做更多的测试,但乍一看,我认为问题是传递给rotate()函数的第一个参数。

根据撇油文件:http://scikit-image.org/docs/stable/api/skimage.transform.html#rotate

rotate()接受第一个参数一个ndarray格式的图像。你的对象(因为你使用的是“新手”模块,是根据我的快速测试类型。

尝试以下方法:

new_pic = rotate(pic.array, 180)

数组是对存储在新手“Picture”对象中的底层ndarray对象的直接引用

编辑:这给你一个新的核阵列图片!因此,您需要执行以下操作来显示它:

new_pic = rotate(pic.array, 180)

from skimage.io import imshow, show

imshow(new_pic)

show()

相关问题 更多 >