何千もの画像があり、写真ではないものや「興味深い」ものを取り除く必要があります。
たとえば、「面白くない」画像は、すべて 1 つの色、ほとんどが 1 つの色、または単純なアイコン/ロゴである場合があります。
解決策は完璧である必要はありません。最も興味のない画像を削除するのに十分なだけです。
これまでのところ、私の最善のアイデアは、ピクセルのランダムなサンプリングを行い、それらを使って何かをすることです。
何千もの画像があり、写真ではないものや「興味深い」ものを取り除く必要があります。
たとえば、「面白くない」画像は、すべて 1 つの色、ほとんどが 1 つの色、または単純なアイコン/ロゴである場合があります。
解決策は完璧である必要はありません。最も興味のない画像を削除するのに十分なだけです。
これまでのところ、私の最善のアイデアは、ピクセルのランダムなサンプリングを行い、それらを使って何かをすることです。
ダンフェは私を殴りました。画像エントロピーを計算するための私の方法は次のとおりです。
import Image
from math import log
def get_histogram_dispersion(histogram):
log2 = lambda x:log(x)/log(2)
total = len(histogram)
counts = {}
for item in histogram:
counts.setdefault(item,0)
counts[item]+=1
ent = 0
for i in counts:
p = float(counts[i])/total
ent-=p*log2(p)
return -ent*log2(1/ent)
im = Image.open('test.png')
h = im.histogram()
print get_histogram_dispersion(h)