рд╣реЗрд▓реЛ, рд╣реЗрдмреНрд░!
рд▓реЗрдЦ рдХреЗ рдЖрдзрд╛рд░ рдкрд░
рд╣рдо рдЦреЗрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рдмреЙрдЯ рд▓рд┐рдЦ рд░рд╣реЗ рд╣реИрдВ "рдЕрдВрддрд░ рдЦреЛрдЬреЗрдВ" рдПрдХ рд╡рд┐рдЪрд╛рд░ рдХрдВрдкреНрдпреВрдЯрд░ рд╡рд┐рдЬрд╝рди рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рджрд┐рдП рдЧрдП рдЪрд┐рддреНрд░ рдореЗрдВ рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреА рд╡рд╕реНрддреБрдУрдВ рдХреА рдЦреЛрдЬ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдХрдЯ рд╣реБрдЖ рд╣реИред
рд╡рд┐рд╡рд░рдг - рдХрдЯреМрддреА рдХреЗ рддрд╣рддред
рдХрд╛рд░реНрдп рдХрд╛ рд╡рд┐рд╡рд░рдгред
рддреГрддреАрдп-рдкрдХреНрд╖ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рдХрдИ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдЙрддреНрдкрдиреНрди рд╣реЛрддреА рд╣реИ - рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╡реАрдбрд┐рдпреЛ рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ, рдЬрдм, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЕрд▓рд╛рд░реНрдо рдХреЛ рдЪрд╛рд▓реВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬрдм рдПрдХ рдЕрдирдзрд┐рдХреГрдд рд╡реНрдпрдХреНрддрд┐ рд░рд╛рдд рдореЗрдВ рдПрдХ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИред
рдЗрд╕реА рд╕рдордп, рд╕рд┐рдЧреНрдирд▓ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдХреА рдореБрдЦреНрдп рдХрдард┐рдирд╛рдИ рдпрд╣ рд╣реИ рдХрд┐ рдкрдВрдЬреАрдХрд░рдг рдХреА рд╕реНрдерд┐рддрд┐ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╣реЛ рд╕рдХрддреА рд╣реИ - рдпрд╣ рджрд┐рди рдХреЗ рд╕рдордп, рдХрдорд░реЗ рдХреЗ рдзреБрдПрдВ, рд░рд┐рдХреЙрд░реНрдбрд░ рдХреА рд╕реНрдерд┐рддрд┐ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд▓реЗрдВрд╕ рдзреВрд▓ рднрд░реА рд╣реИ) рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдПрдХ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рддреГрддреАрдп-рдкрдХреНрд╖ рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЪрд╛рд╣реЗ рдЙрди рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛ рдЬрд┐рд╕рдореЗрдВ рд╢реВрдЯрд┐рдВрдЧ рдХреА рдЬрд╛рддреА рд╣реИред
рд░реВрдкрд╛рддреНрдордХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╕реЗ рдЬрд╛рдирдХрд╛рд░реА
рдмреЗрд╢рдХ, рдПрдХ рдЧрдгрд┐рддреАрдп рдкрд░рд┐рдЪрдп рдХреЗ рдмрд┐рдирд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛!
рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВ
f(x):X тЖТ R
рдЫрд╡рд┐ред рд╣рдорд╛рд░реА рд╕рдорд╕реНрдпрд╛ рдореЗрдВ,
f(x)
рдХрд╛ рдорд╛рди рдкрд┐рдХреНрд╕реЗрд▓ рдХреА рдЪрдордХ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реЛрдЧрд╛ (0 рд╕реЗ 255 рддрдХ)ред
L рд╕рднреА рдЫрд╡рд┐рдпреЛрдВ рдХрд╛ рд░реИрдЦрд┐рдХ рд╕реНрдерд╛рди рд╣реЛ,
F рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдЧреНрд░рд╣рдг рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА Borel рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рд╡рд░реНрдЧ рд╣реЛ, F
f рдХрд╛ рдПрдХ рдЙрдкрд╡рд░реНрдЧ рд╣реЛ: F
f = {
F :
F : FтКЧf (тЛЕ)} L}ред
рдФрд░ рдЕрдВрдд рдореЗрдВ, рд╣рдо
рдЫрд╡рд┐ рдЖрдХреГрддрд┐ рдХреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЕрд╡рдзрд╛рд░рдгрд╛
рдХрд╛ рдкрд░рд┐рдЪрдп рджреЗрддреЗ рд╣реИрдВ: V
f = {F :
f : F we F
f } image L. рдЗрд╕рд▓рд┐рдП, рдЫрд╡рд┐ рдЖрдХреГрддрд┐ рдХреЛ рдЫрд╡рд┐ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдЕрдзрд┐рдХрддрдо рдЖрдХреНрд░рдордгрдХрд╛рд░реА рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдордЭрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдЕрд╡рд▓реЛрдХрди рдХреА рд╢рд░реНрддреЛрдВ рдХреЛ рдмрджрд▓рддреЗ рд╕рдордп, рд╢реВрдЯрд┐рдВрдЧ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдмрджрд▓рддреЗ рд╣реБрдПред рд╣рдо рдЫрд╡рд┐рдпреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддреЗ рд╕рдордп рдкреНрд░рдкрддреНрд░ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред
рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо
рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд╛ рдореБрдЦреНрдп рд╡рд┐рдЪрд╛рд░ рдЫрд╡рд┐ рдХреЗ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЕрдзрд┐рдХрддрдо рдЖрдХреНрд░рдордг рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рдирд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рд╣рдо рдлрд┐рд░ рдЖрдиреЗ рд╡рд╛рд▓реА рдЫрд╡рд┐рдпреЛрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░реЗрдВрдЧреЗред рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкрд╛рдпрдерди рдореЗрдВ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
from PIL import Image
- 1. рдЗрдирдкреБрдЯ (рд░рдВрдЧ) рдЫрд╡рд┐ рдХреЛ рдЧреНрд░реЗ рдореЗрдВ рдмрджрд▓реЗрдВ - рд░рдВрдЧ рдХреЗ рдмрдЬрд╛рдп рдкреНрд░рддреНрдпреЗрдХ рдкрд┐рдХреНрд╕реЗрд▓ рдХреЛ рд░реЗрдВрдЬ рдореЗрдВ рдПрдХ рдЪрдордХ рдорд╛рди рдкреНрд░рджрд╛рди рдХрд░реЗрдВ
[0,255]
im1 = Image.open('./img/test1.jpg')
- 2. рд╣рдо рдЫрд╡рд┐ рдХрд╛ рдПрдХ рдЯреБрдХрдбрд╝рд╛-рдирд┐рд░рдВрддрд░-рд╕реНрдерд╛рдкрди рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВред рдирд┐рд░рдВрддрд░ рдЪрдордХ рдХреЗ рдХрдИ рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рдЗрдирдкреБрдЯ (рдЪрд┐рдХрдиреА) рдЫрд╡рд┐ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред
g = i N i = 1 A i c i (x),
рдЬрд╣рд╛рдБ i (x) рдХреНрд╖реЗрддреНрд░ A рдХреЗ рд▓рд┐рдП рдЪрдордХ рдорд╛рди рд╕реНрдерд┐рд░ рд╣реИред
for i in xrange(p1.size[1]):
рд╣рдо рдЪрдордХ рдорд╛рдиреЛрдВ рдХреЗ рдЕрдВрддрд░рд╛рд▓ рдХреЛ рд╕рдорд╛рди рдЕрдВрддрд░рд╛рд▓ [0, ..., a_1], ..., [a_m, ..., 255] рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдлрд┐рд░ рд╣рдо рдкреНрд░рддреНрдпреЗрдХ рд╕рдореВрд╣ рдХреЗ рд▓рд┐рдП рдФрд╕рдд рдЪрдордХ рдорд╛рди рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред рдЙрд╕рдХреЗ рдмрд╛рдж, рдпрд╣ рдХреЗрд╡рд▓ рдЫрд╡рд┐ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд╛рдиреЗ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдкрд┐рдХреНрд╕реЗрд▓ рдХреЛ рдЙрд╕ рд╕рдореВрд╣ рдХреЗ рд▓рд┐рдП рдФрд╕рдд рдЪрдордХ рдорд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░рд╣рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдпрд╣ рдЧрд┐рд░рддрд╛ рд╣реИред рдирддреАрдЬрддрди, рд╣рдо рдирд┐рд░рдВрддрд░ рдЪрдордХ рдП 1 , ..., рдП рдПрди рдХреЗ рдХрдИ рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рдЗрдирдкреБрдЯ рдЫрд╡рд┐ рдХрд╛ рдПрдХ рд╡рд┐рднрд╛рдЬрди рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ ред рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ, рд╣рдо рдирд┐рд░рдВрддрд░ рдЪрдордХ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрдЯ рдХреА рд╢рдХреНрддрд┐ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ (рдХреНрдпреЛрдВрдХрд┐ рд╕реЗрдЯ рдЕрд╕рддрдд рд╣реИ - рд╢рдХреНрддрд┐ рдкрд┐рдХреНрд╕рд▓ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИ)ред рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдПрдХ рдЙрджрд╛рд╣рд░рдг рдкрд░ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:
рдЗрдирдкреБрдЯ рдЫрд╡рд┐

рдЯреБрдХрдбрд╝реЗ рдЯреБрдХрдбрд╝реЗ рдирд┐рд░рдВрддрд░ рд╕рдиреНрдирд┐рдХрдЯрди

рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдЯреБрдХрдбрд╝реЗ рдЯреБрдХрдбрд╝реЗ рдореЗрдВ рдирд┐рд░рдВрддрд░ рд╕рдиреНрдирд┐рдХрдЯрди рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХрд╛ рд░реВрдк рд╣реИ ред
- 3. рдЕрдм рдЗрдирдкреБрдЯ рдЗрдореЗрдЬ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ (рдЬрд┐рд╕ рдкрд░ рд╣рдореЗрдВ рдерд░реНрдб-рдкрд╛рд░реНрдЯреА рдПрд▓рд┐рдореЗрдВрдЯ рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛)ред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдлрд╝реЙрд░реНрдо рдкрд░ рдЗрдирдкреБрдЯ рдЫрд╡рд┐ рдХрд╛ рдкреНрд░рдХреНрд╖реЗрдкрдг рдЦреЛрдЬреЗрдВ:
P V g f = тИС N i = 1 = ( тИИ x sk fA i f (x sk )) ((| | A | i ) i c i (x) |
рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рд╣рдо рдЗрдирдкреБрдЯ рдЗрдореЗрдЬ рдХреЗ рд▓рд┐рдП рдЧрдгрдирд╛ рдХрд░рддреЗ рд╣реИрдВ, рдкреНрд░рддреНрдпреЗрдХ рдЯреБрдХрдбрд╝реЗ рдХреЗ рдирд┐рд░рдВрддрд░ рдЖрдХрд╛рд░ рдХреЗ рддрддреНрд╡ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдЪрдордХ рдореВрд▓реНрдпред
def projector(img,split_form): p1 = img.convert('L');pix = p1.load();summ = [0]*len(split_form[2][1]); for l in xrange(len(split_form[2][1])):
- 4. рдпрд╣ рдмрд╛рдд рд╣реИ! рдЬрдм рд╣рдордиреЗ рдЕрдкрдиреЗ рдлреЙрд░реНрдо рдкрд░ рдкреНрд░реЛрдЬреЗрдХреНрд╢рди рдХреА рдЧрдгрдирд╛ рдХреА рд╣реИ, рдЙрд╕рдХреЗ рдмрд╛рдж рд╣рдорд╛рд░реЗ рдлреЙрд░реНрдо рд╕реЗ рдкрд┐рдХреНрд╕реЗрд▓ рджреНрд╡рд╛рд░рд╛ рдлреЙрд░реНрдо рдкрд┐рдХреНрд╕реЗрд▓ рдкрд░ рдирдИ рдЫрд╡рд┐ рдХреЗ рдкреНрд░рдХреНрд╖реЗрдкрдг рдХреЛ рдХрдо рдХрд░рдирд╛ рд╣реИ (рдПрдХ рдмрд╛рд╣рд░реА рд╡рд╕реНрддреБ рдХреЗ рдмрд┐рдирд╛ рдПрдХ рдЯреБрдХрдбрд╝рд╛-рд╕реНрдерд┐рд░ рдЫрд╡рд┐ рдХреА рдореВрд▓ рдЫрд╡рд┐)ред
P = рдЬреА - рдкреА рд╡реА рдЬреА рдПрдл
рдЫрд╡рд┐рдпреЛрдВ рдХрд╛ рдЕрдВрддрд░ рд╡рд╛рдВрдЫрд┐рдд рд╡рд╕реНрддреБ рд╣реЛрдЧреАред
def differ(i1,i2): map1 = i1.load(); map2 = i2.load() for i in xrange(i1.size[1]):
рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ, рд╣рдо рдореВрд▓ рдЫрд╡рд┐ рдореЗрдВ рдПрдХ рдмрд╛рд╣рд░реА рд╡рд╕реНрддреБ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░реЗрдВрдЧреЗред рдФрд░ рдЗрд╕реЗ рдФрд░ рдЧрд╣рд░рд╛ рдХрд░реЗрдВ рддрд╛рдХрд┐ рдпрд╣ рдХрд╛рдлреА рд╕рд░рд▓ рди рд╣реЛ (рд╣рдо рдкрдВрдЬреАрдХрд░рдг рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░реЗрдВрдЧреЗ)ред

рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдкрд░рд┐рдгрд╛рдо:

рд╣реБрд░реНрд░реЗ! рд╣рдореЗрдВ рдПрдХ рд╕рдЬрд╛рддреАрдп рдкреГрд╖реНрдарднреВрдорд┐ рдкрд░ рдПрдХ рддреГрддреАрдп-рдкрдХреНрд╖ рдСрдмреНрдЬреЗрдХреНрдЯ рдорд┐рд▓рд╛ - рдЗрд╕реЗ рдЪреБрдирдирд╛ рдФрд░ рдореВрд▓ рдЫрд╡рд┐ рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рдХрд┐рд╕реА рд╡рд┐рджреЗрд╢реА рд╡рд╕реНрддреБ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЧрдИ рд╣реИред
рдирд┐рд╖реНрдХрд░реНрд╖
рдирд┐рд╖реНрдХрд░реНрд╖: рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рд░реВрдкрд╛рддреНрдордХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ - рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдкрдВрдЬреАрдХрд░рдг рд╢рд░реНрддреЛрдВ рдХреЗ рддрд╣рдд рдЫрд╡рд┐ рдореЗрдВ рдПрдХ рд╡рд┐рджреЗрд╢реА рд╡рд╕реНрддреБ рдХрд╛ рдЪрдпрди,
рдкрд╛рдпрдерди рдореЗрдВ рдПрдХ
рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рднреА рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рд╕рд╛рд╣рд┐рддреНрдп рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛
- 1. рдмрд┐рддреБрдХреЛрд╡ рдпреВ.рдЖрдИ. рдХрдВрдкреНрдпреВрдЯрд░ рдЬреНрдпрд╛рдорд┐рддрд┐ рдкрд░ рд╡реНрдпрд╛рдЦреНрдпрд╛рди; MAI, 2012
- 2. рдкрд╛рдЗрдЯрд┐рд╡ рдпреВ.рдкреА. рд░реВрдкрд╛рддреНрдордХ рдЫрд╡рд┐ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рддрд░реАрдХреЗ; рдореЙрд╕реНрдХреЛ, рдлрд╝рд┐рдЬрд╝рдореИрдЯрд▓рд┐рдЯ 2010
рдкреА.рдПрд╕.
рдореБрдЭреЗ рдмрддрд╛рдУ рдХрд┐ рд╕реВрддреНрд░ рдХреИрд╕реЗ рд▓рд┐рдЦреЗрдВ? рдореИрдВ рд▓реЗрдЦреЛрдВ рдореЗрдВ рд▓реЗрдЯреЗрдХреНрд╕ рдХреА рд╕реБрдВрджрд░рддрд╛ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ!