2016-10-08 2 views
1

У меня есть вопросы, которые меня топят прямо сейчас. Я должен уменьшить яркость нижней половины изображения. Это то, что я использую до сих пор. Это уменьшает яркость верхней половины моей фотографии. Как я могу заставить его уменьшить нижнюю половину? Я знаю, что где-то в третьей строке я просто не могу понять. Любая помощь будет принята с благодарностью!Уменьшение яркости в нижней половине фотографии

def bottomHalf(image): 

    pixels = getPixels(image) 

    for index in range(0,len(pixels)/2): 

    pixel=pixels[index] 

    value1=getRed(pixel) 

    setRed(pixel,value1*.8) 

    value2=getGreen(pixel) 

    setGreen(pixel,value2*.8) 

    value3=getBlue(pixel) 

    setBlue(pixel,value3*.8) 

    show(image) 
+0

'для индекса в диапазоне (len (pixels)/2, len (pixels) -1)' –

+0

@MarkSetchell 'range' всегда оставляет окончательный номер, поэтому нет необходимости в' -1'. –

+0

Помог ли мой ответ решить вашу проблему? Если да, пожалуйста, подумайте о том, чтобы принять его как ваш ответ - нажав полый зеленый галочку/галочку рядом с подсчетом голосов. Если нет, скажите, пожалуйста, что не сработало, чтобы я или кто-то еще помог вам дальше. Благодарю. http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work/5235#5235 –

ответ

2

Я считаю, что вам нужно сделать половину пикселей, «но начиная с половины пути через них, а не с самого начала», если я могу поставить его, как это!

Итак, замените это:

for index in range(0,len(pixels)/2): 

с этим:

for index in range(len(pixels)/2,len(pixels)): 

Благодаря @MarkRansom для коррекции.

Смежные вопросы