3

我正在对图像进行数据挖掘。每个像素都被视为一个数据点。图像读取如下:

im=Image.open('lena.bmp')
im=numpy.array(im)
print im.shape

根据图像是彩色还是灰度,im.shape 是 (10,10, 3) 或 (10,10,1)

之后,将图像展平为特征矩阵,如下所示:

如果 (10,10,3),那么 --->(100,3)

如果 (10,10,1),那么 --->(100,1)

我该如何为此编写多态函数?我目前的做法是:

obs=reshape(im,(im.shape[0]*im.shape[1],1, im.size/(im.shape[0]*im.shape[1])))
4

1 回答 1

3

你可以做:

obs = np.reshape(im, (-1, im.shape[-1]))
于 2013-02-13T21:51:55.810 回答