【发布时间】:2011-06-21 06:41:52
【问题描述】:
我想使用 Python 调整屏幕亮度和对比度。有谁知道可以做到这一点的图书馆?如何使用键盘快捷键触发脚本?
【问题讨论】:
标签: python contrast screen-brightness
我想使用 Python 调整屏幕亮度和对比度。有谁知道可以做到这一点的图书馆?如何使用键盘快捷键触发脚本?
【问题讨论】:
标签: python contrast screen-brightness
这是特定于操作系统的,如果没有特定于系统的绑定,可能无法实现。
【讨论】:
我使用公式定义here。
所以,要同时调整对比度和亮度,对每个像素做:
new_value = (old_value - 0.5) × contrast + 0.5 + brightness
下面是一个很好的功能来完成这项工作:
def brightness_contrast(image, brightness = -100, contrast = 300):
def vect(a):
c = contrast
b = 100 * brightness
res = ((a - 127.5) * c + 127.5) + b
if res < 0 :
return 0
if res > 255:
return 255
return res
transform = np.vectorize(vect)
data = transform(fromimage(image)).astype(np.uint8)
return toimage(data)
你可以这样使用它:
img = Image.open("calibration/gland_89_0.jpg")
brightness_contrast(img, brightness=-20, contrast=200).show()
我认为这个函数应该更好,关于参数。实际上,没有限制,我应该更新代码以百分比为参数。
【讨论】: