我正在尝试计算像素的黑色百分比。例如,假设我有一个75%黑色的像素,所以是灰色。我有RGBA值,如何获得黑色水平?
我已经完成获取每个像素并将其替换为新的RGBA值的尝试,并尝试使用一些RGBA逻辑无济于事。
#Gradient Testing here
from PIL import Image
picture = Image.open("img1.png")
img = Image.open('img1.png').convert('LA')
img.save('greyscale.png')
# Get the size of the image
width, height = picture.size
# Process every pixel
for x in range(width):
for y in range(height):
#Code I need here
r1, g1, b1, alpha = picture.getpixel( (x,y) )
r,g,b = 120, 140, 99
greylvl = 1 - (alpha(r1 + g1 + b1) / 765) #Code I tried
我想获得一个新变量,该变量给我一个值,例如0.75,它表示0.75%的黑色像素。
答案 0 :(得分:0)
我不确定您要转换为的“ LA”格式是什么?我会改用“ L”。
尝试以下代码:(确保您使用的是Python 3。)
from PIL import Image
picture = Image.open('img1.png').convert('L')
width, height = picture.size
for x in range(width):
for y in range(height):
value = picture.getpixel( (x, y) )
black_level = 1 - value / 255
print('Level of black at ({}, {}): {} %'.format(x, y, black_level * 100))
这是您要找的吗?