Guest User

Untitled

a guest
Jan 29th, 2018
155
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.72 KB | None | 0 0
  1. import sys
  2. import struct
  3.  
  4. import time
  5. s = time.time()
  6. with open(sys.argv[1], 'rb') as f:
  7.     data = f.read()
  8.  
  9. r, g, b = 0, 0, 0
  10. r, g, b = 1, 1, 1
  11. w=4192
  12. h=3104
  13.  
  14. pixels = struct.unpack("<%dH" % (w*h), data)
  15. d = time.time()
  16. for i in range(h):
  17.     if i % 2 == 0:
  18.         r += sum(pixels[i*w:(i+1)*w:2])
  19.         g += sum(pixels[i*w+1:(i+1)*w+1:2])
  20.     else:
  21.         g += sum(pixels[i*w:(i+1)*w:2])
  22.         b += sum(pixels[i*w+1:(i+1)*w+1:2])
  23.  
  24.  
  25. r=r/w/h*4
  26. g=g/w/h*2
  27. b=b/w/h*4
  28. m=(r+g+b)/3
  29. e = time.time()
  30. print('\rR', round(r, 2), round(m/r, 3), round(g/r, 3))
  31. print('G', round(g, 2), round(m/g, 3), '1.000')
  32. print('B', round(b, 2), round(m/b, 3), round(g/b, 3))
  33. print("total time: %.3f seconds. Data read/prepare: %.3f" % ((e - s), (d - s)))
Advertisement
Add Comment
Please, Sign In to add comment