在python中显示图像补丁

时间:2014-05-16 13:32:17

标签: python image numpy matplotlib computer-vision

我在我的图像上使用了一个滑动窗口,想要显示每个窗口“看着”的图像的补丁。

我首先在此处保存代码:http://www.johnvinyard.com/blog/?p=268sliding_window.py,然后将其导入此代码:

from itertools import izip
import numpy as np
import sliding_window as sw
from skimage.viewer import ImageViewer
from skimage import data, io, filter, color, exposure
from PIL import Image        
from scipy.misc import toimage

io.use_plugin('matplotlib')

image1 = color.rgb2gray(io.imread("PATH_TO_MY_IMAGE\\akaria1.jpg"))
window_size = (100,100)
windows = sw.sliding_window(image1, window_size)

# make an image out of these of these sliding window thingies
for w in windows:
        wi = Image.fromarray(w)
        io.imshow(wi)

但没有图片出现。也没有错误。该程序似乎没有做任何事情就执行。我听说这与Windows上的错误有关?有什么问题?或者是否有另一种显示图像补丁的方法?

如果我在上面的w循环中打印出for,我会看到一些数组,所以我知道sliding window部分没有问题。问题是我是否正确地转换和/或显示给定阵列的图像。

1 个答案:

答案 0 :(得分:0)

我已经找到了问题所在。 看起来我不需要坚持从滑动窗口生成的数组创建图像。像图像一样对待它们就足够了。

for w in windows:
        pl.imshow(w) #no need to use Image.fromarray()
        pl.show()