import math from PIL import Image, ImageStat def get_image_light_mean(dst_src): im = Image.open(dst_src).convert('L') stat = ImageStat.Stat(im) return stat.mean[0] def get_image_light_rms(dst_src): im = Image.open(dst_src).convert('L') stat = ImageStat.Stat(im) return stat.rms[0] def get_image_light_mean_sqrt(dst_src): im = Image.open(dst_src) stat = ImageStat.Stat(im) r, g, b = stat.mean return math.sqrt(0.241 * (r ** 2) + 0.691 * (g ** 2) + 0.068 * (b ** 2)) def get_image_light_rms_sqrt(dst_src): im = Image.open(dst_src) stat = ImageStat.Stat(im) r, g, b = stat.rms return math.sqrt(0.241 * (r ** 2) + 0.691 * (g ** 2) + 0.068 * (b ** 2)) def get_image_light_gs(dst_src): im = Image.open(dst_src) stat = ImageStat.Stat(im) gs = (math.sqrt(0.241 * (r ** 2) + 0.691 * (g ** 2) + 0.068 * (b ** 2)) for r, g, b in im.getdata()) return sum(gs) / stat.count[0]