#! /usr/bin/env python
# -*- coding: utf-8 -*-
import math
from PIL import Image
NUMBEROFIMAGES = 700
NUMBEROFBINS = 256
SCALE = 256*256*256
def getbin(r,g,b):
color = r*2**16+g*2**8+b
factor = SCALE/NUMBEROFBINS
return color/factor
fout = open('histogram.txt','w')
fout.write(str(NUMBEROFIMAGES)+'\n')
fout.write(str(NUMBEROFBINS)+'\n')
print 'starting...'
for m in range(1,NUMBEROFIMAGES+1):
print 'generating HISTOGRAM for',str(m)+'.jpg'
fout.write(str(m)+'.jpg\n')
im = Image.open(str(m)+'.jpg')
freq = [0 for i in range(NUMBEROFBINS)]
pixels = list(im.getdata())
width, height = im.size
for i in pixels:
r,g,b = i
ind = getbin(r,g,b)
freq[ind] = freq[ind]+1
for i in range(NUMBEROFBINS):
fout.write(str(freq[i]/(width*height*1.0)))
fout.write('\n')
fout.close()
print 'Done!'