рдЬрдЯрд┐рд▓ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдкрд░ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдорд╛рдирдХ рдпреЛрдЬрдирд╛рдУрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд╛рдпрдХ рд╣реИ, рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдореИрдВ рд╢реБрд░реВ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВред
рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП, рд░рдВрдЧреЛрдВ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕реЗрдЯреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдЫрд╡рд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛:

рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рджреЛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореЙрдбреНрдпреВрд▓ рдЪрд╛рд╣рд┐рдП:
from PIL import Image, ImageDraw
рдЖрд░рд╛рдорджрд╛рдпрдХ рднрд╡рд┐рд╖реНрдп рдХреЗ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдЙрдкрдХрд░рдг рд╕реЗрдЯ рдХрд░реЗрдВ:
image = Image.open('test.jpg')
рдЪрд▓рд┐рдП рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ
рд╣рдо RGB рдлреЙрд░реНрдореЗрдЯ рдореЗрдВ рдЗрдореЗрдЬ рдкреНрд░реЛрд╕реЗрд╕ рдХрд░реЗрдВрдЧреЗред PIL рд╕реНрд╡рд░реВрдкреЛрдВ 1, L, P, RGB, RGBA, CMYK, YCbCr, LAB, HSV, I, F рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред
рдЫрд╡рд┐ рдореЗрдВ рдкрд┐рдХреНрд╕реЗрд▓ рдорд╛рди рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╕реЗрдЯ рдХрд┐рдП рдЧрдП рд╣реИрдВ:
(x, y), (рд▓рд╛рд▓, рд╣рд░рд╛, рдиреАрд▓рд╛) , рдЬрд╣рд╛рдВ
x, y рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рд╣реИрдВ, рдФрд░ RGB рдХреЗ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдорд╛рди 0 рд╕реЗ 255 рддрдХ рдХреЗ рд╣реИрдВред рдпрд╛рдиреА, рд╣рдо
8-рдмрд┐рдЯ рдЫрд╡рд┐ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ
ред рдЧреНрд░реЗ рдХреА рдЫрд╛рдпрд╛
рдПрдХ рдЧреНрд░реЗ рдЯрд┐рдВрдЯ рд╕рднреА рд░рдВрдЧ рдкрдЯреНрдЯрд┐рдпреЛрдВ рдХреА рд╕рдорд╛рдирддрд╛ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рддреАрдиреЛрдВ рдмрд┐рдВрджреБрдУрдВ рдореЗрдВ рдЕрдВрдХрдЧрдгрд┐рддреАрдп рдорд╛рдзреНрдп рдорд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
for x in range(width): for y in range(height): r = pix[x, y][0]

рдереЛрдбрд╝рд╛ рдмрд╛рд░реАрдХрд┐рдпреЛрдВрдорд╛рдирд╡ рдЖрдБрдЦ рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЛрдВ рд╕реЗ рд░рдВрдЧреЛрдВ рдХрд╛ рдПрдХ рдЕрд▓рдЧ рд╕реНрдкреЗрдХреНрдЯреНрд░рдо рдорд╛рдирддреА рд╣реИред рдХреЛрдИ рднреА рдЖрдкрдХреЛ рд╕рдЯреАрдХ рд╕реВрддреНрд░ рдирд╣реАрдВ рджреЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рд░рдВрдЧреЛрдВ рдХреА рдзрд╛рд░рдгрд╛ рд╣рд░ рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рдПрдХ рддрд░рд╣ рд╕реЗ рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ рд╣реЛрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдк рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк
рдпрд╣рд╛рдВ рдФрд░
рдпрд╣рд╛рдВ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред
рдЙрд▓рдЯ рджреЗрдирд╛
рд╡рд░реНрддрдорд╛рди рд░рдВрдЧ 255 рд╕реЗ рдШрдЯрд╛рдХрд░ рдЙрд▓рдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
for x in range(width): for y in range(height): r = pix[x, y][0] g = pix[x, y][1] b = pix[x, y][2] draw.point((x, y), (255 - r, 255 - g, 255 - b))

рдЧреНрд░реЗрд╕реНрдХреЗрд▓ рдЙрд▓рдЯрд╛
рджреЛ рдкрд┐рдЫрд▓реЗ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреЛ рдорд┐рд▓рд╛рдХрд░, рдЖрдк рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ:
for x in range(width): for y in range(height): r = pix[x, y][0] g = pix[x, y][1] b = pix[x, y][2] sr = (r + g + b) // 3 draw.point((x, y), (255 - sr, 255 - sr, 255 - sr))

рдЪрдпрдирд╛рддреНрдордХ рдЧреНрд░реЗрд╕реНрдХреЗрд▓ рдЙрд▓рдЯрд╛
рдЗрд╕ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдереНрд░реЗрд╢реЛрд▓реНрдб рдорд╛рди рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдореИрдВ 100 рдореЗрдВ рд▓реЗ рдЬрд╛рдКрдВрдЧрд╛:
for x in range(width): for y in range(height): r = pix[x, y][0] g = pix[x, y][1] b = pix[x, y][2] if (r+g+b)>100:

рдирд┐рд╖реНрдХрд░реНрд╖
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд▓реЗрдЦреЛрдВ рдореЗрдВ, рдореИрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рдХреИрд╕реЗ рдЕрдзрд┐рдХ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдЫрд╡рд┐ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдХреЗ рдЗрд╕реЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдЫрд╡рд┐ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдк
рдбреАрдПрдлрдПрд╕ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рднреА рджрд┐рдЦрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред