我需要使用Python调整屏幕亮度/对比度。 它将是我的代码中的一个函数,它将在用户按下某个键时运行,否则脚本不会改变亮度/对比度。 我怎样才能在Python中创建它?
非常感谢
答案 0 :(得分:1)
这是特定于操作系统的,如果没有特定于系统的绑定,可能无法实现。
答案 1 :(得分:1)
答案 2 :(得分:-3)
我使用等式定义here。
因此,要同时调整对比度和亮度,请对每个像素进行调整:
new_value = (old_value - 0.5) × contrast + 0.5 + brightness
Bellow一个很好的功能来完成这项工作:
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()
我认为这个功能应该更好,关于参数。实际上,没有限制,我应该更新代码以百分比形式创建参数。