我有一个应该改变对比度的程序,但我觉得它并没有真正改变对比度.它将某些区域变为红色而我不希望它.如果你能告诉我如何删除它们,谢谢.这是代码:
from PIL import Image
def change_contrast(img, level):
img = Image.open("C:\\Users\\omar\\Desktop\\Site\\Images\\obama.png")
img.load()
factor = (259 * (level+255)) / (255 * (259-level))
for x in range(img.size[0]):
for y in range(img.size[1]):
color = img.getpixel((x, y))
new_color = tuple(int(factor * (c-128) + 128) for c in color)
img.putpixel((x, y), new_color)
return img
result = change_contrast('C:\\Users\\omar\\Desktop\\Site\\Images\\test_image1.jpg', 100)
result.save('C:\\Users\\omar\\Desktop\\Site\\Images\\test_image1_output.jpg')
print('done')
Run Code Online (Sandbox Code Playgroud)
这是图像及其结果:
如果这是实际的对比方法,请随时告诉我
当被要求创建系统XYZ并且您要求通过PHP或Ruby在Python中执行它时,当您需要解释它时,您可以提到哪些主要功能?
当分辨率高于 1 时,如何从 Scale 获取浮点值?如果我将分辨率设置为低于 1,例如 0.9,则 Scale 将给出浮点数。大于1,我只能得到整数。
示例代码:
from tkinter import *
root = Tk()
var = DoubleVar()
scale = Scale(root, variable=var, resolution=3.4)
scale.pack()
label = Label(root, textvariable=var)
label.pack()
root.mainloop()
Run Code Online (Sandbox Code Playgroud)
我在 Windows 7 上使用 Python 3.4.1 64 位。