画像内の各ピクセルの RGB 値を 1 次元配列にインポートする方法は?
私は次のものを使用しています:
from PIL import Image
im = Image.open("bride.jpg")
pix = im.load()
print pix[x,y]
これは、反復不可能な 2 次元配列にインポートします。私はこれと同じことをしたいのですが、1次元配列です。
画像内の各ピクセルの RGB 値を 1 次元配列にインポートする方法は?
私は次のものを使用しています:
from PIL import Image
im = Image.open("bride.jpg")
pix = im.load()
print pix[x,y]
これは、反復不可能な 2 次元配列にインポートします。私はこれと同じことをしたいのですが、1次元配列です。
次のように、ピクセルを1D配列にフラット化できます。
width, height = im.size
pixels = [pix[i, j] for i in range(width) for j in range(height)]
numpy を使用している場合は簡単で、画像を読み込む必要はありません。
from PIL import Image
import numpy as np
im = Image.open("bride.jpg")
pix_flatiter = np.asarray(im).flat # is an iterable
配列全体をロードする場合は、次のようにします。
pix_flat = np.asarray(im).flatten() # is an array