コントラストを変更するはずのプログラムがありますが、コントラストを実際に変更していないような気がします。それらを取り除く方法を教えていただけたら、ありがとう。ここ はコードです:PILの画像のコントラストを変更する
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')
そしてここでは、画像とその結果である:
これは、実際のコントラスト方式であれば、私に
これは再生できません。あなたのコードを試してみました。出力イメージは大丈夫です。 https://i.stack.imgur.com/QhR3n.jpg –
あなたのコードには、入力画像を読み込む際に2つの異なる試みがあります。関数本体に 'obama.png'がハードコーディングされているので、' test_image1.jpg'は使用されません。使用していると思われる入力ファイルを使用していますか? –