我的工作是复制移动伪造检测和卡在其中一种算法。我有一个532x800像素的RGB图像。
运行以下代码时:
import matplotlib.pyplot as plt
from skimage.segmentation import slic, mark_boundaries
from skimage.util import img_as_float
from skimage import io
img_rgb = img_as_float(io.imread(PATH))
segments = slic(image=img_rgb, n_segments=1000)
print(img_rgb.shape)
print(segments.shape)
img_rgb = mark_boundaries(image=img_rgb, label_img=segments)
plt.imshow(img_rgb)
plt.show()它返回:
(532, 800, 3)
(532, 800)这张图片是:图像。
由于输入图像和可变的“段”具有相同的维数(第三通道维除外),
谢谢你的投入。
编辑:我知道它返回一个numpy数组。我想知道它代表了什么。
发布于 2021-04-26 05:09:12
找到了我要找的东西。
这是我写的代码
import matplotlib.pyplot as plt
from skimage.segmentation import slic, mark_boundaries
from skimage.util import img_as_float
from skimage import io
from skimage.transform import resize
import numpy as np
img_rgb = img_as_float(io.imread("apple_32x32.png"))
img_rgb = resize(image=img_rgb, output_shape=(32, 32, 3))
segments = slic(image=img_rgb, n_segments=10)
print(img_rgb.shape)
print(segments.shape)
img_rgb = mark_boundaries(image=img_rgb, label_img=segments)
plt.imshow(img_rgb)
plt.show()
np.savetxt("segments.txt", segments, fmt='%i')它输出这个图像:图像。
这个到控制台上:
(32, 32, 3)
(32, 32)并将变量“段”写入文件‘secments.txt’。文件的内容如下所示:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 3 3 3 3 3 1 1 1 1 1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 0 0 0 0 2 2 3 3 3 3 3 3 1 1 1 1 1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 0 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 1 1 1 1 1 1 1
0 0 0 0 0 0 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 1 1 1 1 1
0 0 0 0 0 0 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 1 1 1 1 1
0 0 0 0 0 0 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 1 1 1 1 1
4 4 4 4 0 0 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 1 1 1 1 1
4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 5 5 5
4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 5 5 5
4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 5 5 5
4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 5 5 5
4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 5 5 5
4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 5 5 5
4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 5 5 5
4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 5 5 5 5
4 4 4 4 4 4 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 5 5 5 5 5
4 4 4 4 4 4 4 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 5 5 5 5 5 5
4 4 4 4 4 4 4 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 5 5 5 5 5 5
4 4 4 4 4 4 4 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 5 5 5 5 5 5
4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 5 5 5 5 5 5 5
4 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 5 5 5 5 5 5 5 5
4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5
4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5如您所见,变量“段”的大小与输入图像的大小相同。但是,分段i,j的每个值都表示图像的像素i、j属于哪一簇。
https://stackoverflow.com/questions/67256685
复制相似问题