0

私はこのコードを見つけました:

import PIL
from PIL import Image
from matplotlib import pyplot as plt

im = Image.open('./color_gradient.png')  
w, h = im.size  
colors = im.getcolors(w*h)

def hexencode(rgb):
 r=rgb[0]
 g=rgb[1]
 b=rgb[2]
 return '#%02x%02x%02x' % (r,g,b)

for idx, c in enumerate(colors):
    plt.bar(idx, c[0], color=hexencode(c[1]),edgecolor=hexencode(c[1]))
plot.show()

正確なリンクについては、ここを参照してください- matplotlib を使用して画像の色のヒストグラムをプロットする

私の質問は、軸の意味は何ですか?これらの値からテーブルを生成するにはどうすればよいですか? 写真の緑や赤の割合など、いくつかの統計を実行したいと思います...

ありがとう

4

1 に答える 1

1

PILドキュメントから:

色を取得

im.getcolors() => (count, color) タプルのリストまたは None

im.getcolors(maxcolors) => (count, color) タプルのリストまたは None

参照されたグラフの Y 軸はその色のピクセル数であり、X 軸はグラフ内の (ソートされていない?) 色のリストで構成されます。

于 2013-03-27T10:52:38.800 に答える