рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдФрд░ рдмреАрдЧрд▓рдмреЛрди рдмреНрд▓реИрдХ рдХреЗ рд▓рд┐рдП рдХреНрд░реЙрд╕-рд╕рдВрдХрд▓рди рдУрдкрдирд╕реАрд╡реА 4

рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░ред

рдЬрдм рдореИрдВ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд░ OpenCV рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рддреЛ рдореИрдВ рдкрд░рд┐рдгрд╛рдо рд╕реЗ рдмрд╣реБрдд рдирд┐рд░рд╛рд╢ рдерд╛ред рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ Python3.7 рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд░рд╛рд╕реНрдкрд┐рдпрди рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рдирдП рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП, рдкрд░рд┐рдЪрд┐рдд рдкрд╛рдЗрдк рд╕реНрдерд╛рдкрд┐рдд рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рднрдВрдбрд╛рд░ рд╕реЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИред

рдХрд╛рд░рдгреЛрдВ
рдкрд╛рдЗрдк рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ opencv-python рдиреЗ рдореБрдЭреЗ рдПрдХ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдкрд░рд┐рдгрд╛рдо рджрд┐рдпрд╛: "рдПрдХ рдРрд╕рд╛ рд╕рдВрд╕реНрдХрд░рдг рдирд╣реАрдВ рдорд┐рд▓рд╛ рдЬреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рдкреВрд░рд╛ рдХрд░рддрд╛ рд╣реЛ ..."ред рдЕрднреА рд╣рд╛рд▓ рд╣реА рдореЗрдВ, рдЗрд╕ рддрд░рд╣ рд╕реЗ рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдореБрдЦреНрдп рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдЗрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛, рдФрд░ рдкрд░рд┐рдгрд╛рдо рд╕рдХрд╛рд░рд╛рддреНрдордХ рдерд╛ред

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

Pypi.org рдкрд░ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ opencv-python рдкреЗрдЬ рдиреЗ рдмрд╣реБрдд рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рдХрд┐рдпрд╛ рд╣реИ:
... рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдкрд╣рд┐рдпрд╛ (рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдорд░реНрд▓рд┐рдирдХреНрд╕) рдкреНрд░рд╛рд░реВрдк рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдПрдЖрд░рдПрдо рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХрд╛ рдареАрдХ рд╕реЗ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП PyPI рдореЗрдВ ARM рдЖрдзрд╛рд░рд┐рдд рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдкреИрдХреЗрдЬ рдирд╣реАрдВ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдХреЗ рд▓рд┐рдП opencv-python рдкреИрдХреЗрдЬ www.piwheels.org рд╕реЗ рдорд┐рд▓ рд╕рдХрддреЗ рд╣реИрдВред

... рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдкрд╣рд┐рдпрд╛ рдкреНрд░рд╛рд░реВрдк (рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдХрдИ рдХреНрд▓рд┐рдиреАрдХ) рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдПрдЖрд░рдПрдо рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХрд╛ рдареАрдХ рд╕реЗ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП PyPI рдореЗрдВ ARM- рдЖрдзрд╛рд░рд┐рдд рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ рдХреЗ рд▓рд┐рдП рдкреИрдХреЗрдЬ рдирд╣реАрдВ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдХреЗ рд▓рд┐рдП opencv-python рдкреИрдХреЗрдЬ www.piwheels.org рдкрд░ рджреЗрдЦреЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред
рдареАрдХ рд╣реИ ...

рдореИрдВрдиреЗ рдЬрд╛рдБрдЪ рдХреА рдХрд┐ рд░рд╛рд╕реНрдкрдмреЗрд░реА рд╕рд╣реА рд╕реНрд░реЛрдд рд╕реЗ рдкреИрдХреЗрдЯ рдЦреАрдВрдЪ рд░рд╣реА рдереА, рд▓реЗрдХрд┐рди рд╕рд╛рдЗрдЯ рдХреЗ рдЕрдВрддрд┐рдо рдмреНрд▓реЙрдХ рдиреЗ рдЕрдкрдиреА рдЬрдЧрд╣ рдкрд░ рд╕рдм рдХреБрдЫ рдбрд╛рд▓ рджрд┐рдпрд╛:
рдкрд╣рд┐рдпреЛрдВ рдиреЗ рд╕рднреА рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдореЙрдбрд▓ (рдкрд╛рдИ 3, рдкрд╛рдИ 2, рдкрд╛рдИ 1 рдФрд░ рдкрд╛рдИ рдЬреАрд░реЛ) рдХреЛ рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ред рд░рд╛рд╕реНрдкрд┐рдпрди рдЬреЗрд╕реА (рдкрд╛рдпрдерди 3.4) рдФрд░ рд░рд╛рд╕реНрдкрд┐рдпрди рд╕реНрдЯреНрд░реЗрдЪ (рдкрд╛рдпрдерди 3.5) рдХреЗ рд▓рд┐рдП рдкрд╣рд┐рдП рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рд╣реИрдВред рд╣рдордиреЗ рдирд┐рдпрдд рд╕рдордп рдореЗрдВ рд░рд╛рд╕реНрдкрд┐рдпрди рдмрд╕реНрдЯрд░ (рдкрд╛рдпрдерди 3.7) рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдИ рд╣реИред

рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рдкрд╣рд┐рдпреЗ рд╕рднреА рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдореЙрдбрд▓ (Pi 3, Pi 2, Pi 1 рдФрд░ Pi Zero) рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВред рд╡реНрд╣реАрд▓ рд╕рдкреЛрд░реНрдЯ Raspbian Jessie (Python 3.4) рдФрд░ Raspbian Stretch (Python 3.5)ред рд╣рдо рдирд┐рдпрдд рд╕рдордп рдореЗрдВ Raspbian Buster (рдкрд╛рдпрдерди 3.7) рдореЗрдВ рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВред
рдореИрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд░ OpenCV рдХреЗ рд╕рдВрдХрд▓рди рдХреЗ рд╕рд╛рде рдПрдХ рдиреАрдВрдж рдХреА рд░рд╛рдд рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдерд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рдкрд╛рд░ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд▓реЗрдЦ рдпрд╛рдж рдЖрдпрд╛ (рдпрд╣ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╕рдВрд╕реНрдерд╛рди рдореЗрдВ рд╢рд┐рдХреНрд╖рдХреЛрдВ рдиреЗ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдерд╛ рдХрд┐ рд╣рдо рдореИрдиреБрдЕрд▓ рдХреЗ рдмрдЬрд╛рдп рдПрдХ рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдмрдирд╛рддреЗ рд╣реИрдВ)ред рд▓реЗрдЦ рд╕реЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдереЛрдбрд╝рд╛ рдмрджрд▓ рджрд┐рдпрд╛ рд╣реИ (рдпрд╣ python3 рдХреЗ рд▓рд┐рдП рдЖрдпрд╛рдд рдЬреЛрдбрд╝рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛ рдФрд░ рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рд╕рднреА рд▓рд╛рдЗрдмреНрд░реЗрд░реА OpenCV 4.1.0 рдХреЗ рд▓рд┐рдП рд╣реИрдВ), рдореИрдВ рд╡рд╛рдВрдЫрд┐рдд рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЖрд▓рд╕ рдиреЗ рд╣рд╛рде рдЙрдард╛рдпрд╛ рдФрд░ рдореИрдВ рдЗрд╕ рддрд░рд╣ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╕рдорд╛рдзрд╛рди рдЦреЛрдЬрдиреЗ рд▓рдЧрд╛ред рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрд╕ рд▓реЗрдЦ рдкрд░ рдЖрдпрд╛ред рдЙрд╕рдХреЗ рдкреАрдЫреЗ, рдореИрдВрдиреЗ рдкрд╣рд▓реА рдмрд╛рд░ рддрдВрдмреВрд░рд╛ рдФрд░ рдЕрдиреНрдп рд╢рд░реНрдордирд╛рдХ рдЕрдиреБрд╖реНрдард╛рдиреЛрдВ рдХреЗ рд╕рд╛рде рдиреГрддреНрдп рдХрд┐рдП рдмрд┐рдирд╛ рд╕рдм рдХреБрдЫ рдПрдХрддреНрд░ рдХрд┐рдпрд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд▓реЗрдЦ рджреВрд╕рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ред

рдореИрдВ рдкреЙрд▓ рд╕рд┐рд▓рд┐рд╕реНрдЯреАрдиреБ рджреНрд╡рд╛рд░рд╛ рд▓реЗрдЦ " рдХреНрд░реЙрд╕ рдХрдореНрдкрд╛рдЗрд▓рд┐рдВрдЧ рдУрдкрдирд╕реАрд╡реА 4 рдлреЙрд░ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдФрд░ рдмреАрдЧрд▓рдмреЛрди рдмреНрд▓реИрдХ " рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реВрдВред рд╢рд╛рдпрдж рдХреЛрдИ рдорд┐рдирдЯ рдпрд╛ рдШрдВрдЯреЛрдВ рдХреА рдмрдЪрдд рдХрд░реЗрдЧрд╛ рдЬреЛ рдПрдХ рдЬрд╛рд╕реВрд╕реА рдХрд╣рд╛рдиреА рдЦреЗрд▓рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рджрд┐рд▓рдЪрд╕реНрдк рд╕рдмрдХ рдкрд░ рдЦрд░реНрдЪ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЕрдкрдиреЗ рдЖрдк рд╕реЗ, рдореИрдВрдиреЗ рдЕрдиреБрд╡рд╛рдж рдореЗрдВ рдХреБрдЫ рдиреЛрдЯреНрд╕ рдЬреЛрдбрд╝реЗ, рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВрдиреЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдорд╛рдирд╛: [ рдЙрдиреНрд╣реЗрдВ рдкрд╛рда рдореЗрдВ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ ]ред

рдкрдврд╝рдиреЗ рдореЗрдВ рдордЬрд╛ рдЖрддрд╛ рд╣реИ!

рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдФрд░ рдмреАрдЧрд▓рдмреЛрди рдмреНрд▓реИрдХ рдХреЗ рд▓рд┐рдП рдХреНрд░реЙрд╕-рд╕рдВрдХрд▓рди рдУрдкрдирд╕реАрд╡реА 4


рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рдореИрдВ рдЖрдкрдХреЛ рджрд┐рдЦрд╛рдКрдВрдЧрд╛ рдХрд┐ рдХреНрд░реЙрд╕-рд╕рдВрдХрд▓рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдФрд░ рдмреАрдЧрд▓рдмреЛрди рдмреНрд▓реИрдХ рдХреЗ рд▓рд┐рдП рдУрдкрдирд╕реАрд╡реА рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдХреИрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПред рдЗрд╕ рд▓реЗрдЦрди рдХреЗ рд╕рдордп [ рдЕрдиреБрд╡рд╛рдж рдХреЗ рд╕рдордп рдЗрд╕рдХрд╛ рдЕрджреНрдпрддрди рдЬреБрд▓рд╛рдИ рез writing , реирежрез реп рд╣реИ ], рдУрдкрдирд╕реАрд╡реА рдХрд╛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рек.рез.реж рд╣реИ, рдФрд░ рдорд╛рдирдХ рдУрдПрд╕ рдХреЗ рд╕рд╛рде рднреЗрдЬрд╛ рдЧрдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рей.реи.реж рд╣реИред рдмреЗрд╢рдХ, рдУрдкрдирд╕реАрд╡реА рдХреЛ рд╕реАрдзреЗ рд╕реНрд░реЛрдд рд╕реЗ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдпрд╛ рдмреАрдЧрд▓рдмреЛрди рдмреНрд▓реИрдХ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдореЗрдВ рдХрдИ рдШрдВрдЯреЗ рд▓рдЧ рд╕рдХрддреЗ рд╣реИрдВред рдФрд░ armhf рдХреЗ рд▓рд┐рдП OpenCV рдХреЛ рдкрд╛рд░ рдХрд░рдирд╛ рдПрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИ рдЬреЛ 20-30 рдорд┐рдирдЯ рддрдХ рдЪрд▓рддреА рд╣реИред рдФрд░, рдЖрдкрдХреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдХреА рдЧрддрд┐ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдпрд╣ рдФрд░ рднреА рддреЗрдЬ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдореИрдВ рдбреЗрдмрд┐рдпрди рдмрд╕реНрдЯрд░ рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рдпрд╛ рдбреЙрдХрдЯрд░ рдХрдВрдЯреЗрдирд░ рдореЗрдВ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ, рддрд╛рдХрд┐ рдЖрдкрдХреЗ рдореБрдЦреНрдп рдУрдПрд╕ рдХреЛ рдЕрд╡реНрдпрд╡рд╕реНрдерд┐рдд рди рдХрд┐рдпрд╛ рдЬрд╛рдПред рдпрджрд┐ рдЖрдк рдмрд╕реНрдЯрд░ рдХреЛ рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВ, рддреЛ рдиреНрдпреВрдирддрдо рдмрд┐рд▓реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ [ рдореИрдВ рдмрд╕ рдпрд╣реА рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ - рдореИрдВрдиреЗ рдЗрд╕реЗ рдЕрдкрдиреА рддреНрд╡рдЪрд╛ рдкрд░ рдЬрд╛рдВрдЪрд╛ ]ред рдПрдХ рд╕рд░рд▓ рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рдирд╛ рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдореЗрдВ рдЖрд░реНрдорд╣ рдмрд┐рдирд┐рдпрд░ рдФрд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдПрдХ рдиреНрдпреВрдирддрдо рдкреНрд░рдгрд╛рд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рд╣рдо рдореВрд▓ x86-64 рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдВрдШрд░реНрд╖реЛрдВ рд╕реЗ рдмрдЪрддреЗ рд╣реИрдВред

рд▓реЗрдЦ рдореЗрдВ рдХреЗрд╡рд▓ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд╕рд╛рде рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкреАрдЖрдИ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рд╡рд░реНрдгрди рд╣реИ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдк рдмреАрдЧрд▓рдмреЛрди рдмреНрд▓реИрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕рдм рдХреБрдЫ рдареАрдХ рдЙрд╕реА рддрд░рд╣ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рд╕рд╛рдл рд░рд╛рд╕реНрдкрд┐рдпрди рд╕реНрдерд╛рдкрд┐рдд рд╣реИред рдореИрдВрдиреЗ рдирд╡реАрдирддрдо рдЙрдкрд▓рдмреНрдз рдбреЗрд╕реНрдХрдЯреЙрдк рд╕рдВрд╕реНрдХрд░рдг рдХреА рдЫрд╡рд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЖрдк рд░рд╛рд╕реНрдкрд┐рдпрди рд▓рд╛рдЗрдЯ рдкрд░ рд▓реЗрдЦ рдХрд╛ рдЕрдиреБрд╕рд░рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдЕрдкрдиреЗ рд╕рднреА рдкрд░реАрдХреНрд╖рдг рдЬреАрдпреВрдЖрдИ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рдпрд╛ред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рд╣рдорд╛рд░реА рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рдпрд╛ рдХрдВрдЯреЗрдирд░ рдЕрдкрдбреЗрдЯ рд╣реИ:

sudo apt update sudo apt upgrade 

рдЕрдЧрд▓рд╛, рдЖрдкрдХреЛ рдЖрд░реНрдорд╣ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдХреЛ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

 sudo dpkg --add-architecture armhf sudo apt update sudo apt install qemu-user-static 

рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░, рдЖрдк рдЕрдкрдиреЗ рд╕рд┐рд╕реНрдЯрдо рдкрд░ armhf рдХреЗ рд▓рд┐рдП рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдФрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВред

рд╣рдо рдЕрдЬрдЧрд░ рдФрд░ C ++ рдХреЗ рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде OpenCV рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред рдЖрдЗрдП Python2 рдФрд░ Python3 рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ, рд╕рд╛рде рд╣реА рдЙрдирдХреЗ рд▓рд┐рдП NumPy рд╕рдВрдзрд┐:

 sudo apt-get install python3-dev sudo apt-get install python3-numpy sudo apt-get install python-dev sudo apt-get install python-numpy 

рд╣рдо рднреА armhf рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХреЗ рд▓рд┐рдП libpython рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА:

 sudo apt-get install libpython2-dev:armhf sudo apt-get install libpython3-dev:armhf 

рдЕрдЧрд▓рд╛, рд╣рдо libgtk-3 рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВрдЧреЗ, рдЬреЛ рдЧреНрд░рд╛рдлрд┐рдХрд▓ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рд╕рд╛рде рд╕рд░рд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд▓рд┐рдЦрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдЧрд╛ред рдпрджрд┐ рдЖрдк OpenCV рдХреЛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдСрдлрд╝рд▓рд╛рдЗрди рдореЛрдб рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдирд┐рдореНрди рджреЛ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

 $ sudo apt install libgtk-3-dev:armhf libcanberra-gtk3-dev:armhf 

рд╣рдореЗрдВ OpenCV (рд╡рд┐рднрд┐рдиреНрди рдЫрд╡рд┐ рдФрд░ рд╡реАрдбрд┐рдпреЛ рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди) рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдХрдИ рдЕрдиреНрдп рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

 sudo apt install libtiff-dev:armhf zlib1g-dev:armhf sudo apt install libjpeg-dev:armhf libpng-dev:armhf sudo apt install libavcodec-dev:armhf libavformat-dev:armhf libswscale-dev:armhf libv4l-dev:armhf sudo apt-get install libxvidcore-dev:armhf libx264-dev:armhf 

рдЗрд╕рдХреЗ рдмрд╛рдж, рд╣рдо рдбреЗрдмрд┐рдпрди рдХреЗ рд▓рд┐рдП рдХреНрд░реЙрд╕-рдХрдВрдкрд╛рдЗрд▓рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдХреЗ рд▓рд┐рдП рдЖрд░реНрдордл рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:

 sudo apt install crossbuild-essential-armhf sudo apt install gfortran-arm-linux-gnueabihf 

рдЗрд╕ рд▓реЗрдЦрди рдХреЗ рд╕рдордп, рдКрдкрд░ рдЯреВрд▓рдХрд┐рдЯ рдЬреАрд╕реАрд╕реА рд╕рдВрд╕реНрдХрд░рдг writing.рей рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ, рдЬреЛ рдХрд┐ рд░рд╛рд╕реНрдкрд┐рдпрди рдХреЗ рд╕рдорд╛рди рд╣реИред

рдЕрдВрдд рдореЗрдВ, рд╣рдо Cmake , git , pkg-config рдФрд░ wget рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВрдЧреЗ:

 sudo apt install cmake git pkg-config wget 

рдЕрдЧрд▓рд╛, рд╣рдо OpenCV рдХреЗ рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдореИрдВ рдЖрдкрдХреЛ рджрд┐рдЦрд╛рдПрдЧрд╛ рдХрд┐ OpenCV (рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдФрд░ рдХрдВрдЯреНрд░реА рд▓рд╛рдЗрдмреНрд░реЗрд░реА) рдХрд╛ рдкреВрд░реНрдг рд╕рдВрд╕реНрдХрд░рдг рдХреИрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП:

 cd ~ mkdir opencv_all && cd opencv_all wget -O opencv.tar.gz https://github.com/opencv/opencv/archive/4.1.0.tar.gz tar xf opencv.tar.gz wget -O opencv_contrib.tar.gz https://github.com/opencv/opencv_contrib/archive/4.1.0.tar.gz tar xf opencv_contrib.tar.gz rm *.tar.gz 

рд╣рдореЗрдВ GTK + рд╕рдорд░реНрдерди рдХреЛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рджреЛ рд╕рд┐рд╕реНрдЯрдо рдЪрд░ рдХреЛ рдЕрд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

 export PKG_CONFIG_PATH=/usr/lib/arm-linux-gnueabihf/pkgconfig:/usr/share/pkgconfig export PKG_CONFIG_LIBDIR=/usr/lib/arm-linux-gnueabihf/pkgconfig:/usr/share/pkgconfig 

рдлрд┐рд▓рд╣рд╛рд▓, рд╣рдо OpenCV рдмрд┐рд▓реНрдб рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП Cmake рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

 cd opencv-4.1.0 mkdir build && cd build cmake -D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_INSTALL_PREFIX=/opt/opencv-4.1.0 \ -D CMAKE_TOOLCHAIN_FILE=../platforms/linux/arm-gnueabi.toolchain.cmake \ -D OPENCV_EXTRA_MODULES_PATH=~/opencv_all/opencv_contrib-4.1.0/modules \ -D OPENCV_ENABLE_NONFREE=ON \ -D ENABLE_NEON=ON \ -D ENABLE_VFPV3=ON \ -D BUILD_TESTS=OFF \ -D BUILD_DOCS=OFF \ -D PYTHON2_INCLUDE_PATH=/usr/include/python2.7 \ -D PYTHON2_LIBRARIES=/usr/lib/arm-linux-gnueabihf/libpython2.7.so \ -D PYTHON2_NUMPY_INCLUDE_DIRS=/usr/lib/python2/dist-packages/numpy/core/include \ -D PYTHON3_INCLUDE_PATH=/usr/include/python3.7m \ -D PYTHON3_LIBRARIES=/usr/lib/arm-linux-gnueabihf/libpython3.7m.so \ -D PYTHON3_NUMPY_INCLUDE_DIRS=/usr/lib/python3/dist-packages/numpy/core/include \ -D BUILD_OPENCV_PYTHON2=ON \ -D BUILD_OPENCV_PYTHON3=ON \ -D BUILD_EXAMPLES=OFF .. 

рдорд╛рдкрджрдВрдбреЛрдВ рдХрд╛ рд╡рд┐рд╡рд░рдг
CMAKE_INSTALL_PREFIX - рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдЬрд╣рд╛рдВ рдПрдХрддреНрд░рд┐рдд рдбреЗрдЯрд╛ рд╕реНрдерд┐рдд рд╣реЛрдЧреА
CMAKE_TOOLCHAIN_FILE - Cmake рджрд┐рдЦрд╛рдиреЗ рд╡рд╛рд▓рд╛ рдкреИрд░рд╛рдореАрдЯрд░ рдХреНрд░реЙрд╕-рд╕рдВрдХрд▓рди рдХреНрдпрд╛ рд╣реЛрдЧрд╛
OPENCV_EXTRA_MODULES_PATH - рдЕрддрд┐рд░рд┐рдХреНрдд OpenCV рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рдкрде
OPENCV_ENABLE_NONFREE = ON - рдЕрд╕реЗрдВрдмрд▓реА рдореЗрдВ рдкреЗрдЯреЗрдВрдЯ рдХрд┐рдП рдЧрдП рдПрд▓реНрдЧреЛрд░рд┐рджрдо рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ
рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ SIFT рдФрд░ SURF рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдкреЗрдЯреЗрдВрдЯ рдкреНрд░рддрд┐рдмрдВрдз рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВред рдФрд░ рдпрджрд┐ рдЖрдк рд╡рд╛рдгрд┐рдЬреНрдпрд┐рдХ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдХреЛрдбрд╛рдВрддрд░рдг рдкрд░ рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдЖрдкрдХреЛ рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рд╕реАрдорд╛рдПрдВ рджреЗрдЦреЗрдВред
ENABLE_NEON = ON - ARM рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рди рдХреЗ рд▓рд┐рдП NEON рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
ENABLE_VFPV3 = ON - ARM рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рди рдХреЗ рд▓рд┐рдП VFPv3-D32 рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
BUILD_TESTS = OFF - рднрд╡рди рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдирд┐рдпрдо рдЕрдХреНрд╖рдо рдХрд░реЗрдВ (рдпрд╣ рддреЗрдЬрд╝ рд╣реЛрдЧрд╛)
BUILD_DOCS = OFF - рдкреНрд░рд▓реЗрдЦрди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдпрдо рдЕрдХреНрд╖рдо рдХрд░реЗрдВ
PYTHON2_INCLUDE_PATH - python2.7 рдХреЗ рд▓рд┐рдП рдкрде
PYTHON2_LIBRARIES - рдкрд╣рд▓реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЧрдИ libpython2 рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдкрде
PYTHON2_NUMPY_INCLUDE_DIRS - python2.7 рдХреЗ рд▓рд┐рдП NumPy рдХрд╛ рдкрде
PYTHON3_INCLUDE_PATH - python3 рдХреЗ рд▓рд┐рдП рдкрде
PYTHON3_LIBRARIES - рдкрд╣рд▓реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЧрдИ libpython3 рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдкрде
PYTHON3_NUMPY_INCLUDE_DIRS - рдкрд╛рдпрдерди 3 рдХреЗ рд▓рд┐рдП NumPy рдХрд╛ рдкрде
BUILD_OPENCV_PYTHON2 = ON - рдЕрд╕реЗрдВрдмрд▓реА рдореЗрдВ python2 рдХреЗ рд▓рд┐рдП рдирд┐рдпрдо рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ
BUILD_OPENCV_PYTHON3 = ON - рдЕрд╕реЗрдВрдмрд▓реА рдореЗрдВ python4 рдХреЗ рд▓рд┐рдП рдирд┐рдпрдо рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ
BUILD_EXAMPLES = OFF - рд╕рднреА рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдпрдореЛрдВ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ

рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдирд╣реАрдВ рдереАрдВ, рддреЛ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдЖрдкрдХреЛ рдЕрд╕реЗрдВрдмрд▓реА рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдПрдХ рдореЗрдХрдлрд╛рдЗрд▓ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдЧрд╛ред рдЕрдм рд╣рдо рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдирд┐рд░реНрдорд╛рдг рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

 make -j16 

[ рд▓реЗрдЦ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЗ рджреМрд░рд╛рди 16 рд╕рдорд╛рдирд╛рдВрддрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдЖрдкрдХреЗ рд╣реЛрд╕реНрдЯ рдУрдПрд╕ рдХреЗ рд▓рд┐рдП рдЪрдпрдирд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА ]

рдмрд┐рд▓реНрдб рдЪрд░рдг рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

 sudo make install/strip 

рдлрд┐рд░ рд╣рдореЗрдВ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдирд╛рдо рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓рд░ рдиреЗ рдЧрд▓рддреА рд╕реЗ x86_64 рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╣рд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ armhf рд╣реИ:

 cd /opt/opencv-4.1.0/lib/python3.7/dist-packages/cv2/python-3.7/ sudo cp cv2.cpython-37m-x86_64-linux-gnu.so cv2.so 

рдЖрдЗрдП рд╕реНрдерд╛рдкрдирд╛ рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рд╕рдВрдкреАрдбрд╝рд┐рдд рдХрд░реЗрдВ рдФрд░ рдШрд░ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣ рдХреЛ рд╕рд╣реЗрдЬреЗрдВ:

 cd /opt tar -cjvf ~/opencv-4.1.0-armhf.tar.bz2 opencv-4.1.0 cd ~ 

рд╣рдорд╛рд░реЗ рдЬреАрд╡рди рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ opencv.pc рдирд╛рдо рдХреА рдПрдХ рд╕рд╛рдзрд╛рд░рдг pkg-config settings рдлрд╛рдЗрд▓ рднреА рддреИрдпрд╛рд░ рдХреАред рдЖрдк рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

 git clone https://gist.github.com/sol-prog/ed383474872958081985de733eaf352d opencv_cpp_compile_settings cd opencv_cpp_compile_settings cp opencv.pc ~ cd ~ 

[ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореЗрдЬрдмрд╛рди рдорд╢реАрди рдкрд░ рдРрд╕рд╛ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИред рдЖрдк рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕реАрдзреЗ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдореЗрдВ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рд▓реЗрдЦрдХ рдЗрд╕реЗ рдЗрд╕реА рдХреНрд░рдо рдореЗрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ ]

opencv.pc
рдЪреВрдВрдХрд┐ рдлрд╝рд╛рдЗрд▓ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдЫреЛрдЯреА рд╣реИ, рдореБрдЭреЗ рдЗрд╕реЗ рд▓реЗрдЦ рдХреЗ рдкрд╛рда рдореЗрдВ рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░рдиреЗ рджреЗрдВ:

 libdir = /opt/opencv-4.1.0/lib includedir = /opt/opencv-4.1.0/include/opencv4 Name: OpenCV Description: OpenCV (Open Source Computer Vision Library) is an open source computer vision and machine learning software library. Version: 4.1.0 Libs: -L${libdir} -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_calib3d -lopencv_ccalib -lopencv_core -lopencv_datasets -lopencv_dnn_objdetect -lopencv_dnn -lopencv_dpm -lopencv_face -lopencv_features2d -lopencv_flann -lopencv_freetype -lopencv_fuzzy -lopencv_gapi -lopencv_hfs -lopencv_highgui -lopencv_imgcodecs -lopencv_img_hash -lopencv_imgproc -lopencv_line_descriptor -lopencv_ml -lopencv_objdetect -lopencv_optflow -lopencv_phase_unwrapping -lopencv_photo -lopencv_plot -lopencv_quality -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_shape -lopencv_stereo -lopencv_stitching -lopencv_structured_light -lopencv_superres -lopencv_surface_matching -lopencv_text -lopencv_tracking -lopencv_videoio -lopencv_video -lopencv_videostab -lopencv_xfeatures2d -lopencv_ximgproc -lopencv_xobjdetect -lopencv_xphoto Cflags: -I${includedir} -lopencv_bgsegm -lopencv_bioinspired -lopencv_calib3d -lopencv_ccalib -lopencv_core -lopencv_datasets -lopencv_dnn_objdetect -lopencv_dnn -lopencv_dpm -lopencv_face -lopencv_features2d -lopencv_flann -lopencv_freetype -lopencv_fuzzy -lopencv_gapi -lopencv_hfs -lopencv_highgui -lopencv_imgcodecs -lopencv_img_hash -lopencv_imgproc libdir = /opt/opencv-4.1.0/lib includedir = /opt/opencv-4.1.0/include/opencv4 Name: OpenCV Description: OpenCV (Open Source Computer Vision Library) is an open source computer vision and machine learning software library. Version: 4.1.0 Libs: -L${libdir} -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_calib3d -lopencv_ccalib -lopencv_core -lopencv_datasets -lopencv_dnn_objdetect -lopencv_dnn -lopencv_dpm -lopencv_face -lopencv_features2d -lopencv_flann -lopencv_freetype -lopencv_fuzzy -lopencv_gapi -lopencv_hfs -lopencv_highgui -lopencv_imgcodecs -lopencv_img_hash -lopencv_imgproc -lopencv_line_descriptor -lopencv_ml -lopencv_objdetect -lopencv_optflow -lopencv_phase_unwrapping -lopencv_photo -lopencv_plot -lopencv_quality -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_shape -lopencv_stereo -lopencv_stitching -lopencv_structured_light -lopencv_superres -lopencv_surface_matching -lopencv_text -lopencv_tracking -lopencv_videoio -lopencv_video -lopencv_videostab -lopencv_xfeatures2d -lopencv_ximgproc -lopencv_xobjdetect -lopencv_xphoto Cflags: -I${includedir} -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_shape -lopencv_stereo -lopencv_stitching -lopencv_structured_light -lopencv_superres -lopencv_surface_matching -lopencv_text -lopencv_tracking -lopencv_videoio -lopencv_video -lopencv_videostab -lopencv_xfeatures2d -lopencv_ximgproc -lopencv_xobjdetect libdir = /opt/opencv-4.1.0/lib includedir = /opt/opencv-4.1.0/include/opencv4 Name: OpenCV Description: OpenCV (Open Source Computer Vision Library) is an open source computer vision and machine learning software library. Version: 4.1.0 Libs: -L${libdir} -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_calib3d -lopencv_ccalib -lopencv_core -lopencv_datasets -lopencv_dnn_objdetect -lopencv_dnn -lopencv_dpm -lopencv_face -lopencv_features2d -lopencv_flann -lopencv_freetype -lopencv_fuzzy -lopencv_gapi -lopencv_hfs -lopencv_highgui -lopencv_imgcodecs -lopencv_img_hash -lopencv_imgproc -lopencv_line_descriptor -lopencv_ml -lopencv_objdetect -lopencv_optflow -lopencv_phase_unwrapping -lopencv_photo -lopencv_plot -lopencv_quality -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_shape -lopencv_stereo -lopencv_stitching -lopencv_structured_light -lopencv_superres -lopencv_surface_matching -lopencv_text -lopencv_tracking -lopencv_videoio -lopencv_video -lopencv_videostab -lopencv_xfeatures2d -lopencv_ximgproc -lopencv_xobjdetect -lopencv_xphoto Cflags: -I${includedir} 


Opencv-4.1.0-armhf.tar.bz2 рдФрд░ opencv.pc рдХреЛ рдЕрдкрдиреЗ рд╣реЛрдо рдлреЛрд▓реНрдбрд░ рд╕реЗ RPi рдореЗрдВ рдХреЙрдкреА рдХрд░реЗрдВред

рд▓реЗрдЦ рдХреЗ рдЕрдЧрд▓реЗ рднрд╛рдЧ рдореЗрдВ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрдкрдиреЗ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдкрд░ рд╕рдм рдХреБрдЫ рдХрд░ рд░рд╣реЗ рд╣реИрдВ ред

рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдХреЗ рдЖрд░рдкреАрдЖрдИ рдореЗрдВ рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рд╕рднреА рд╡рд┐рдХрд╛рд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИрдВред рдкрд╣рд▓реЗ рдХреА рддрд░рд╣, рдпрджрд┐ рдЖрдк GTK + рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдирд╣реАрдВ рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рдирд┐рдореНрди рдЖрджреЗрд╢реЛрдВ рдХреА рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░реЗрдВред рдпрджрд┐ рдЖрдк рд░рд╛рд╕реНрдкрд┐рдпрди рдХреЗ рдкреВрд░реНрдг рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЗрдирдореЗрдВ рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реНрдерд╛рдкрд┐рдд рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП:

 sudo apt install libgtk-3-dev libcanberra-gtk3-dev sudo apt install libtiff-dev zlib1g-dev sudo apt install libjpeg-dev libpng-dev sudo apt install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev sudo apt-get install libxvidcore-dev libx264-dev 

рдЕрдкрдиреЗ рдЖрд░рдкреАрдЖрдИ рдХреЗ / рдСрдкреНрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рдЦреЛрд▓рдирд╛ рдФрд░ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛:

 tar xfv opencv-4.1.0-armhf.tar.bz2 sudo mv opencv-4.1.0 /opt 

рдЖрдк рдЪрд╛рд╣реЗрдВ рддреЛ рдЖрд░реНрдХрд╛рдЗрд╡ рдХреЛ рд╣рдЯрд╛ рд╕рдХрддреЗ рд╣реИрдВ:

 rm opencv-4.1.0-armhf.tar.bz2 

рдЗрд╕рдХреЗ рдмрд╛рдж, opencv.pc рдХреЛ рдПрдХ рдлреЛрд▓реНрдбрд░ рдореЗрдВ рд▓реЗ рдЬрд╛рдПрдБ рдЬрд╣рд╛рдБ pkg-config рдЗрд╕реЗ рдкрд╛ рд╕рдХрддрд╛ рд╣реИ:

 sudo mv opencv.pc /usr/lib/arm-linux-gnueabihf/pkgconfig 

рддрд╛рдХрд┐ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо OpenCV рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рдкрд╛ рд╕рдХреЗ, рд╣рдореЗрдВ рдЙрдиреНрд╣реЗрдВ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдкрде рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

 echo 'export LD_LIBRARY_PATH=/opt/opencv-4.1.0/lib:$LD_LIBRARY_PATH' >> .bashrc source .bashrc 

рд▓реЙрдЧ рдЖрдЙрдЯ рдХрд░реЗрдВ рдФрд░ рдЯрд░реНрдорд┐рдирд▓ рдХреЛ рд▓реЙрдЧ рдЗрди рдпрд╛ рд░реАрд╕реНрдЯрд╛рд░реНрдЯ рдХрд░реЗрдВред

рдЕрдЧрд▓рд╛, рдХреБрдЫ рдкреНрд░рддреАрдХрд╛рддреНрдордХ рд▓рд┐рдВрдХ рдмрдирд╛рдПрдВ рдЬреЛ рдкрд╛рдпрдерди рдХреЛ рдирдП рдмрдирд╛рдП рдЧрдП рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛:

 sudo ln -s /opt/opencv-4.1.0/lib/python2.7/dist-packages/cv2 /usr/lib/python2.7/dist-packages/cv2 sudo ln -s /opt/opencv-4.1.0/lib/python3.7/dist-packages/cv2 /usr/lib/python3/dist-packages/cv2 

рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░, рдЖрдк C ++ рдпрд╛ рдЕрдЬрдЧрд░ рд╕реЗ OpenCV рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЗрд╕ рд▓реЗрдЦ рдХреЗ рд▓рд┐рдП рднрдВрдбрд╛рд░ рдореЗрдВ , рдЖрдк C ++ рдФрд░ рдкрд╛рдпрдерди рдореЗрдВ рдХрдИ рдкрд░реАрдХреНрд╖рдг рдХрд╛рд░реНрдпрдХреНрд░рдо рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрдиреЗ рдкрд╛рдИ рдкрд░ рдХреЛрдб рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

 git clone https://github.com/sol-prog/raspberry-pi-opencv.git cd raspberry-pi-opencv/tests 

рджреЛ рд╕реНрдЯреИрдВрдбрдЕрд▓реЛрди рдкрд░реАрдХреНрд╖рдг рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдк рддрдм рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрдм рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рдЖрд░рдкреАрдЖрдИ рд╕реЗ рдЬреБрдбрд╝рд╛ рдХреЛрдИ рдбрд┐рд╕реНрдкреНрд▓реЗ рди рд╣реЛ: cli_cpp_test.cpp рдФрд░ cli_python_test.pyред рдореИрдВрдиреЗ рджреЛ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдЯреЗрд╕реНрдЯ рднреА рд╢рд╛рдорд┐рд▓ рдХрд┐рдП рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдбрд┐рд╕реНрдкреНрд▓реЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ: gui_cpp_test.cpp рдФрд░ gui_python_test.pyред

рдЖрдк C ++ рдкрд░реАрдХреНрд╖рдг рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдмрдирд╛ рдФрд░ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ:

 g++ cli_cpp_test.cpp -o cli_cpp_test `pkg-config --cflags --libs opencv` ./cli_cpp_test 

рдФрд░, рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рдЖрд░рдкреАрдЖрдИ рд╕реЗ рдЬреБрдбрд╝рд╛ рдбрд┐рд╕реНрдкреНрд▓реЗ рд╣реИ:

 g++ gui_cpp_test.cpp -o gui_cpp_test `pkg-config --cflags --libs opencv` ./gui_cpp_test 

рдпрд╣рд╛рдБ рдореЗрд░реЗ ++ рдкрд░ рдЪрд▓ рд░рд╣реЗ C ++ GUI рдкрд░реАрдХреНрд╖рдг рдХрд╛ рдПрдХ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рд╣реИ:



рдкрд╛рдпрдерди рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд▓рд┐рдП, рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ:

 python3 cli_python_test.py 

рдпрд╛

 python3 gui_python_test.py 

рдПрдХ рдиреЛрдЯ рдХреЗ рд░реВрдк рдореЗрдВ, рдЖрдкрдХреЗ рдбреЗрдмрд┐рдпрди x86-64 рд╕рд┐рд╕реНрдЯрдо рдкрд░ OpenCV рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ C ++ рдкреНрд░реЛрдЧреНрд░рд╛рдореНрд╕ рдХреЛ рдХреНрд░реЙрд╕-рдХрдВрдкрд╛рдЗрд▓ рдХрд░рдирд╛ рдФрд░ рдЕрдкрдиреЗ RPi рдкрд░ рдмрд╛рдЗрдирд░реА рдХреЛрдб рдЪрд▓рд╛рдирд╛ рднреА рд╕рдВрднрд╡ рд╣реИред

[ рд▓реЗрдЦ рдореЗрдВ рдЖрдЧреЗ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдЦрдХ рд░рд╛рд╕реНрдкрдмреЗрд░реАрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдкрд░ рдбреЗрд░реЗрдХ рдореЛрд▓реЙрдп рдХреА рдкреБрд╕реНрддрдХ рдкрдврд╝рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реИред рдЖрдк рдореВрд▓ рд▓реЗрдЦ рдореЗрдВ рдкреБрд╕реНрддрдХ рдХреЗ рд▓рд┐рдП рд░реЗрдлрд░рд▓ рд▓рд┐рдВрдХ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ ]ред
рдореВрд▓ рд▓реЗрдЦ рдХрд╛ рд▓рд┐рдВрдХ

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

рд╕реНрдерд╛рдкрдирд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛:
рдПрдХ рдбреЙрдХрд░рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБред

 mkdir opencv && cd opencv && mkdir armhf_opencv touch armhf_opencv/Dockerfile nano armhf_opencv/Dockerfile 

рдЕрдЧрд▓рд╛, рд╣рдо рдХреЛрдб рдХреЛ рдбреЙрдХрд░рдлрд╛рдЗрд▓ рдореЗрдВ рдкреЗрд╕реНрдЯ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рд╣рдо рдЫрд╡рд┐ рдХреА рдЕрд╕реЗрдВрдмрд▓реА рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред

 docker image build armhf_opencv/ 

рдмрд┐рд▓реНрдб рдкреВрд░реНрдг рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдЕрд╕реЗрдВрдмрд▓ рдХреА рдЧрдИ рдЫрд╡рд┐ рдХреЗ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХреЛ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдП:

 >>> Successfully built babdc99ba2d8 

рд╣рдо рдЗрд╕ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЫрд╡рд┐ рдХреЗ рд▓рд┐рдП рдЯреИрдЧ рд╕реЗрдЯ рдХрд░рдиреЗ рдФрд░ рдЙрд╕реЗ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░рддреЗ рд╣реИрдВ:

 docker tag babdc99ba2d8 armhf_opencv:latest docker run armhf_opencv 

рдХрдВрдЯреЗрдирд░ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЗрдХрдЯреНрдареЗ рд╕рдВрдЧреНрд░рд╣ рдФрд░ рдЙрд╕рдореЗрдВ рд╕реЗ opencv.pc рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкрдВрдк рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдЗрд╕рдХреЗ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

 docker container ls --all >>> CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES >>> 369dff5a0a9b armhf_opencv "bash" 9 seconds ago Exited (0) 7 seconds ago affectionate_wu 

рд╡рд░реНрддрдорд╛рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдПрдБ:

 docker cp 369dff5a0a9b:/root/opencv-4.1.0-armhf.tar.bz2 ./ docker cp 369dff5a0a9b:/root/opencv.pc ./ 

рдЙрд╕рдХреЗ рдмрд╛рдж, рдореИрдВ рдЫрд╡рд┐ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ 2.5GB рдХреА рдЬрдЧрд╣ рд▓реЗрддрд╛ рд╣реИред

1659 рдХреЗ рд╕рд╛рде рдореЗрд░реЗ i59600K рдкрд░ docker рдХреЗ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ рд▓рдЧрднрдЧ 30-40 рдорд┐рдирдЯ рдХрд╛ рд╕рдордп рд▓рдЧрд╛, рдФрд░ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╕реЗ рдбреЗрдЯрд╛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдлреА рд╕рдордп рд▓рдЧрд╛ред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдкрд░ рдЕрдзрд┐рд╖реНрдард╛рдкрди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд▓реЗрдЦ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╕реЗ рдЕрд▓рдЧ рдирд╣реАрдВ рд╣реИред

рдЦреБрдж рдбреЙрдХрдлрд╛рдЗрд▓:

 FROM debian:buster USER root RUN apt update && apt upgrade RUN dpkg --add-architecture armhf && \ apt update && apt install -y qemu-user-static RUN apt install -y python3-dev python3-numpy python-dev python-numpy RUN apt install -y libpython2-dev:armhf libpython3-dev:armhf \ libgtk-3-dev:armhf libcanberra-gtk3-dev:armhf \ libtiff-dev:armhf zlib1g-dev:armhf \ libjpeg-dev:armhf libpng-dev:armhf \ libavcodec-dev:armhf libavformat-dev:armhf \ libswscale-dev:armhf libv4l-dev:armhf \ libxvidcore-dev:armhf libx264-dev:armhf RUN apt install -y crossbuild-essential-armhf gfortran-arm-linux-gnueabihf RUN apt install -y cmake git pkg-config wget RUN mkdir opencv_all && cd opencv_all && \ wget -O opencv.tar.gz https://github.com/opencv/opencv/archive/4.1.0.tar.gz && \ tar -xf opencv.tar.gz -C /tmp && \ wget -O opencv_contrib.tar.gz https://github.com/opencv/opencv_contrib/archive/4.1.0.tar.gz && \ tar -xf opencv_contrib.tar.gz -C /tmp && \ rm *.tar.gz && \ export PKG_CONFIG_PATH=/usr/lib/arm-linux-gnueabihf/pkgconfig:/usr/share/pkgconfig && \ export PKG_CONFIG_LIBDIR=/usr/lib/arm-linux-gnueabihf/pkgconfig:/usr/share/pkgconfig && \ cd /tmp/opencv-4.1.0 && mkdir build && cd build && \ cmake -D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_INSTALL_PREFIX=/opt/opencv-4.1.0 \ -D CMAKE_TOOLCHAIN_FILE=../platforms/linux/arm-gnueabi.toolchain.cmake \ -D OPENCV_EXTRA_MODULES_PATH=/tmp/opencv_contrib-4.1.0/modules \ -D OPENCV_ENABLE_NONFREE=ON \ -D ENABLE_NEON=ON \ -D ENABLE_VFPV3=ON \ -D BUILD_TESTS=OFF \ -D BUILD_DOCS=OFF \ -D PYTHON2_INCLUDE_PATH=/usr/include/python2.7 \ -D PYTHON2_LIBRARIES=/usr/lib/arm-linux-gnueabihf/libpython2.7.so \ -D PYTHON2_NUMPY_INCLUDE_DIRS=/usr/lib/python2/dist-packages/numpy/core/include \ -D PYTHON3_INCLUDE_PATH=/usr/include/python3.7m \ -D PYTHON3_LIBRARIES=/usr/lib/arm-linux-gnueabihf/libpython3.7m.so \ -D PYTHON3_NUMPY_INCLUDE_DIRS=/usr/lib/python3/dist-packages/numpy/core/include \ -D BUILD_OPENCV_PYTHON2=ON \ -D BUILD_OPENCV_PYTHON3=ON \ -D BUILD_EXAMPLES=OFF .. && \ make -j6 && make install/strip RUN cd /opt/opencv-4.1.0/lib/python3.7/dist-packages/cv2/python-3.7/ && \ cp cv2.cpython-37m-x86_64-linux-gnu.so cv2.so RUN cd /opt && tar -cjvf /root/opencv-4.1.0-armhf.tar.bz2 opencv-4.1.0 RUN git clone https://gist.github.com/sol-prog/ed383474872958081985de733eaf352d opencv_cpp_compile_settings && \ cd opencv_cpp_compile_settings && \ cp opencv.pc /root/ 

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


All Articles