ΠΊΠ°ΠΊ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ opencv python Π½Π° windows
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° OpenCV Ρ Python
Π ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΌΡ ΡΠ·Π½Π°Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ OpenCV Π² Python. OpenCV β ΡΡΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΠΌΠΈ, Π²ΠΊΠ»ΡΡΠ°Ρ Windows, Linux ΠΈ MacOS, Π° ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΡΡΡΠΏΠ½Π° Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π΄ΡΡΠ³ΠΈΡ ΡΠ·ΡΠΊΠ°Ρ . ΠΠ΄Π½Π°ΠΊΠΎ ΠΎΠ½ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² Python Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π² ΠΎΠ±Π»Π°ΡΡΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΠΎΠ³ΠΎ Π·ΡΠ΅Π½ΠΈΡ.
ΠΠΎΠΌΠΈΠΌΠΎ ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΈ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΠΈ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π΄ΡΡΠ³ΠΈΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΡΡ ΡΠ·ΡΠΊΠ°Ρ , ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠ΅ Π½Π° Π½Π΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΡΠ°Π·Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ , OpenCV ΡΠ°ΠΊΠΆΠ΅, ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠ°ΠΊΠΈΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌΠΈ, Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π΅Π½ Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π²Π΅ΠΊΡΠΎΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π΄Π»Ρ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° ΡΠ²ΠΎΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ.
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ OpenCV Π½Π° Mac, Windows ΠΈ Linux, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ, Π°ΡΠΈΡΠΌΠ΅ΡΠΈΠΊΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ, ΡΠ³Π»Π°ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π³Π΅ΠΎΠΌΠ΅ΡΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ OpenCV.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° OpenCV Π² Python
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΌΡ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ OpenCV Π½Π° ΡΠ·ΡΠΊΠ΅ Python, Π½Π΅ΡΠ²Π½ΠΎ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ, ΡΡΠΎΠ±Ρ Π½Π° Π²Π°ΡΠ΅ΠΉ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΡΡΠ°Π½ΡΠΈΠΈ ΡΠΆΠ΅ Π±ΡΠ» ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ Python (Π²Π΅ΡΡΠΈΡ 3). Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π²Π°ΡΠ΅ΠΉ ΠΠ‘ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΎΠ΄Π½Ρ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄, ΡΡΠΎΠ±Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ OpenCV Π² Π²Π°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅:
Windows
MacOS
Linux
Π§ΡΠΎΠ±Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, Π±ΡΠ»Π° Π»ΠΈ Π²Π°ΡΠ° ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΡΠΏΠ΅ΡΠ½ΠΎΠΉ, Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π»ΠΈΠ±ΠΎ Π² ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ΅ Python, Π»ΠΈΠ±ΠΎ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΠΈΠ»ΠΈ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅:
ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ ΠΏΡΠΈ ΠΈΠΌΠΏΠΎΡΡΠ΅ cv2, Π·Π½Π°ΡΠΈΡ, ΠΎΠ½ Π±ΡΠ» ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ
Π’Π΅ΠΏΠ΅ΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΈ OpenCV Π½Π° Π½Π°ΡΠΈ ΡΠ°Π±ΠΎΡΠΈΠ΅ ΡΡΠ°Π½ΡΠΈΠΈ, Π΄Π°Π²Π°ΠΉΡΠ΅ Π·Π°ΠΉΠΌΠ΅ΠΌΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ OpenCV.
ΠΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ
ΠΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ OpenCV β ΡΡΠΎ Π΄Π²ΡΡ ΡΡΠ°ΠΏΠ½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ. Π‘Π½Π°ΡΠ°Π»Π° ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π΅Π³ΠΎ Π·Π°Π³ΡΡΠ·ΠΈΡΡ, Π° Π·Π°ΡΠ΅ΠΌ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ. ΠΠ±Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ°Π·Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ.
ΠΠ»Ρ ΡΡΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ cv2.imread(), ΠΈΠΌΠ΅ΡΡΡΡ Π΄Π²Π° Π²Π°ΡΠΈΠ°Π½ΡΠ°. ΠΠ΅ΡΠ²ΡΠΉ β IMREAD_GRAYSCALE, ΠΊΠΎΡΠΎΡΡΠΉ, ΠΊΠ°ΠΊ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠ· Π½Π°Π·Π²Π°Π½ΠΈΡ, ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΎΡΡΠ΅Π½ΠΊΠΈ ΡΠ΅ΡΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅Π΄ Π΅Π³ΠΎ ΡΡΠ΅Π½ΠΈΠ΅ΠΌ. ΠΡΠΎΡΠΎΠΉ β IMREAD_UNCHANGED, ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°Π³ΡΡΠΆΠ°Π΅Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π±Π΅Π· Π²ΡΡΠ΅Π·Π°Π½ΠΈΡ Π°Π»ΡΡΠ°-ΠΊΠ°Π½Π°Π»Π°. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ IMREAD_COLOR ΠΏΡΠΎΡΡΠΎ ΡΡΠΈΡΡΠ²Π°Π΅Ρ ΡΠ²Π΅ΡΠ½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΊΠ°Π½Π°Π»Ρ RGB.
ΠΡΠΈΠ²Π΅Π΄Π΅ΠΌ ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ΄Π°:
ΠΡΠΎ Π·Π°Π³ΡΡΠ·ΠΈΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²Π΅Π»ΠΎΡΠΈΠΏΠ΅Π΄Π° ΠΈΠ· ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ ΡΠΎΡ ΡΠ°Π½ΠΈΡ Π΅Π³ΠΎ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ my_bike Π΄Π»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ ΠΈΠ· ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Π²ΡΡΠ΅ ΠΊΠΎΠ΄Π°, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΡΠ·Π²Π°Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠ΅ΠΌΡ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌΠΈ. ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , Π²Ρ ΡΠΊΠ°Π·Π°Π»ΠΈ Π½Π΅Π²Π΅ΡΠ½ΡΠΉ ΠΏΡΡΡ, Π²ΠΎ-Π²ΡΠΎΡΡΡ , ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ Π²Π°ΠΌΠΈ ΡΠ°ΠΉΠ» ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ, Π° Π²ΠΎ-Π²ΡΠΎΡΡΡ , ΡΡΠΎ ΡΠΈΠΏ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ (jpg, jpeg ΠΈ png) Π² ΠΏΡΡΠΈ ΠΊ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π½Π΅Π²Π΅ΡΠ΅Π½.
Π’Π΅ΠΏΠ΅ΡΡ Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΠΌ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ ΠΏΡΠΎΡΠΈΡΠ°Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅. ΠΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ cv2.imshow().
ΠΠ΅ΡΠ²ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ imshow() β ΡΡΠΎ ΠΈΠΌΡ ΡΡΡΠΎΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ Π² ΠΎΠΊΠ½Π΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ. ΠΡΠΎΡΠΎΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ β ΡΡΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ cv2.imread().
Π‘ΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅
Π‘ΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ β ΠΎΡΠ΅Π½Ρ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠ°Ρ ΡΡΠ½ΠΊΡΠΈΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π½Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡΡΡ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ Π΄Π»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. OpenCV ΠΈΠΌΠ΅Π΅Ρ ΡΡΠ½ΠΊΡΠΈΡ cv2.imwrite() Π΄Π»Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ.
ΠΠ΄Π΅ΡΡ ΠΌΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ ΠΈΠΌΡ ΠΈ ΡΠ΅ΠΊΡΡΠ΅Π΅ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ. ΠΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅.
ΠΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ
ΠΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ ΠΎΡΠ½ΠΎΡΡΡΡΡ ΠΊ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π²ΡΡΠΈΡΠ°Π½ΠΈΡ, ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π΄Π΅Π»Π΅Π½ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ Π²Ρ ΠΎΠ΄Π½ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ. ΠΡΠΈΡΠΌΠ΅ΡΠΈΠΊΠ° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΈΠΌΠ΅Π΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π²ΠΎΠ΄ΡΠ½ΠΎΠ³ΠΎ Π·Π½Π°ΠΊΠ° ΠΊ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠΌΠ΅ΡΠ°Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ Π΄Π²ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ, ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠΈΠΏΠΎΠ² ΡΠΈΠ»ΡΡΡΠΎΠ² ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ Ρ.Π΄.
Π₯ΠΎΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ, ΠΌΡ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ Π·Π΄Π΅ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π²Π° ΠΏΡΠΈΠΌΠ΅ΡΠ°, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π²Π°ΠΌ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ ΠΊ Π΄ΡΡΠ³ΠΈΠΌ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌ, Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ Π² OpenCV. ΠΠ΅ΡΠ²ΡΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π²ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ, Π° Π²ΡΠΎΡΡΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΡΠΌΠ΅ΡΠΈΠ²Π°Π½ΠΈΠ΅ Π΄Π²ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ.
ΠΠ°Π²Π°ΠΉΡΠ΅ Π·Π°ΠΊΠΎΠ΄ΠΈΡΡΠ΅ΠΌ ΡΡΠΈ Π΄Π²Π° ΠΏΡΠΈΠΌΠ΅ΡΠ°:
ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅
ΠΠΎΠΌΠ°Π½Π΄Π° waitKey Π±ΡΠ΄Π΅Ρ ΠΆΠ΄Π°ΡΡ, ΠΏΠΎΠΊΠ° Π²Ρ Π½Π°ΠΆΠΌΠ΅ΡΠ΅ ΠΊΠ»Π°Π²ΠΈΡΡ, ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΎΠ½Π° ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅Ρ ΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅. ΠΡΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π»Π° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ Π²Π°ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡΠ΄Π΅Ρ Π½Π°ΠΆΠ°ΡΠ° ΠΊΠ»Π°Π²ΠΈΡΠ°, Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π½Π° Π΄ΠΎΠ»Ρ ΡΠ΅ΠΊΡΠ½Π΄Ρ, Π° Π·Π°ΡΠ΅ΠΌ Π±ΡΡΡΡΠΎ ΠΈΡΡΠ΅Π·Π½Π΅Ρ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΡΠ΅ΠΊΡΠ°ΡΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅.
Π‘ΠΌΠ΅ΡΠΈΠ²Π°Π½ΠΈΠ΅
Π‘ΠΌΠ΅ΡΠΈΠ²Π°Π½ΠΈΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ, Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΏΡΠ°Π²Π»ΡΡΡ Π²ΠΊΠ»Π°Π΄ΠΎΠΌ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π² Π½ΠΎΠ²ΠΎΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠΈΡΡΡΡΠ΅Π΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅. ΠΠΎ ΡΡΡΠΈ, Π΅ΡΠ»ΠΈ ΠΌΡ Ρ ΠΎΡΠΈΠΌ, ΡΡΠΎΠ±Ρ ΠΎΠ΄Π½ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΡΠΎΠΊΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ, Π° Π΄ΡΡΠ³ΠΎΠ΅ β Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠΊΠ»ΡΠΌ ΠΏΡΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΈ, ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΌΠ΅ΡΠΈΠ²Π°Π½ΠΈΠ΅, Π° Π½Π΅ ΠΏΡΠΎΡΡΠΎΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅.
ΠΠ°Π²Π°ΠΉΡΠ΅ Π·Π°ΠΊΠΎΠ΄ΠΈΡΡΠ΅ΠΌ ΡΡΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΡΡΠ½ΠΈΡΡ Π΄Π°Π»ΡΡΠ΅:
Π‘ΡΠΌΠΌΠ° Π²Π΅ΡΠΎΠ², ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ addWeighted, Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΡΠ°Π²Π½Π° 1.0. ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ ΡΠΊΠ°Π»ΡΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ ΠΊΠΎ Π²ΡΠ΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌ ΠΏΠΈΠΊΡΠ΅Π»Π΅ΠΉ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΌ Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΡΠΎΡΠΌΠ°Ρ PNG, Π²ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π΄Π»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ, ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ PNG.
Π‘Π³Π»Π°ΠΆΠΈΠ²Π°Π½ΠΈΠ΅
Π‘Π³Π»Π°ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ β ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π΄ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ΅ΠΉ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Π² ΠΌΠΎΠ΄Π΅Π»Ρ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ. Π ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΡΡΠΌΠΎΠ²ΡΡ ΠΈ Π²ΡΡΠΎΠΊΠΎΡΠ°ΡΡΠΎΡΠ½ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ· ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΏΡΡΠ΅ΠΌ ΠΏΡΠΎΠΏΡΡΠΊΠ°Π½ΠΈΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠ΅ΡΠ΅Π· ΡΠΈΠ»ΡΡΡ Π½ΠΈΠΆΠ½ΠΈΡ ΡΠ°ΡΡΠΎΡ. Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠΈΠ»ΡΡΡΠΎΠ², Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΡΠΉ ΡΠΈΠ»ΡΡΡ (ΡΡΡΠ΅Π΄Π½ΡΡΡΠΈΠΉ ΡΠΈΠ»ΡΡΡ), ΠΌΠ΅Π΄ΠΈΠ°Π½Π½ΡΠΉ ΡΠΈΠ»ΡΡΡ, ΠΌΠΎΠ΄ΠΎΠ²ΡΠΉ ΡΠΈΠ»ΡΡΡ, ΡΠΈΠ»ΡΡΡ ΠΠ°ΡΡΡΠ° ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄ΡΡΠ³ΠΈΠ΅. ΠΠ΄Π½Π°ΠΊΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ ΡΠ³Π»Π°ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΈ ΡΠΎ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ OpenCV, ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΠΎΠ»ΡΠΊΠΎ Π±Π»ΠΎΡΠ½ΡΠΉ ΡΠΈΠ»ΡΡΡ.
ΠΠΎΠΏΡΡΡΠΈΠΌ, Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 10Γ10, ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΡΠΎΠΏΡΡΡΠΈΡΡ Π΅Π³ΠΎ ΡΠ΅ΡΠ΅Π· ΡΠΈΠ»ΡΡΡ 3Γ3 ΠΈΠ»ΠΈ ΡΡΡΠ΅Π΄Π½ΡΡΡΠΈΠΉ, ΠΊΠ°ΠΊ Π±Ρ Π²Ρ ΡΡΠΎ ΡΠ΄Π΅Π»Π°Π»ΠΈ?
ΠΡ Π½Π°ΡΠ½Π΅ΡΠ΅ Ρ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ ΡΠ³Π»Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΠ΅ ΡΡΠ΄Π° ΡΠ²ΠΎΠΉ ΡΠΈΠ»ΡΡΡ 3Γ3 ΠΈ Π·Π°ΠΌΠ΅Π½ΠΈΡΠ΅ ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΡΠ΅Π΄Π½ΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ Π²ΡΠ΅Ρ 9 ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ². ΠΡΠΎ Π±ΡΠ» ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ°Π³, ΡΠ΅ΠΏΠ΅ΡΡ Π²Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΡΠ΅ ΡΠ²ΠΎΠΉ ΡΠΈΠ»ΡΡΡ Π½Π° ΠΎΠ΄ΠΈΠ½ ΡΠ°Π³ Π²ΠΏΡΠ°Π²ΠΎ ΠΈ ΠΏΠΎΠ²ΡΠΎΡΠΈΡΠ΅ ΡΠΎΡ ΠΆΠ΅ ΠΏΡΠΎΡΠ΅ΡΡ, ΠΏΠΎΠΊΠ° Π½Π΅ ΠΏΠΎΠΊΡΠΎΠ΅ΡΠ΅ Π²ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅. ΠΠΈΠΆΠ΅ Π΄Π»Ρ ΡΠΏΡΠ°Π²ΠΊΠΈ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ 10Γ10 ΠΈ ΡΡΡΠ΅Π΄Π½ΡΡΡΠ΅Π³ΠΎ ΡΠΈΠ»ΡΡΡΠ° 3Γ3:
Π€ΠΈΠ»ΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΊ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ 10Γ10:
Π’Π΅ΠΏΠ΅ΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ ΠΎΠ±ΡΡΠ΄ΠΈΠ»ΠΈ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠΈΠ»ΡΡΡΡ ΠΊ Π½Π°ΡΠ΅ΠΌΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ OpenCV. ΠΠ½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΈΡΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ, ΡΡΠΎΠ±Ρ ΡΠ·Π½Π°ΡΡ, ΠΊΠ°ΠΊΠ°Ρ ΡΡΡΠΎΠΊΠ° ΠΊΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΊΠ°ΠΊΠΎΠ³ΠΎ ΡΠΈΠ»ΡΡΡΠ°:
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄:
ΠΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ
ΠΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ, Π½ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠ°ΠΌΡΡ Π²Π°ΠΆΠ½ΡΡ ΡΠ΅ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌΡΡ Π·Π°ΡΡΠΎΠ½ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ OpenCV. Π£ Π½Π΅Π³ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½ΠΎ ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΡΠ°ΠΌΡΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ β ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ΅ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ , ΡΠΎ Π΅ΡΡΡ, ΠΊΠΎΠ³Π΄Π° Ρ Π²Π°Ρ Π½Π΅Ρ Π²Π°ΡΠΊΠ° Π½Π°Π±ΠΎΡΠ° Π΄Π°Π½Π½ΡΡ , Π²Ρ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΠ΅ ΠΈ ΡΡΠ°Π½ΡΡΠΎΡΠΌΠΈΡΡΠ΅ΡΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΡΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΠΈΡ ΠΎΡΠ»ΠΈΡΠ½ΡΠΌΠΈ ΠΎΡ Π²Π°ΡΠ΅Π³ΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ Π½Π°Π±ΠΎΡΠ° Π΄Π°Π½Π½ΡΡ . ΠΡΠΎ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ Π²Π°ΡΠ΅Π³ΠΎ Π½Π°Π±ΠΎΡΠ° Π΄Π°Π½Π½ΡΡ ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΌΠΎΡΡ Π² ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΠΈ ΡΠΎΡΠ½ΠΎΡΡΠΈ Π²Π°ΡΠ΅ΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ.
Π‘ΠΏΠΈΡΠΎΠΊ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅, Π°ΡΡΠΈΠ½Π½ΠΎΡΡΡ, Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅, ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ ΠΈ Ρ.Π΄. ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π²Π° ΠΈΠ· Π½ΠΈΡ , ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ OpenCV, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΎΠ±ΡΠ΅Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅. ΠΠ΄Π½Π°ΠΊΠΎ OpenCV ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π΄Π»Ρ ΡΠΈΡΠΎΠΊΠΎΠ³ΠΎ ΠΈΡ ΠΊΡΡΠ³Π°. ΠΠ°ΡΠ½Π΅ΠΌ Ρ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
ΠΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
ΠΡΠΎΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ, ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ β ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π²Π°ΡΠ΅Π³ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΡΠΎ Π΅ΡΡΡ Π΅Π³ΠΎ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΠ΅. resize β ΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠ°Ρ Π΄Π»Ρ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Π² OpenCV. Π£ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π΅ΡΡΡ ΡΡΠΈ ΡΠΈΠΏΠ°: INTER_CUBIC, INTER_LINEAR ΠΈ INTER_AREA. ΠΠ°Π²Π°ΠΉΡΠ΅ Π·Π°ΠΊΠΎΠ΄ΠΈΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠΉ ΡΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π΄Π»Ρ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΈΡΠ΅ ΠΊΠΎΠ΄, ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΈ ΠΎΠ±ΡΡΡΠ½ΡΡ, ΡΡΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π² ΠΊΠΎΠ΄Π΅:
ΠΠ΄Π΅ΡΡ, Π² ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠ°, ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ fx in ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠ°ΡΡΡΠ°Π±Π½ΡΠΉ ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½Ρ Π΄Π»Ρ ΡΠΈΡΠΈΠ½Ρ, fy ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠ°ΡΡΡΠ°Π±Π½ΡΠΉ ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½Ρ ΠΏΠΎ Π²ΡΡΠΎΡΠ΅, Π° ΠΈΠ½ΡΠ΅ΡΠΏΠΎΠ»ΡΡΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΡ (ΡΠΆΠ°ΡΠΈΠ΅ ΠΈΠ»ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅).
ΠΡΠ°ΡΠ΅Π½ΠΈΠ΅
ΠΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²ΠΎΠΊΡΡΠ³ ΠΎΡΠΈ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ Π·Π°Π΄Π°Π½Π½ΡΠΉ ΡΠ³ΠΎΠ».
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΌΡ ΡΠ·Π½Π°Π΅ΠΌ, ΠΊΠ°ΠΊ Π²ΡΠ°ΡΠ°ΡΡ Π½Π°ΡΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠ΄Π°, ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π·Π½Π°ΡΡ, ΡΡΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΌΠ°ΡΡΠΈΡΠ° Π²ΡΠ°ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ. ΠΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ Π²Π΄Π°Π²Π°ΡΡΡΡ Π² ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ ΡΡΠΎΠ³ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ OpenCV ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΌ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎ Π²ΡΡΠΈΡΠ»ΠΈΡΡ ΡΡΡ ΠΌΠ°ΡΡΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π²ΡΠ·ΠΎΠ²Π° ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΡ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΡΠΎ Π² ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΊΠΎΠ΄Π΅:
Π ΡΡΠ½ΠΊΡΠΈΠΈ getRotationMatrix2D 180 ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΡΠ΅ΠΏΠ΅Π½Ρ ΠΏΠΎΠ²ΠΎΡΠΎΡΠ° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, 1 β ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½Ρ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π²ΡΠ·ΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΈ Π²Π΅ΡΠ½Π΅Ρ ΠΌΠ°ΡΡΠΈΡΡ ΠΏΠΎΠ²ΠΎΡΠΎΡΠ° Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ matrix.
ΠΡΠ·ΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΈ warpAffine ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΌΠ°ΡΡΠΈΡΡ, ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ Π²ΡΡΠΈΡΠ»ΠΈΠ»ΠΈ ΠΈΠ· ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°, Π΄Π»Ρ ΠΏΠΎΠ²ΠΎΡΠΎΡΠ° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ Π½Π°ΡΠΈΠΌΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌΠΈ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π Π·Π°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π΄Π°Π²Π°ΠΉΡΠ΅ Π΅ΡΠ΅ ΡΠ°Π· ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠ½Π΅ΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π°ΠΆΠ½ΡΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ ΠΎΠ±ΡΡΠΆΠ΄Π°Π»ΠΈ Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅. OpenCV β ΡΡΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°, Π΄ΠΎΡΡΡΠΏΠ½Π°Ρ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ·ΡΠΊΠ°Ρ , ΠΊΠΎΡΠΎΡΠ°Ρ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ NumPy, SciPy ΠΈ Matplotlib, ΠΊΠ°ΠΊ ΠΌΡ Π²ΠΈΠ΄Π΅Π»ΠΈ Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΈΠ· ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ Π²ΡΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ². ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π΅Π³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΉ ΡΠ°ΠΊΠΈΠ΅ ΠΆΠ΅, ΠΊΠ°ΠΊ Π² Matlab, ΠΈ ΠΎΠ½ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π²Π΅ΠΊΡΠΎΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, ΡΡΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅Ρ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, OpenCV β ΠΎΠ΄Π½Π° ΠΈΠ· Π»ΡΡΡΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Π΄Π»Ρ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΠΎΠ³ΠΎ Π·ΡΠ΅Π½ΠΈΡ, ΠΈ ΠΏΠΎΡΠ»Π΅ ΠΏΡΠΎΡΡΠ΅Π½ΠΈΡ ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠΈ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ ΠΏΠΎΠΈΡΠΊ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΠΎΠ³ΠΎ Π·ΡΠ΅Π½ΠΈΡ ΠΈ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Ρ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ OpenCV.
ΠΠ°ΠΊ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ OpenCV Π² Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΡΡΠ΅Π΄Ρ Python
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ ΠΏΠΎΠΊΠ°ΠΆΡ, ΠΊΠ°ΠΊ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ OpenCV Π² Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΡΡΠ΅Π΄Ρ Python. Π― ΠΎΠΏΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΡΠ°ΠΏΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ:
ΠΡΠ΅ Π±ΡΠ»ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΎ Π½Π° ΠΏΠ»Π°Π½ΡΠ΅ΡΠ΅ Microsoft Surface, Windows 10 Pro, c 64-Π±ΠΈΡΠ½ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° OpenCV Π² Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΡΡΠ΅Π΄Ρ Python
ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Π½Π° Π²Π°ΡΠ΅ΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Python
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° virtualenv
ΠΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΡΡΠ΅Π΄Π° Π½Π°ΠΌ Π½ΡΠΆΠ½Π° Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π±ΡΠ»Π° ΡΠ²ΠΎΡ Β«ΠΊΠΎΠΌΠ½Π°ΡΠ°Β» ΡΠΎ ΡΠ²ΠΎΠΈΠΌΠΈ Π²Π΅ΡΡΠΈΡΠΌΠΈ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ Π±ΡΠ΄ΡΡ Π·Π°Π²ΠΈΡΠ΅ΡΡ ΠΎΡ Π΄ΡΡΠ³ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΠΈ ΠΏΡΡΠ°ΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ.
ΠΠ±Π½ΠΎΠ²ΠΈΠ»ΠΈ pip, ΡΠ΅ΠΏΠ΅ΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΡΡΠ΅Π΄Ρ:
pip install virtualenv
ΠΠΎΠΌΠ°Π½Π΄ΠΎΠΉ cd ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΠΏΠ°ΠΏΠΊΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΡΡΠ΅Π΄Ρ ΠΈ Π²Π²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
mkdir opencvtutorial_env β ΡΠ°ΠΊ ΠΌΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ ΡΡΠ΅Π΄Ρ Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ opencvtutorial_env.
ΠΠ°Π»Π΅Π΅ Π²Π²ΠΎΠ΄ΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ virtualenv opencvtutorial_env ΠΈ Π΄Π»Ρ Π°ΠΊΡΠΈΠ²Π°ΡΠΈΠΈ ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΠΏΠ°ΠΏΠΊΡ ΡΡΠ΅Π΄Ρ ΠΈ Π΄Π°Π»Π΅Π΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Tab Π΄ΠΎ activate.
.\opencvtutorial_env\Scripts\activate
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ OpenCV-Python, Numpy ΠΈ Matplotlib
ΠΠ½ΠΈ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΡΡΡΡ Π΄Π»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ opencv.
Π‘Π°ΠΌΡΠΉ Π»Π΅Π³ΠΊΠΈΠΉ ΠΈ Π±ΡΡΡΡΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Ρ ΠΌΠ΅Π½Ρ ΠΏΠΎΠ»ΡΡΠΈΠ»ΡΡ Ρ Π½Π΅ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ. Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ Π΅Π³ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
pip install opencv-python
Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
Π’Π΅ΠΏΠ΅ΡΡ ΠΎΡΡΠ°Π»ΠΎΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π²ΡΠ΅ Π»ΠΈ Ρ Π½Π°Ρ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. Π ΠΎΡΠΊΡΡΠ²ΡΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ ΡΠΎΠ·Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΡΠΉ Python 3 ΡΠ°ΠΉΠ», ΠΈ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
import cv2 as cv
print( cv.__version__ )
ΠΡΠ»ΠΈ Π²ΡΡ ΠΎΠ΄ΠΈΡ Π²Π΅ΡΡΠΈΡ opencv, ΡΠΎ ΠΏΠΎΠ·Π΄ΡΠ°Π²Π»ΡΡ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΡΠΎΡΠΈΠ°Π»Ρ c ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ°. ΠΠΎΠΈ ΠΏΡΠΈΠΌΠ΅ΡΡ ΡΠ°Π±ΠΎΡ ΠΏΠΎ ΡΡΡΠΎΡΠΈΠ°Π»Π°ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠ°Π΄Π΅ΡΡΡ ΡΡΠ° ΡΡΠ°ΡΡΡ Π²Π°ΠΌ ΠΏΠΎΠΌΠΎΠ³Π»Π° ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ OpenCV Π² Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΡΡΠ΅Π΄Ρ Python. ΠΠΎΡ Π΅ΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠ°ΡΠ΅ΠΉ ΠΊΠ°ΡΠ°Π΅ΠΌΠΎ OpenCV:
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° OpenCV + CUDA Π½Π° Windows
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
Π Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΡΠ΅ΡΡ ΠΏΠΎΠΉΠ΄Π΅Ρ ΠΎ ΡΠ±ΠΎΡΠΊΠ΅ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ OpenCV 4 Π΄Π»Ρ C/C++, Python 2 ΠΈ Python 3 ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΠΌΠΎΠ΄ΡΠ»ΡΠΌΠΈ CUDA 10 Π½Π° ΠΠ‘ Windows.
Π― ΠΏΠΎΡΡΠ°ΡΠ°Π»ΡΡ Π²ΠΊΠ»ΡΡΠΈΡΡ ΡΡΠ΄Π° Π²ΡΠ΅ ΡΠΎΠ½ΠΊΠΎΡΡΠΈ ΠΈ Π½ΡΠ°Π½ΡΡ, Ρ ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠΎΠ»ΠΊΠ½ΡΡΡΡΡ Π² Ρ
ΠΎΠ΄Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, ΠΈ ΠΏΡΠΎ ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ Π² ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΌ ΠΌΠ°Π½ΡΠ°Π»Π΅.
Π‘Π±ΠΎΡΠΊΠ° ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π»Π°ΡΡ Π΄Π»Ρ:
Π§ΡΠΎ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ
Π ΠΌΠΎΠ΅ΠΉ ΡΠ±ΠΎΡΠΊΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ:
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°
Π’Π°ΠΊ ΠΊΠ°ΠΊ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΡΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΠΈ Π°ΠΊΠΊΡΡΠ°ΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π²ΡΠ΅ ΡΠ°Π³ΠΈ. Π’Π°ΠΊΠΆΠ΅, ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ, ΠΌΠ΅Π½ΡΠΉΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΎΡΠ½ΡΠ΅ ΠΏΡΡΠΈ Π½Π° ΡΠ²ΠΎΠΈ.
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΡΠ΅Π±ΡΠ΅ΠΌΠΎΠ΅ ΠΠ, ΠΏΡΠΈΡΠ΅ΠΌ Visual Studio Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π° Π΄ΠΎ CUDA:
ΠΠ°Π»Π΅Π΅ Π·Π°Π³ΡΡΠΆΠ°Π΅ΠΌ Π°ΡΡ ΠΈΠ²Ρ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΎΠ² opencv-4.1.1 ΠΈ opencv-contrib-4.1.1 Π² ΠΆΠ΅Π»Π°Π΅ΠΌΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ (Π² ΠΌΠΎΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΎ C:\OpenCV\).
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΏΠ°ΠΏΠΊΡ build/ Π²Π½ΡΡΡΠΈ opencv-4.1.1.
ΠΠ°Π»Π΅Π΅ ΡΠ³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΠΌ ΡΠ°ΠΉΠ»Ρ ΡΠ±ΠΎΡΠΊΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ cmake. ΠΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ cmake, ΡΠ°ΠΊ ΠΊΠ°ΠΊ cmake-gui ΠΏΡΡΠ°Π΅Ρ ΡΠΈΠΏΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, OPENCV_PYTHON3_VERSION) ΠΈ, ΠΊΠ°ΠΊ ΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠ΅, Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΡΠ°ΠΉΠ»Ρ.
ΠΡΠΊΡΡΠ²Π°Π΅ΠΌ ΠΊΠΎΠ½ΡΠΎΠ»Ρ ΠΏΠΎ ΠΏΡΡΠΈ C:\OpenCV\ ΠΈ ΠΏΡΠΎΠΏΠΈΡΡΠ²Π°Π΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. ΠΠ»Ρ Visual Studio 2017 Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ ΠΏΠΈΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ Β«Visual Studio 15 2017 Win64Β» ΠΈ Π±Π΅Π· ΡΠ»Π°Π³Π° -A.
Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²Π½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΏΠΈΡΠΎΠ½ΠΎΠ²ΡΠΊΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π΄Π»Ρ python 2 ΠΈ python 3 Π½Π° ΡΠ»ΡΡΠ°ΠΉ, Π΅ΡΠ»ΠΈ ΡΠ±ΠΎΡΡΠΈΠΊ Π½Π΅ ΡΠΌΠΎΠΆΠ΅Ρ Π½Π°ΠΉΡΠΈ ΠΈΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΠΎ, ΡΡΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° NumPy Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΡΠΎΠΉ ΠΆΠ΅ ΡΠ°Π·ΡΡΠ΄Π½ΠΎΡΡΠΈ, ΡΡΠΎ ΠΈ OpenCV. ΠΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΡΠΎ Π»Π΅Π³ΠΊΠΎ:
ΠΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΡΠ±ΠΎΡΠΊΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π΄Π»ΠΈΠ½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½ΠΈΠΆΠ΅. ΠΡΠΈ Π½Π΅ΡΠ΄Π°ΡΠ½ΠΎΠΉ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΈΠ»ΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΏΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΠΏΠΎΠ²ΡΠΎΡΠ½ΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ Π²ΡΡΠΈΡΡΠΈΠ² Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π² build/ ΠΈ .cache/.
Π‘ΠΏΡΡΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ 10 ΠΌΠΈΠ½ΡΡ Π² ΠΊΠΎΠ½ΡΠΎΠ»Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΡΠ²ΠΈΡΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ±ΠΎΡΠΊΠ΅ ΠΈ Π·Π°Π²Π΅ΡΡΠ°ΡΡΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ Β«Configuring doneΒ» ΠΈ Β«Generating doneΒ». ΠΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ Π²ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΡΠ°Π·Π΄Π΅Π»Ρ NVIDIA CUDA, Python 2, Python 3.
ΠΠ°Π»Π΅Π΅ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅. ΠΠ° ΡΠ±ΠΎΡΠΊΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠΉΡΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΠΎΠ² Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΈ Π²Π΅ΡΡΠΈΠΈ Visual Studio.
ΠΠΎΡΠ»Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ OPENCV_DIR ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ C:\OpenCV\opencv-4.1.1\build\install\x64\vc15\bin ΠΈ ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ Π΅Π΅ Π² PATH.
ΠΡΠΎΠ²Π΅ΡΠΈΠΌ ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ OpenCV Ρ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΌ CUDA Π½Π° ΠΏΡΠΎΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΡ.
ΠΡΠΈΠΌΠ΅Ρ Π½Π° Python 3
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅
Π§ΡΠΎΠ±Ρ ΡΠ΄Π°Π»ΠΈΡΡ OpenCV, Π½ΡΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
ΠΈ ΡΠ΄Π°Π»ΠΈΡΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ OPENCV_DIR ΠΈ ΡΠ±ΡΠ°ΡΡ ΠΏΡΡΡ Π΄ΠΎ OpenCV ΠΈΠ· PATH.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ OpenCV 4 Π΄Π»Ρ ΠΠ‘ Windows 10. ΠΠ°Π½Π½ΡΠΉ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π»ΡΡ Π½Π° Windows 8.1 ΠΈ Windows 10, Π½ΠΎ, Π² ΡΠ΅ΠΎΡΠΈΠΈ, ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ±ΠΈΡΠ°ΡΡΡΡ ΠΈ Π½Π° Windows 7. ΠΠ° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΠΊ ΡΠΏΠΈΡΠΊΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ² Π½ΠΈΠΆΠ΅.
OpenCV Π² Python. Π§Π°ΡΡΡ 1
ΠΡΠΈΠ²Π΅Ρ, Π₯Π°Π±Ρ! ΠΠ°ΠΏΡΡΠΊΠ°Ρ ΡΠΈΠΊΠ» ΡΡΠ°ΡΠ΅ΠΉ ΠΏΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ OpenCV Π² Python. ΠΠΎΠΌΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ, Π΄ΠΎΠ±ΡΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ΄ ΠΊΠ°Ρ!
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
OpenCV β ΡΡΠΎ open source Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΠΎΠ³ΠΎ Π·ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° Π΄Π»Ρ Π°Π½Π°Π»ΠΈΠ·Π°, ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ. Π¨ΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΡΠ°ΠΊΠΈΡ ΡΠ·ΡΠΊΠ°Ρ ΠΊΠ°ΠΊ C, C++, Python ΠΈ Java.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°
ΠΡΠ΄Π΅ΠΌ ΡΡΠΈΡΠ°ΡΡ, ΡΡΠΎ Python ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° OpenCV Ρ Π²Π°Ρ ΡΠΆΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ, Π΅ΡΠ»ΠΈ Π½Π΅Ρ, ΡΠΎ Π²ΠΎΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ python Π½Π° windows ΠΈ Π½Π° ubuntu, ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° OpenCV Π½Π° windows ΠΈ Π½Π° ubuntu.
ΠΠ΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎ ΠΏΠΈΠΊΡΠ΅Π»ΠΈ ΠΈ ΡΠ²Π΅ΡΠΎΠ²ΡΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°
ΠΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Ρ ΡΠ΅ΠΎΡΠΈΠ΅ΠΉ. ΠΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π½Π°Π±ΠΎΡΠ° ΠΏΠΈΠΊΡΠ΅Π»Π΅ΠΉ. ΠΠΈΠΊΡΠ΅Π»Ρ β ΡΡΠΎ ΡΡΡΠΎΠΈΡΠ΅Π»ΡΠ½ΡΠΉ Π±Π»ΠΎΠΊ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ. ΠΡΠ»ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² Π²ΠΈΠ΄Π΅ ΡΠ΅ΡΠΊΠΈ, ΡΠΎ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΊΠ²Π°Π΄ΡΠ°Ρ Π² ΡΠ΅ΡΠΊΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΠ΄ΠΈΠ½ ΠΏΠΈΠΊΡΠ΅Π»Ρ, Π³Π΄Π΅ ΡΠΎΡΠΊΠ΅ Ρ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠΎΠΉ ( 0, 0 ) ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π²Π΅ΡΡ Π½ΠΈΠΉ Π»Π΅Π²ΡΠΉ ΡΠ³ΠΎΠ» ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ. Π ΠΏΡΠΈΠΌΠ΅ΡΡ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠΌ, ΡΡΠΎ Ρ Π½Π°Ρ Π΅ΡΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ 400×300 ΠΏΠΈΠΊΡΠ΅Π»Π΅ΠΉ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π½Π°ΡΠ° ΡΠ΅ΡΠΊΠ° ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· 400 ΡΡΡΠΎΠΊ ΠΈ 300 ΡΡΠΎΠ»Π±ΡΠΎΠ². Π ΡΠΎΠ²ΠΎΠΊΡΠΏΠ½ΠΎΡΡΠΈ Π² Π½Π°ΡΠ΅ΠΌ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΈ Π΅ΡΡΡ 400*300 = 120000 ΠΏΠΈΠΊΡΠ΅Π»Π΅ΠΉ.
Π Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΈΠΊΡΠ΅Π»ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π΄Π²ΡΠΌΡ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ: Π² ΠΎΡΡΠ΅Π½ΠΊΠ°Ρ ΡΠ΅ΡΠΎΠ³ΠΎ ΠΈ Π² ΡΠ²Π΅ΡΠΎΠ²ΠΎΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ RGB. Π ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΡ Π² ΠΎΡΡΠ΅Π½ΠΊΠ°Ρ ΡΠ΅ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΏΠΈΠΊΡΠ΅Π»Ρ ΠΈΠΌΠ΅Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ 0 ΠΈ 255, Π³Π΄Π΅ 0 ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΡΡΠ½ΠΎΠΌΡ, Π° 255 ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π±Π΅Π»ΠΎΠΌΡ. Π Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ 0 ΠΈ 255 ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΎΡΡΠ΅Π½ΠΊΠΈ ΡΠ΅ΡΠΎΠ³ΠΎ, Π³Π΄Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π±Π»ΠΈΠΆΠ΅ ΠΊ 0 Π±ΠΎΠ»Π΅Π΅ ΡΡΠΌΠ½ΡΠ΅, Π° Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π±Π»ΠΈΠΆΠ΅ ΠΊ 255 Π±ΠΎΠ»Π΅Π΅ ΡΠ²Π΅ΡΠ»ΡΠ΅:
Π¦Π²Π΅ΡΠ½ΡΠ΅ ΠΏΠΈΠΊΡΠ΅Π»ΠΈ ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π² ΡΠ²Π΅ΡΠΎΠ²ΠΎΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ RGB(red, green, blue β ΠΊΡΠ°ΡΠ½ΡΠΉ, Π·Π΅Π»ΡΠ½ΡΠΉ, ΡΠΈΠ½ΠΈΠΉ), Π³Π΄Π΅ ΠΎΠ΄Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΊΡΠ°ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, ΠΎΠ΄Π½ΠΎ Π΄Π»Ρ Π·Π΅Π»ΡΠ½ΠΎΠΉ ΠΈ ΠΎΠ΄Π½ΠΎ Π΄Π»Ρ ΡΠΈΠ½Π΅ΠΉ. ΠΠ°ΠΆΠ΄Π°Ρ ΠΈΠ· ΡΡΡΡ
ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° ΡΠ΅Π»ΡΠΌ ΡΠΈΡΠ»ΠΎΠΌ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ 0 Π΄ΠΎ 255 Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΊΠ°ΠΊ Β«ΠΌΠ½ΠΎΠ³ΠΎΒ» ΡΠ²Π΅ΡΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ. ΠΡΡ
ΠΎΠ΄Ρ ΠΈΠ· ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ [0,255], ΡΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ Π½Π°ΡΡΡΠ΅Π½Π½ΠΎΡΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ²Π΅ΡΠ°, Π½Π°ΠΌ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ 8-Π±ΠΈΡΠ½ΠΎΠ³ΠΎ ΡΠ΅Π»ΠΎΠ³ΠΎ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π°. ΠΠ°ΡΠ΅ΠΌ ΠΌΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π²ΡΠ΅Ρ
ΡΡΡΡ
ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Π² ΠΊΠΎΡΡΠ΅ΠΆ Π²ΠΈΠ΄Π° (ΠΊΡΠ°ΡΠ½ΡΠΉ, Π·Π΅Π»Π΅Π½ΡΠΉ, ΡΠΈΠ½ΠΈΠΉ). Π ΠΏΡΠΈΠΌΠ΅ΡΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π±Π΅Π»ΡΠΉ ΡΠ²Π΅Ρ, ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΈΠ· ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠ°Π²Π½ΡΡΡΡΡ 255: (255, 255, 255). Π’ΠΎΠ³Π΄Π°, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΡΡΠ½ΡΠΉ ΡΠ²Π΅Ρ, ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΈΠ· ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΡΠ°Π²Π½ΠΎΠΉ 0: (0, 0, 0). ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½ΡΠ΅ ΡΠ²Π΅ΡΠ°, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΠ΅ Π² Π²ΠΈΠ΄Π΅ RGB ΠΊΠΎΡΡΠ΅ΠΆΠ΅ΠΉ:
ΠΠΌΠΏΠΎΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ OpenCV
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΡΠΌ ΠΊ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠ°ΡΡΠΈ. ΠΠ΅ΡΠ²ΠΎΠ΅, ΡΡΠΎ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π΅Π»Π°ΡΡ β ΡΡΠΎ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ. ΠΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΡΠ΅ΠΉ ΠΈΠΌΠΏΠΎΡΡΠ°, ΡΠ°ΠΌΡΠΉ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½ΡΠΉ β ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅:
Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡΡΠ΅ΡΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ Π΄Π»Ρ ΠΈΠΌΠΏΠΎΡΡΠ° Π΄Π°Π½Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ:
ΠΠ°Π³ΡΡΠ·ΠΊΠ°, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ
ΠΠ»Ρ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ cv2.imread(), Π³Π΄Π΅ ΠΏΠ΅ΡΠ²ΡΠΌ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠΌ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΏΡΡΡ ΠΊ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, Π° Π²ΡΠΎΡΡΠΌ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΌ, ΠΌΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ, Π² ΠΊΠ°ΠΊΠΎΠΌ ΡΠ²Π΅ΡΠΎΠ²ΠΎΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΡΡΠΈΡΠ°ΡΡ Π½Π°ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅. Π§ΡΠΎΠ±Ρ ΡΡΠΈΡΠ°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² RGB β cv2.IMREAD_COLOR, Π² ΠΎΡΡΠ΅Π½ΠΊΠ°Ρ ΡΠ΅ΡΠΎΠ³ΠΎ β cv2.IMREAD_GRAYSCALE. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄Π°Π½Π½ΡΠΉ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ cv2.IMREAD_COLOR. ΠΠ°Π½Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ 2D (Π΄Π»Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π² ΠΎΡΡΠ΅Π½ΠΊΠ°Ρ ΡΠ΅ΡΠΎΠ³ΠΎ) Π»ΠΈΠ±ΠΎ 3D (Π΄Π»Ρ ΡΠ²Π΅ΡΠ½ΠΎΠ³ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ) ΠΌΠ°ΡΡΠΈΠ² NumPy. Π€ΠΎΡΠΌΠ° ΠΌΠ°ΡΡΠΈΠ²Π° Π΄Π»Ρ ΡΠ²Π΅ΡΠ½ΠΎΠ³ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ: Π²ΡΡΠΎΡΠ° x ΡΠΈΡΠΈΠ½Π° x 3, Π³Π΄Π΅ 3 β ΡΡΠΎ Π±Π°ΠΉΡΡ, ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ Π±Π°ΠΉΡΡ Π½Π° ΠΊΠ°ΠΆΠ΄ΡΡ ΠΈΠ· ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ. Π ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΡ Π² ΠΎΡΡΠ΅Π½ΠΊΠ°Ρ ΡΠ΅ΡΠΎΠ³ΠΎ Π²ΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅: Π²ΡΡΠΎΡΠ° x ΡΠΈΡΠΈΠ½Π°.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ cv2.imshow() ΠΌΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Π½Π°ΡΠ΅ΠΌ ΡΠΊΡΠ°Π½Π΅. Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° ΠΌΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΌ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π½Π°ΡΠ΅Π³ΠΎ ΠΎΠΊΠ½Π°, Π° Π²ΡΠΎΡΡΠΌ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠΌ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΌΡ Π·Π°Π³ΡΡΠ·ΠΈΠ»ΠΈ Ρ Π΄ΠΈΡΠΊΠ°, ΠΎΠ΄Π½Π°ΠΊΠΎ, Π΅ΡΠ»ΠΈ ΠΌΡ Π΄Π°Π»Π΅Π΅ Π½Π΅ ΡΠΊΠ°ΠΆΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ cv2.waitKey(), ΡΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎ Π·Π°ΠΊΡΠΎΠ΅ΡΡΡ. ΠΠ°Π½Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄ΠΎ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΊΠ»Π°Π²ΠΈΡΠΈ, ΠΊΠΎΡΠΎΡΡΡ Π½ΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΏΠ΅ΡΠ²ΡΠΌ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠΌ. ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π»ΡΠ±Π°Ρ ΠΊΠ»Π°Π²ΠΈΡΠ° Π±ΡΠ»Π° Π·Π°ΡΡΠΈΡΠ°Π½Π° ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ 0. Π‘Π»Π΅Π²Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΎΡΡΠ΅Π½ΠΊΠ°Ρ ΡΠ΅ΡΠΎΠ³ΠΎ, Π° ΡΠΏΡΠ°Π²Π° Π² ΡΠΎΡΠΌΠ°ΡΠ΅ RGB:
Π, Π½Π°ΠΊΠΎΠ½Π΅Ρ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ cv2.imwrite() Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅ΠΌ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² ΡΠ°ΠΉΠ» Π² ΡΠΎΡΠΌΠ°ΡΠ΅ jpg(Π΄Π°Π½Π½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π²ΡΠ΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅ ΡΠΎΡΠΌΠ°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ:png, tiff,jpeg,bmp ΠΈ Ρ. Π΄., ΠΏΠΎΡΡΠΎΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π½Π°ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² Π»ΡΠ±ΠΎΠΌ ΠΈΠ· ΡΡΠΈΡ ΡΠΎΡΠΌΠ°ΡΠΎΠ²), Π³Π΄Π΅ ΠΏΠ΅ΡΠ²ΡΠΌ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠΌ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΡΠ°ΠΌΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅, Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ.
ΠΠΎΡΡΡΠΏ ΠΊ ΠΏΠΈΠΊΡΠ΅Π»ΡΠΌ ΠΈ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠΌΠΈ
ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠ·Π½Π°ΡΡ Π²ΡΡΠΎΡΡ, ΡΠΈΡΠΈΠ½Ρ ΠΈ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΊΠ°Π½Π°Π»ΠΎΠ² Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π°ΡΡΠΈΠ±ΡΡ shape:
ΠΠ°ΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΡΠΎ Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Π² ΠΎΡΡΠ΅Π½ΠΊΠ°Ρ ΡΠ΅ΡΠΎΠ³ΠΎ img.shape[2] Π±ΡΠ΄Π΅Ρ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½ΠΎ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π² Π²ΠΈΠ΄Π΅ 2D ΠΌΠ°ΡΡΠΈΠ²Π°.
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΈΠΊΡΠ΅Π»Ρ, Π½Π°ΠΌ ΠΏΡΠΎΡΡΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ x ΠΈ y ΠΏΠΈΠΊΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ΅Ρ. Π’Π°ΠΊΠΆΠ΅ Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΡΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° OpenCV Ρ ΡΠ°Π½ΠΈΡ ΠΊΠ°Π½Π°Π»Ρ ΡΠΎΡΠΌΠ°ΡΠ° RGB Π² ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ ΠΌΡ Π΄ΡΠΌΠ°Π΅ΠΌ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Ρ ΠΊΡΠ°ΡΠ½ΠΎΠ³ΠΎ, Π·Π΅Π»Π΅Π½ΠΎΠ³ΠΎ ΠΈ ΡΠΈΠ½Π΅Π³ΠΎ, ΡΠΎ OpenCV Ρ ΡΠ°Π½ΠΈΡ ΠΈΡ Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΡΠΈΠ½Π΅Π³ΠΎ, Π·Π΅Π»Π΅Π½ΠΎΠ³ΠΎ ΠΈ ΠΊΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΠ²Π΅ΡΠΎΠ²:
CΠ½Π°ΡΠ°Π»Π° ΠΌΡ Π±Π΅ΡΡΠΌ ΠΏΠΈΠΊΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ Π² ΡΠΎΡΠΊΠ΅ (0,0). ΠΠ°Π½Π½ΡΠΉ ΠΏΠΈΠΊΡΠ΅Π»Ρ, Π΄Π° ΠΈ Π»ΡΠ±ΠΎΠΉ Π΄ΡΡΠ³ΠΎΠΉ ΠΏΠΈΠΊΡΠ΅Π»Ρ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΡΡΠ΅ΠΆΠ°. ΠΠ°ΠΌΠ΅ΡΡΡΠ΅, ΡΡΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Ρ Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ b, g ΠΈ r. Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΡΡΠΎΠΊΠ΅ Π²ΡΠ²ΠΎΠ΄ΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠ°Π½Π°Π»Π° Π½Π° ΡΠΊΡΠ°Π½. ΠΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ, Π΄ΠΎΡΡΡΠΏ ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌ ΠΏΠΈΠΊΡΠ΅Π»Π΅ΠΉ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΏΡΠΎΡΡ, ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΎΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΏΠΈΠΊΡΠ΅Π»Π΅ΠΉ:
Π ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΠΌΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΈΠΊΡΠ΅Π»Ρ (0, 0) ΡΠ°Π²Π½ΡΠΌ (255, 0, 0), Π·Π°ΡΠ΅ΠΌ ΠΌΡ ΡΠ½ΠΎΠ²Π° Π±Π΅ΡΡΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΈΠΊΡΠ΅Π»Ρ ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΠΌ Π΅Π³ΠΎ Π½Π° ΡΠΊΡΠ°Π½, Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΌΠ½Π΅ Π½Π° ΠΊΠΎΠ½ΡΠΎΠ»Ρ Π²ΡΠ²Π΅Π»ΠΎΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
ΠΠ° ΡΡΠΎΠΌ Ρ Π½Π°Ρ ΠΊΠΎΠ½Π΅Ρ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΠ°ΡΡΠΈ. ΠΡΠ»ΠΈ Π²Π΄ΡΡΠ³ ΠΊΠΎΠΌΡ-ΡΠΎ Π½ΡΠΆΠ΅Π½ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΈ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ°, ΡΠΎ Π²ΠΎΡ ΡΡΡΠ»ΠΊΠ° Π½Π° github. ΠΡΠ΅ΠΌ ΡΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅!
ΠΠ°ΠΊ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ OpenCV Π΄Π»Ρ Python Π² Windows?
OpenCV β ΡΡΠΎ ΠΎΠ³ΡΠΎΠΌΠ½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΠΎΠ³ΠΎ Π·ΡΠ΅Π½ΠΈΡ, ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ, ΠΈ ΡΠ΅ΠΏΠ΅ΡΡ ΠΎΠ½Π° ΠΈΠ³ΡΠ°Π΅Ρ Π²Π°ΠΆΠ½ΡΡ ΡΠΎΠ»Ρ Π² ΡΠ°Π±ΠΎΡΠ΅ Π² ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΡΡΠΎ ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΠΎ Π² ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ . Π‘ Π΅Π³ΠΎ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΈ Π²ΠΈΠ΄Π΅ΠΎ Π΄Π»Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², Π»ΠΈΡ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΠΏΠΎΡΠ΅ΡΠΊΠ° ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ°. ΠΡΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌΠΈ, ΡΠ°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ Numpuy, python ΠΌΠΎΠΆΠ΅Ρ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΡΡΡΡΠΊΡΡΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° OpenCV Π΄Π»Ρ Π°Π½Π°Π»ΠΈΠ·Π°. Π§ΡΠΎΠ±Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°Π±Π»ΠΎΠ½Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΈ Π΅Π³ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π²Π΅ΠΊΡΠΎΡΠ½ΠΎΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ ΡΡΠΈΠΌΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ.
ΠΠ»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ OpenCV Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ Python ΠΈ PIP. Π§ΡΠΎΠ±Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, Π΅ΡΡΡ Π»ΠΈ Π² Π²Π°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ Python, Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ:
ΠΡΠΊΡΠΎΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΡ ΡΡΡΠΎΠΊΡ (Π½Π°ΠΉΠ΄ΠΈΡΠ΅ cmd Π² Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅ Β«ΠΡΠΏΠΎΠ»Π½ΠΈΡΡΒ» (win + R).
Π’Π΅ΠΏΠ΅ΡΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΡΠ»ΠΈ Python ΡΠΆΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½, ΠΎΠ½ Π²ΡΠ΄Π°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Ρ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠ΅ΠΉ Python.
PIP β ΡΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠ°Ρ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΌΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈ / Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌΠΈ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΌΠΈ Π½Π° Python. ΠΡΠΈ ΡΠ°ΠΉΠ»Ρ Ρ
ΡΠ°Π½ΡΡΡΡ Π² Π±ΠΎΠ»ΡΡΠΎΠΌ Β«ΠΎΠ½Π»Π°ΠΉΠ½ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈΒ», Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠΎΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ ΠΏΠ°ΠΊΠ΅ΡΠ° Python (PyPI).
Π§ΡΠΎΠ±Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ Π»ΠΈ PIP Π² Π²Π°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅, ΠΏΡΠΎΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΡ ΡΡΡΠΎΠΊΡ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
Π‘ΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° OpenCV:
OpenCV ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΡΡΠΌΡΡ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ pip (Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅ΡΠ° ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²). Π§ΡΠΎΠ±Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ OpenCV, ΠΏΡΠΎΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΡ ΡΡΡΠΎΠΊΡ ΠΈ Π²Π²Π΅Π΄ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
Π§ΡΠΎΠ±Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ Π»ΠΈ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ OpenCV, ΠΏΡΠΎΡΡΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π²Π΅ΡΡΠΈΠΈ: