【发布时间】:2020-03-30 07:13:34
【问题描述】:
def normalize_brightness(img: Image) -> Image: """
Normalize the brightness of the given Image img by:
计算图片的平均亮度: - 这可以通过计算每个像素的平均亮度来完成 在 img 中(每个像素的平均亮度是值的总和 像素的红色、蓝色和绿色,除以 3 作为浮点除法) - 图片的平均亮度是所有亮度的总和 像素平均值,除以img的宽度和高度的乘积
找到因子,我们称它为 x,我们可以乘以 平均亮度为 128。
-
将每个像素中的颜色乘以这个因子 x """
img_width, img_height = img.size pixels = img.load() # create the pixel map h = 0 for i in range(img_width): for j in range(img_height): r, g, b = pixels[i, j] avg = sum(pixels[i, j]) / 3 h += avg total_avg = int(h / (img_width * img_height)) x = 128 // total_avg r, g, b = pixels[i, j] pixels[i, j] = (r * x, g * x, b * x) return img我对自己做错了什么感到有些迷茫,有人可以帮忙吗?
【问题讨论】:
-
您能补充一下您遇到的错误或问题吗?
-
还有 OpenCV stackoverflow.com/questions/32609098/…
标签: python python-imaging-library