gpt4 book ai didi

python - 将 PIL 图像转换为 skimage?

转载 作者:太空宇宙 更新时间:2023-11-04 05:51:40 25 4
gpt4 key购买 nike

我的代码中加载了一张图像(非常长且不必要,不会在此处发布),我需要使用 skimage 来检测图像中的 Blob 。但是由于某种原因,我使用的所有图像和尝试都不起作用。

图像在上面的代码中被 PIL 修改,使我试图找到的对象只有白色(255、255、255),而所有其他像素都是黑色的。这段代码只需要识别这些的位置。我尝试了很多不同的方法来让它工作(将它们转换为 numpy 数组,而不是将它们转换为 numpy 数组等。)

我正在按照这些说明进行操作:http://scikit-image.org/docs/dev/auto_examples/plot_blob.html对于基础知识,但它并不是一个真正的教程,更多的是一个例子。

我认为 rgb2gray 函数有问题,因为它只返回 0,而 print(numpy.array(img)) 返回 0 到 1 之间的值,这表明信息丢失是在调用 rgb2gray 时。

这是似乎有问题的代码:

img_gray = rgb2gray(numpy.array(img)) # Convert to numpy array for skimage
print(img_gray)
print(numpy.array(img))
img_blobs = blob_doh(img_gray, threshold=0.01, max_sigma=500)
print(img_blobs)

我该如何解决这个问题?

编辑:

以下是每个图像、数组和列表打印的内容:

[[ 0.          0.          0.         ...,  0.          0.          0.        ] #img_gray
[ 0. 0.00392157 0.01568627 ..., 0. 0. 0. ]
[ 0. 0.01176471 0.05882353 ..., 0. 0. 0. ]
...,
[ 1. 0.99607843 0.96078431 ..., 0. 0. 0. ]
[ 1. 1. 0.98039216 ..., 0. 0. 0. ]
[ 1. 1. 0.99215686 ..., 0. 0. 0. ]]
[[[ 0 0 0] #img
[ 0 0 0]
[ 0 0 0]
...,
[ 0 0 0] #img
[ 0 0 0]
[ 0 0 0]]

[[ 0 0 0] #img
[ 1 1 1]
[ 4 4 4]
...,
[ 0 0 0] #img
[ 0 0 0]
[ 0 0 0]]

[[ 0 0 0] #img
[ 3 3 3]
[ 15 15 15]
...,
[ 0 0 0] #img
[ 0 0 0]
[ 0 0 0]]

...,
[[255 255 255] #img
[254 254 254]
[245 245 245]
...,
[ 0 0 0] #img
[ 0 0 0]
[ 0 0 0]]

[[255 255 255] #img
[255 255 255]
[250 250 250]
...,
[ 0 0 0] #img
[ 0 0 0]
[ 0 0 0]]

[[255 255 255]
[255 255 255]
[253 253 253]
...,
[ 0 0 0]
[ 0 0 0]
[ 0 0 0]]]
[] #img_blobs

最佳答案

这会将图像文件(使用 PIL)读入 scimage:

from skimage import io
img = io.imread("./path/to/image.png")

由于您已经读取了图像并希望自己进行数据转换,因此您可以在此处查看插件作者的操作方式: https://github.com/scikit-image/scikit-image/blob/master/skimage/io/_plugins/pil_plugin.py

关于python - 将 PIL 图像转换为 skimage?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29928528/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com