рд╕реНрд▓рд┐рдЯ рд╢реВрдЯрд┐рдВрдЧ: рдЕрдЬрдЧрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдкрдХреНрд╖рд┐рдпреЛрдВ рдХреЛ рдкрдХрдбрд╝рдирд╛



рдХреБрдЫ рдорд╣реАрдиреЗ рдкрд╣рд▓реЗ рд╕реНрд▓рд┐рдЯ рд╢реВрдЯрд┐рдВрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд▓реЗрдЦ рдкрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВрдиреЗ рджреГрдврд╝рддрд╛ рд╕реЗ рдПрдХ рдЫреЛрдЯреА рд╕реА рдЙрдкрдпреЛрдЧрд┐рддрд╛ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рдЬрд┐рд╕рд╕реЗ рдЖрдк рд╕реНрд▓рд┐рдЯ рдлреЛрдЯреЛ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдбрд┐рдмреНрдмреЗ рдХреЛ рд╣рд┐рд▓рд╛рддреЗ рд╣реБрдП, рдореБрдЭреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рдВрд╕рд╛рдзрди рдорд┐рд▓реЗ: рдкрд╛рдпрдерди рдЯреНрд░реЗрдирд┐рдВрдЧ рдХреЛрд░реНрд╕ , рдПрдХ рдкреБрд░рд╛рдирд╛ рд▓реИрдкрдЯреЙрдк, рдПрдХ GoPro рдХреИрдорд░рд╛, рдХрдИ рдШрдВрдЯреЗ рдЦрд╛рд▓реА рд╕рдордп, рдорд╛рд░реНрдЪ рдХрд╛ рдорд╣реАрдирд╛ рдФрд░ рдПрдХ рдмрд░реНрдб рдлреАрдбрд░ред

рдлреАрдбрд░ рдкрд░ рд╕реНрддрди рдХреЗ рднрд╛рд░реА рдЯреНрд░реИрдлрд╝рд┐рдХ рдХреЛ рджреЗрдЦрдХрд░, рдореБрдЭреЗ рдХреЛрдИ рд╕рдВрджреЗрд╣ рдирд╣реАрдВ рдерд╛ рдХрд┐ рдЙрдбрд╝рд╛рди рдореЗрдВ рдПрдХ рдЯрд╛рдЗрдЯрди рдХреА рд╢реВрдЯрд┐рдВрдЧ "рджреЛ рдмрд╛рдЗрдЯреНрд╕ рднреЗрдЬрдиреЗ рдХреА рддрд░рд╣ рд╣реЛрдЧреАред" рдПрдХ рддрд┐рдкрд╛рдИ рдкрд░ рдХреИрдорд░рд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВрдиреЗ рдЗрд╕реЗ рдХрд┐рдирд╛рд░реЗ рдкрд░ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ рдФрд░ 0.5 рд╕реЗрдХрдВрдб рдХреЗ рдЕрдВрддрд░рд╛рд▓ рдХреЗ рд╕рд╛рде рдПрдХрд▓-рдлреНрд░реЗрдо рд╢реВрдЯрд┐рдВрдЧ рдореЛрдб рдХреЛ рдЪрд╛рд▓реВ рдХрд░ рджрд┐рдпрд╛, рдореИрдВ рдШрд░ рдореЗрдВ рдЫрд┐рдк рдЧрдпрд╛ред рдХреБрдЫ рд╣реА рдорд┐рдирдЯреЛрдВ рдореЗрдВ рдЯрд┐рдЯрдорд╛рдЙрд╕ рд▓реМрдЯ рдЖрдпрд╛ред рдПрдХ рдФрд░ рдкрд╛рдБрдЪ рдорд┐рдирдЯ рдЗрдВрддрдЬрд╛рд░ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВ рдЦрд╝реБрд╢реА рд╕реЗ рдЫрдд рдкрд░ рднрд╛рдЧрд╛, рдХреИрдорд░рд╛ рдкрдХрдбрд╝рд╛ рдФрд░ рд▓реИрдкрдЯреЙрдк рдХреА рддрд░рдл рдмрдврд╝рд╛ред рдореЗрд░реА рдирд┐рд░рд╛рд╢рд╛ рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдЬрдм рдЖрдзреЗ рдШрдВрдЯреЗ рдХреЗ рдмрд╛рдж рдореИрдВрдиреЗ рд╕рд░реНрд╡реЗрдХреНрд╖рдг рдХреЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рджреЗрдЦрд╛ - рдиреАрд▓реЗ рд╕реНрддрди рдХреЗ рдКрд░реНрдзреНрд╡рд╛рдзрд░ "рд╕реНрд▓рд╛рдЗрд╕" рдХреЗ рд╕рд╛рде рд╣рд▓реНрдХреЗ рдФрд░ рдЧрд╣рд░реЗ рдХреНрд╖реИрддрд┐рдЬ рдкрдЯреНрдЯрд┐рдпреЛрдВ рдХреЛ рдмрд╛рд░реА-рдмрд╛рд░реА рд╕реЗ, рдХреБрдЫ рдкрд┐рдХреНрд╕реЗрд▓ рдЪреМрдбрд╝реЗред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕реНрддрди рдмрд╣реБрдд рддреЗрдЬреА рд╕реЗ рдЙрдбрд╝ рдЧрдПред

рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛, рдЪрд▓реЛ рдХреИрдорд░рд╛ рдХреЛ рд╡реАрдбрд┐рдпреЛ рд╡реАрдбрд┐рдпреЛ рдореЛрдб (60 рдлреНрд░реЗрдо / рд╕реЗрдХрдВрдб) рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░реЗрдВ рдФрд░ рдлрд┐рд░ рд╕реЗ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рдЯрд┐рдЯрдорд╛рдЙрд╕, рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рддрд┐рдкрд╛рдИ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреБрдЫ рд╕реЗрдХрдВрдб рдХреЗ рдмрд╛рдж рд╡рд╛рдпреБ рдпрд╛рддрд╛рдпрд╛рдд рдмрд░рд╛рдордж рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдПрдХ рдШрдВрдЯреЗ рдмрд╛рдж, рдореИрдВ 1/60 рд╕реЗрдХрдВрдб рдХреЗ рдЕрдВрддрд░рд╛рд▓ рдХреЗ рд╕рд╛рде рд▓реА рдЧрдИ рддрд╕реНрд╡реАрд░реЛрдВ рдХреА рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХрд╛ рдЧрд░реНрд╡ рдорд╛рд▓рд┐рдХ рдерд╛ред (рдлреЛрдЯреЛ рдореЗрдВ рд╡реАрдбрд┐рдпреЛ рдХреЛ рдбрд┐рдХрдореНрдкреЛрдЬ рдХрд░рдиреЗ рдореЗрдВ ffmpeg рдиреЗ рдмрд╣реБрдд рдорджрдж рдХреА)ред рдореБрдЭреЗ рд╕рдлрд▓рддрд╛ рдХрд╛ рдпрдХреАрди рдерд╛ред рд▓реЗрдХрд┐рди рдкрд░рд┐рдгрд╛рдо рд╡реИрд╕реЗ рднреА рдирд┐рд░рд╛рд╢рд╛рдЬрдирдХ рдирд┐рдХрд▓рд╛ - рдиреАрд▓реЗ рд░рдВрдЧ рдХреА рд╕реНрдЯреНрд░рд┐рдкреНрд╕ рдереЛрдбрд╝реА рд╡реНрдпрд╛рдкрдХ рд╣реЛ рдЧрдИ, рд▓реЗрдХрд┐рди рдЙрдиреНрд╣реЛрдВрдиреЗ рдПрдХ рд╕реБрд╕рдВрдЧрдд рддрд╕реНрд╡реАрд░ рдирд╣реАрдВ рдмрдирд╛рдИред рдХрдИ рдлреЛрдЯреЛрдЧреНрд░рд╛рдлрд╝реА рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг (рдЯрдХрдЯрдХреА рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ) рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЧрдпрд╛ рдХрд┐ рдЯрд╛рдЗрдЯрдореЛрдЬрд╝ рди рдХреЗрд╡рд▓ рддреЗрдЬрд╝, рдмрд▓реНрдХрд┐ рдмрд╣реБрдд рддреЗрдЬрд╝реА рд╕реЗ рдЙрдбрд╝рддрд╛ рд╣реИред рдЬрдм рддрдХ рдпрд╣ рдкреЗрдбрд╝реЛрдВ рдХреЗ рдмреАрдЪ рдШреБрд▓ рдирд╣реАрдВ рдЬрд╛рддрд╛ рддрдм рддрдХ 0.3 рд╕реЗрдХрдВрдб рд╕реЗ рднреА рдХрдо рд╕рдордп рдмреАрдд рдЬрд╛рддрд╛ рд╣реИ!


рдпрд╣реА рд╣реИ, рдХрдо рд╕реЗ рдХрдо 120px рдЪреМрдбрд╝реА рдПрдХ рдЯрд╛рдЗрдЯ рдлреНрд▓рд╛рдЗрдЯ рдХрд╛ рдЧреИрдк рдлреЛрдЯреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ 400 рдлреНрд░реЗрдо / рд╕реЗрдХрдВрдб рдХреА рдЖрд╡реГрддреНрддрд┐ рдкрд░ рд╢реВрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛! рдпрд╣ рдПрдХ рдЙрдкрджреНрд░рд╡ рдерд╛ред

рднрд╛рд░реА рд╕реЛрдЪ рдореЗрдВ, рдореЗрд░реЗ рдмрдЪреНрдЪреЗ рдХреЛ рдорд╛рдЗрдирдХреНрд░рд╛рдлреНрдЯ рдЦреЗрд▓рдиреЗ рд╕реЗ рд░реЛрдХ рджрд┐рдпрд╛ рдФрд░ рдЙрд╕рдХреА рд╕реНрдХреА рдкрд░ рдбрд╛рд▓ рджрд┐рдпрд╛, рдореИрдВ рд╕реНрдХреА рдпрд╛рддреНрд░рд╛ рдкрд░ рдЪрд▓рд╛ рдЧрдпрд╛ред рдореИрдВ рдХреИрдорд░рд╛ рдЕрдкрдиреЗ рд╕рд╛рде рд▓реЗ рдЧрдпрд╛ред рдореЗрд░реА рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдШрд┐рд░реЗ рдмрдЪреНрдЪреЗ рдиреЗ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ - "рдкрд┐рддрд╛рдЬреА, рдХреНрдпрд╛ рдЖрдк рд╕реНрдХреА рдШрд░ рдореЗрдВ рдЖрдЧ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ?"

рдпреВрд░реЗрдХрд╛! рдЯреНрд░реИрдХ рдХреЗ рд╕рд╛рде рдХреБрдЫ рдХрд┐рд▓реЛрдореАрдЯрд░ рдЪрд▓рдиреЗ рдХреЗ рдмрд╛рдж рд╣рдо рдЭреЛрдкрдбрд╝реА рдореЗрдВ рдкрд╣реБрдБрдЪ рдЧрдПред рдЖрдЧ рд▓рдЧрд╛рдиреЗ рдФрд░ рд╕реЙрд╕реЗрдЬ рдХреЛ рддрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рдХрд░рдиреЗ рд╕реЗ, рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдЪреИрдореНрдмрд░ рдХреЛ рдордЬрдмреВрдд рдХрд┐рдпрд╛ ...


рдЭреЛрдВрдкрдбрд╝реА рдореЗрдВ рдПрдХ-рджреЛ рдШрдВрдЯреЗ рдмрд┐рддрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдкреВрд░реНрдг рдФрд░ рд╕рдВрддреБрд╖реНрдЯ рдШрд░ рд▓реМрдЯ рдЖрдПред

рдкрд░рд┐рдгрд╛рдо рдЙрддреНрд╕реБрдХ рдерд╛, рд▓реЗрдХрд┐рди рдЙрдмрд╛рдК:


рдореЗрд░реЗ рд╕рд┐рд░ рдХреЛ рдЦрд░реЛрдВрдЪрдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВрдиреЗ -hz рд╕реНрд╡рд┐рдЪ рдХреЛ рдХреЛрдб рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рддрд╛рдХрд┐ рдореИрдВ рдПрдХ рднрдЯреНрдард╛ рддрд╕реНрд╡реАрд░ рдмрдирд╛ рд╕рдХреВрдВ рдЬреЛ рди рдХреЗрд╡рд▓ рдПрдХ рдКрд░реНрдзреНрд╡рд╛рдзрд░ рднрдЯреНрдард╛ рд╣реИ, рдмрд▓реНрдХрд┐ рдХреНрд╖реИрддрд┐рдЬ рднреА рд╣реИред рдЗрд╕ рдмрд╛рд░ рд╕рдм рдХреБрдЫ рдЕрдзрд┐рдХ рджрд┐рд▓рдЪрд╕реНрдк рдирд┐рдХрд▓рд╛:


рд╕реНрд▓рд┐рдЯ рдлреЛрдЯреЛ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╡реАрдбрд┐рдпреЛ рдХрд╛ рдЯреБрдХрдбрд╝рд╛:


рдореЗрд░реЗ рдмреЗрдЯреЗ рдХрд╛ рдкреНрд░рд╡реЗрд╢, рдирд┐рдХрд╛рд╕ рдФрд░ рдлрд┐рд░ рд╕реЗ рдЕрдВрддрд░рд┐рдХреНрд╖-рд╕рдордп рдЦрд┐рдбрд╝рдХреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд╡реЗрд╢ рджреНрд╡рд╛рд░ рднрдЯреНрдард╛ рддрд╕реНрд╡реАрд░ рдкрд░ рджрд┐рдЦрд╛рдИ рджреЗ рд░рд╣рд╛ рд╣реИред рджрд░рд╡рд╛рдЬрд╛ рдкрддреНрддреА рдХреЗ рд╕рд╛рдЗрдирд╕реЛрдЗрдбрд▓ рд╡рд┐рдХреГрддрд┐ рдкрд░ рдзреНрдпрд╛рди рджреЗрдВ! рд╕рд╣рдЬ рд░реВрдк рд╕реЗ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдпрд╛ рдЧрдпрд╛ рд╕реНрд▓рд┐рдЯ рд╡рд┐рд╕реНрдерд╛рдкрди (600px, ~ 55% рдлреЛрдЯреЛ рдКрдВрдЪрд╛рдИ) рд╕рдмрд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рдирд┐рдХрд▓рд╛, рд╢реЗрд╖ рд╡рд┐рд╕реНрдерд╛рдкрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЪрд▓рдиреЗ рд╕реЗ рдРрд╕рд╛ рдкреНрд░рднрд╛рд╡реА рдкрд░рд┐рдгрд╛рдо рдирд╣реАрдВ рд╣реБрдЖред

рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдирд┐рд╖реНрдХрд░реНрд╖: рдПрдХ рднрдЯреНрдард╛ рддрд╕реНрд╡реАрд░ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╡рд╕реНрддреБрдУрдВ рдХреА рдЦреЛрдЬ рдПрдХ рд░реЛрдорд╛рдВрдЪрдХ рдФрд░ рд░реЛрдорд╛рдВрдЪрдХ рдЧрддрд┐рд╡рд┐рдзрд┐ рд╣реИред рд╕реНрд▓рд┐рдЯ рдлреЛрдЯреЛ рдХреЗрд╡рд▓ рдПрдХ рдФрд░ рдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рджреБрдирд┐рдпрд╛ рдХрд╛ рдПрдХ рдмрд╣реБрдд рд╣реА рд░реЛрдЪрдХ рдФрд░ рдордЬреЗрджрд╛рд░ рджреГрд╢реНрдп рд╣реИред рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдиреАрдЪреЗ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╕рд░рд▓ рдХреЛрдб рдЗрд╕реЗ рджрд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреА рд╕реАрдорд╛ рдХреЛ рдХрдо рдХрд░ рджреЗрдЧрд╛ред рд╕реМрднрд╛рдЧреНрдп рд╣реИ

PS <рд╕реЛрдЪ> рдореБрдЭреЗ 400 рдлреНрд░реЗрдо / рд╕реЗрдХрдВрдб рдХреА рдлреНрд░реЗрдо рджрд░ рд╡рд╛рд▓рд╛ рдХреИрдорд░рд╛ рдХрд╣рд╛рдВ рдорд┐рд▓реЗрдЧрд╛? </ Thoughtfully> рдЖрдк рд╕рдВрдпреЛрдЧ рд╕реЗ рдирд╣реАрдВ рд╣реИрдВ?

#Slit-scan photography #CopyLeft 2013 OlloSnow import os, Image, argparse def add_slice(img_slt, img, offst, wdth, hz, num): if hz: img_tmp = img.crop((0, offst, img.size[0], offst+wdth)) img_slt.paste(img_tmp, (0, num*wdth, img.size[0], (num+1)*wdth)) else: img_tmp = img.crop((offst, 0, offst+wdth, img.size[1])) img_slt.paste(img_tmp, (num*wdth, 0, (num+1)*wdth, img.size[1])) return def main(): parser = argparse.ArgumentParser(usage=\ '%(prog)s dir_images res_image [-hz] [-o slit_offset] [-w slit_width] [--help]') parser.add_argument('dir_img', type = str,\ help = 'images directory') parser.add_argument('res_img', type = str,\ help = 'result slit-scan image') parser.add_argument('-hz', '--horizontal', action='store_true',\ help = 'horizontal orientation of the slit (vertical by default)') parser.add_argument('-o', '--offset', type = int, default = 0,\ help = 'slit offset (pixels; 0 by default)') parser.add_argument('-w', '--width',type = int, default = 1,\ help = 'slit width (pixels; 1 by default)') args = parser.parse_args() filenames = sorted(os.listdir(args.dir_img)) img = Image.open(os.path.join(args.dir_img, filenames[0])) if args.horizontal: width = img.size[0] height = len(filenames)*args.width else: width = len(filenames)*args.width height = img.size[1] img_slt = Image.new('RGB',(width,height)) max_i = len(filenames) for i, file in enumerate(filenames): img = Image.open(os.path.join(args.dir_img, file)) add_slice(img_slt, img, args.offset, args.width, args.horizontal, i) print max_i - i, '\r', img_slt.save(args.res_img, 'JPEG') if __name__ == "__main__": main() 

Source: https://habr.com/ru/post/In173115/


All Articles