web-dev-qa-db-ja.com

pythonで画像を行列に変換します

Pythonを使って画像処理をしたいのですが。

インポートする簡単な方法はありますか.pngグレースケール/ RGB値のマトリックスとしての画像(おそらくPILを使用)?

27
hatmatrix

scipy.misc.imread()は、多くのことに便利なNumpy配列を返します。

32
ptomato

今まで、誰も matplotlib.image について語りませんでした:

import matplotlib.image as img
image = img.imread(file_name)

今、画像は3Dナンピー配列になります

print image.shape

次のようになります:(317, 504, 3)

9
Salvador Dali

im.load in PIL は、行列のようなオブジェクトを返します。

4
Katriel

PyGame image を使用し、 PixelArray を使用してピクセルデータにアクセスできます

2

絶対にやってみて

from matplotlib.image import imread

image  = imread(filename)  

ファイル名は。jpg画像である必要があります。そして、試してみてください

image.shape

これは戻ります:

  • 白黒またはグレースケール画像の場合 An (n、n)行列ここで、nは画像の次元(ピクセル)と0〜255の行列範囲内の値を表します。通常、0は黒と見なされ、255は白と見なされます。 128は灰色になる傾向があります!

  • カラーまたはRGB画像の場合 3チャネルのテンソルをレンダリングします。各チャネルは(n、n)行列であり、各エントリは、画像内の実際の位置での赤、緑、青のレベルをそれぞれ表します。

1
FellerRock

scipy.misc.imread()は非推奨になりました。 imageio.imread代わりにNumpy配列として読み取る

1
anon