РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ

РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ². ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ пособиС. Π§Π°ΡΡ‚ΡŒ 1

РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ

ВсС Π½Π°Ρ‡ΠΈΠ½Π°Π»ΠΎΡΡŒ банально β€” моя компания ΡƒΠΆΠ΅ Π³ΠΎΠ΄ ΠΏΠ»Π°Ρ‚ΠΈΠ»Π° СТСмСсячно ΠΏΠ»Π°Ρ‚Ρƒ Π·Π° сСрвис, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠΌΠ΅Π» Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ€Π΅Π³ΠΈΠΎΠ½ с Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ Π½Π° Ρ„ΠΎΡ‚ΠΎ. Π­Ρ‚Π° функция примСняСтся для автоматичСской зарисовки Π½ΠΎΠΌΠ΅Ρ€Π° Ρƒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ².

И Π² ΠΎΠ΄ΠΈΠ½ прСкрасный дСнь ΠœΠ’Π” Π£ΠΊΡ€Π°ΠΈΠ½Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Π»ΠΎ доступ ΠΊ рССстру транспортных срСдств. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎ Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎΠΌΡƒ Π·Π½Π°ΠΊΡƒ стало Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΏΡ€ΠΎ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ (ΠΌΠ°Ρ€ΠΊΡƒ, модСль, Π³ΠΎΠ΄ выпуска, Ρ†Π²Π΅Ρ‚ ΠΈ Ρ‚.Π΄. )! Бкучная Ρ€ΡƒΡ‚ΠΈΠ½Π° Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠ³ΠΎ программирования ΠΏΠΎΠΌΠ΅Ρ€ΠΊΠ»Π° ΠΏΠ΅Ρ€Π΅Π΄ Π½ΠΎΠ²ΠΎΠΉ свСхзадачСй β€” ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€Π° ΠΏΠΎ всСй Π±Π°Π·Π΅ Ρ„ΠΎΡ‚ΠΎ ΠΈ Π²Π°Π»ΠΈΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ эти Π΄Π°Π½Π½Ρ‹Π΅ с Ρ‚Π΅ΠΌΠΈ, Ρ‡Ρ‚ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π» ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ. Π‘Π°ΠΌΠΈ Π·Π½Π°Π΅Ρ‚Π΅ ΠΊΠ°ΠΊ это Π±Ρ‹Π²Π°Π΅Ρ‚ Β«Π³Π»Π°Π·Π° Π·Π°Π³ΠΎΡ€Π΅Π»ΠΈΡΡŒΒ» β€” Π²Ρ‹Π·ΠΎΠ² принят, всС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π° врСмя стали скучны ΠΈ монотонны… ΠœΡ‹ ΠΏΡ€ΠΈΠ½ΡΠ»ΠΈΡΡŒ Π·Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹, Ρ‡Π΅ΠΌ, собствСнно ΠΈ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ с сообщСством.

Для справки: Π½Π° сайт AUTO.RIA.com, Π² дСнь добавляСтся ΠΎΠΊΠΎΠ»ΠΎ 100 000 Ρ„ΠΎΡ‚ΠΎ.

ΠšΡ‚ΠΎ Π΅Ρ‰Π΅ распознаСт

Π“ΠΎΠ΄ Π½Π°Π·Π°Π΄ я ΠΈΠ·ΡƒΡ‡ΠΈΠ» этот Ρ€Ρ‹Π½ΠΎΠΊ ΠΈ оказалось, Ρ‡Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌΠΈ стран exUSSR ΡƒΠΌΠ΅Π΅Ρ‚ Π½Π΅ Ρ‚Π°ΠΊ ΡƒΠΆ ΠΌΠ½ΠΎΠ³ΠΎ сСрвисов ΠΈ ПО. НиТС прСдставлСн список ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ:

Automatic License Plate Recognition

Recognitor

КакиС инструмСнты Π½ΡƒΠΆΠ½Ρ‹ для распознавания Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ²

НахоТдСниС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ ΠΈΠ»ΠΈ Π² Π²ΠΈΠ΄Π΅ΠΎ-ΠΏΠΎΡ‚ΠΎΠΊΠ΅ это Π·Π°Π΄Π°Ρ‡Π° ΠΈΠ· области ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠ³ΠΎ зрСния, которая Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°ΠΌΠΈ, Π½ΠΎ Ρ‡Π°Ρ‰Π΅ всСго с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ, Ρ‚Π°ΠΊ-Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ…, свСрточных Π½Π΅ΠΉΡ€ΠΎΠ½Π½Ρ‹Ρ… сСтСй. Нам Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π½Π΅ просто ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Π½Π° Ρ„ΠΎΡ‚ΠΎ Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ встрСчаСтся искомый ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, Π½ΠΎ ΠΈ ΠΎΡ‚Π΄Π΅Π»ΠΈΡ‚ΡŒ всС Π΅Π³ΠΎ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈΠ»ΠΈ Ρ„ΠΎΠ½Π°. Π­Ρ‚Π° Ρ€Π°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡ называСтся Β«Instance SegmentationΒ». На ΠΈΠ»Π»ΡŽΡΡ‚Ρ€Π°Ρ†ΠΈΠΈ Π½ΠΈΠΆΠ΅ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Ρ€Π°Π·Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ Π·Π°Π΄Π°Ρ‡ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠ³ΠΎ зрСния.

РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ

Π― Π½Π΅ Π±ΡƒΠ΄Ρƒ сСйчас ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Ρ‚Π΅ΠΎΡ€ΠΈΠΈ ΠΎ Ρ‚ΠΎΠΌ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ свСрточная ΡΠ΅Ρ‚ΡŒ, этой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ достаточно Π² сСти ΠΈ Π΄ΠΎΠΊΠ»Π°Π΄ΠΎΠ² Π½Π° youtube.

Из соврСмСнных Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ свСрточных сСрСй для Π·Π°Π΄Π°Ρ‡ сСгмСнтации часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚: U-Net ΠΈΠ»ΠΈ Mask R-CNN. ΠœΡ‹ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ Mask R-CNN.
Π’Ρ‚ΠΎΡ€ΠΎΠΉ инструмСнт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π°ΠΌ понадобится β€” это Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΠΎ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΡŽ тСкстов, которая Π±Ρ‹ ΠΌΠΎΠ³Π»Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ языками ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ спСцифику тСкстов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Π²Π°Ρ‚ΡŒ. Π’ΡƒΡ‚ Π²Ρ‹Π±ΠΎΡ€ Π½Π΅ Ρ‚Π°ΠΊ ΡƒΠΆ Π²Π΅Π»ΠΈΠΊ, самой ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚ΠΎΠΉ являСтся tesseract ΠΎΡ‚ Google.

Π’Π°ΠΊ ΠΆΠ΅ Π΅ΡΡ‚ΡŒ ряд ΠΌΠ΅Π½Π΅Π΅ Β«Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ…Β» инструмСнтов, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π½ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ с Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΌ Π·Π½Π°ΠΊΠΎΠΌ (привСсти Π΅Π³ΠΎ Π² Ρ‚Π°ΠΊΠΎΠΉ Π²ΠΈΠ΄, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ распознаваниС тСкста Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ). ΠžΠ±Ρ‹Ρ‡Π½ΠΎ для Ρ‚Π°ΠΊΠΈΡ… ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ opencv.

Π’Π°ΠΊ ΠΆΠ΅, ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ страну ΠΈ Ρ‚ΠΈΠΏ, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ относится Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎΠΉ Π·Π½Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ± Π² постобработкС ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΡƒΡ‚ΠΎΡ‡Π½ΡΡŽΡ‰ΠΈΠΉ шаблон, Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½Ρ‹ΠΉ для этой страны ΠΈ этого Ρ‚ΠΈΠΏΠ° Π½ΠΎΠΌΠ΅Ρ€Π°. НапримСр, украинский Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎΠΉ Π·Π½Π°ΠΊ, начиная с 2015 Π³ΠΎΠ΄Π° ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½ Π² синС-ΠΆΠ΅Π»Ρ‚ΠΎΠΌ ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½ΠΈΠΈ состоит ΠΈΠ· шаблона Β«Π΄Π²Π΅ Π±ΡƒΠΊΠ²Ρ‹ Ρ‡Π΅Ρ€Ρ‹Ρ€Π΅ Ρ†ΠΈΡ„Ρ€Ρ‹ Π΄Π²Π΅ Π±ΡƒΠΊΠ²Ρ‹Β».

РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, имСя статистику частоты «встрСчания» Π² Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… Π·Π½Π°ΠΊΠ°Ρ… Ρ‚ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠ³ΠΎ сочСтания Π±ΡƒΠΊΠ² ΠΈΠ»ΠΈ Ρ†ΠΈΡ„Ρ€ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ качСство постобработки Π² «спорных» ситуациях. «

Nomeroff Net

ВсС ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹ для нашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°: Ρ€Π°Π·ΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Π΅ датасСты ΠΈ Π½Π°Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΌΡ‹ Π²Ρ‹Π»ΠΎΠΆΠΈΠ»ΠΈ Π² ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ доступ с Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ RIA.com ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ Creative Commons CC BY 4.0

Π§Ρ‚ΠΎ Π½Π°ΠΌ понадобится

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ установку ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ dockerfile β€” ΠΎΠΆΠΈΠ΄Π°ΠΉΡ‚Π΅ Π² Π±Π»ΠΈΠΆΠ°ΠΉΡˆΠΈΡ… Π°ΠΏΠ΄Π΅ΠΉΡ‚Π°Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Nomeroff Net Β«Hello worldΒ»

Π”Π°Π²Π°ΠΉΡ‚Π΅ ΡƒΠΆΠ΅ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Ρ‚ΡŒ. ΠšΠ»ΠΎΠ½ΠΈΡ€ΡƒΠ΅ΠΌ с github-Π° Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ с ΠΊΠΎΠ΄ΠΎΠΌ. ΠšΠ°Ρ‡Π°Π΅ΠΌ Π² ΠΏΠ°ΠΏΠΊΡƒ models, Π½Π°Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ для поиска ΠΈ классификации Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ², Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΏΡ€Π°Π²ΠΈΠΌ ΠΏΠΎΠ΄ сСбя ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ с располоТСниСм ΠΏΠ°ΠΏΠΎΠΊ.

UPD: Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ являСтся ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌ, ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π²Π΅Ρ‚ΠΊΠ΅ 0.1.0, свСТиС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ смотритС здСсь:
ВсС, ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Π²Π°Ρ‚ΡŒ:

Онлайн дСмка

Набросали ΠΏΡ€ΠΎΡΡ‚Π΅Π½ΡŒΠΊΡƒΡŽ Π΄Π΅ΠΌΠΊΡƒ для Ρ‚Π΅Ρ… ΠΊΠΎΠΌΡƒ Π½Π΅ хочСтся всС это ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΈ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Ρƒ сСбя :). Π‘ΡƒΠ΄ΡŒΡ‚Π΅ ΡΠ½ΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ ΠΈ Ρ‚Π΅Ρ€ΠΏΠ΅Π»ΠΈΠ²Ρ‹ ΠΊ скорости Ρ€Π°Π±ΠΎΡ‚Ρ‹ скрипта.

Если Π½ΡƒΠΆΠ½Ρ‹ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ украинских Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² (для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ†ΠΈΠΈ), Π²ΠΎΠ·ΡŒΠΌΠΈΡ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈΠ· этой ΠΏΠ°ΠΏΠΊΠΈ.

Π§Ρ‚ΠΎ дальшС

Π― понимаю, Ρ‡Ρ‚ΠΎ Ρ‚Π΅ΠΌΠ° ΠΎΡ‡Π΅Π½ΡŒ нишСвая ΠΈ вряд Π»ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ большой интСрСс Ρƒ ΡˆΠΈΡ€ΠΎΠΊΠΎΠ³ΠΎ ΠΊΡ€ΡƒΠ³Π° программистов, ΠΊΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠΎΠ΄ ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΅Ρ‰Π΅ достаточно «сыроваты» Π² ΠΏΠ»Π°Π½Π΅ качСства распознавания, быстродСйствия, потрСблСния памяти ΠΈ ΠΏΡ€. Но всС ΠΆΠ΅ Π΅ΡΡ‚ΡŒ Π½Π°Π΄Π΅ΠΆΠ΄Π°, Ρ‡Ρ‚ΠΎ найдутся энтузиасты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ интСрСсно Π½Π°Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΏΠΎΠ΄ свои Π½ΡƒΠΆΠ΄Ρ‹, свою страну, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ ΠΈ подскаТут, Π³Π΄Π΅ Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΈ вмСстС с Π½Π°ΠΌΠΈ ΡΠ΄Π΅Π»Π°ΡŽΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π΅ Ρ…ΡƒΠΆΠ΅, Ρ‡Π΅ΠΌ коммСрчСскиС Π°Π½Π°Π»ΠΎΠ³ΠΈ.

Π˜Π·Π²Π΅ΡΡ‚Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹

Анонс

Если это Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΠΎΠΌΡƒ-Ρ‚ΠΎ интСрСсно, Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ части собираСмся Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ ΠΊΠ°ΠΊ ΠΈ Ρ‡Π΅ΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ‡Π°Ρ‚ΡŒ свой датасСт ΠΈ ΠΊΠ°ΠΊ Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свои ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π»ΡƒΡ‡ΡˆΠ΅ для вашСго ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° (вашСй страны, вашСго Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Ρ„ΠΎΡ‚ΠΎ). Π’Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ свой классификатор, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ Π½Π΅ зарисован Π»ΠΈ Π½ΠΎΠΌΠ΅Ρ€ Π½Π° Ρ„ΠΎΡ‚ΠΎ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

РаспознаваниС Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π² дСталях

РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ
Настало врСмя ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ наша рСализация Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° распознавания Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ²: Ρ‡Ρ‚ΠΎ оказалось ΡƒΠ΄Π°Ρ‡Π½Ρ‹ΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ, Ρ‡Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΎ вСсьма сквСрно. И просто ΠΎΡ‚Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒΡΡ ΠΏΠ΅Ρ€Π΅Π΄ Π₯Π°Π±Ρ€Π°-ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ β€” вСдь Π²Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Android прилоТСния Recognitor ΠΏΠΎΠΌΠΎΠ³Π»ΠΈ Π½Π°ΠΌ Π½Π°Π±Ρ€Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΈΡ‡Π½ΠΎΠ³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π±Π°Π·Ρƒ снимков Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ², снятых ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ нСпрСдвзято, Π±Π΅Π· объяснСния ΠΊΠ°ΠΊ ΡΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Π° ΠΊΠ°ΠΊ Π½Π΅Ρ‚. А Π±Π°Π·Π° снимков ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² распознавания самоС Π²Π°ΠΆΠ½ΠΎΠ΅!

Π§Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ с Android ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Recognitor

Π‘Ρ‹Π»ΠΎ ΠΎΡ‡Π΅Π½ΡŒ приятно, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π₯Π°Π±Ρ€Π° взялись ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π½Π°ΠΌ Π½ΠΎΠΌΠ΅Ρ€Π°.

РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ
Π‘ΠΊΠ°Ρ‡ΠΈΠ²Π°Π½ΠΈΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΠΎΡ†Π΅Π½ΠΊΠΈ

Π‘ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° выкладывания прилоТСния Π½Π° сСрвСр ΠΏΡ€ΠΈΡˆΠ»ΠΎ 3800 снимков Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² ΠΎΡ‚ мобильного прилоТСния.
А Π΅Ρ‰Π΅ большС нас ΠΏΠΎΡ€Π°Π΄ΠΎΠ²Π°Π»Π° ссылка http://212.116.121.70:10000/uploadimage β€” Π½Π°ΠΌ Π·Π° 2 дня ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΠ»ΠΈ ΠΎΠΊΠΎΠ»ΠΎ 8 тысяч ΠΏΠΎΠ»Π½ΠΎΡ€Π°Π·ΠΌΠ΅Ρ€Π½Ρ‹Ρ… снимков Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² (прСимущСствСнно вологодских)! Π‘Π΅Ρ€Π²Π΅Ρ€ ΠΏΠΎΡ‡Ρ‚ΠΈ Π»Π΅ΠΆΠ°Π».

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ нас Π½Π° Ρ€ΡƒΠΊΠ°Ρ… Π±Π°Π·Π° Π² 12 000 снимков Ρ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΉ β€” Π²ΠΏΠ΅Ρ€Π΅Π΄ΠΈ гигантская Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ². ВсС самоС интСрСсноС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ начинаСтся!

Напомню, Ρ‡Ρ‚ΠΎ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Android ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ выдСлялся Π½ΠΎΠΌΠ΅Ρ€. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ я Π½Π΅ Π±ΡƒΠ΄Ρƒ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΎΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π½Π° этом этапС. Π’ нашСм случаС β€” каскадный Π΄Π΅Ρ‚Π΅ΠΊΡ‚ΠΎΡ€ Π₯Π°Π°Ρ€Π°. Π­Ρ‚ΠΎΡ‚ Π΄Π΅Ρ‚Π΅ΠΊΡ‚ΠΎΡ€ Π½Π΅ всСгда срабатываСт, Ссли Π½ΠΎΠΌΠ΅Ρ€ Π² ΠΊΠ°Π΄Ρ€Π΅ сильно ΠΏΠΎΠ²Π΅Ρ€Π½ΡƒΡ‚. Анализ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π°ΠΌΠΈ ΠΎΠ±ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ каскадный Π΄Π΅Ρ‚Π΅ΠΊΡ‚ΠΎΡ€, ΠΊΠΎΠ³Π΄Π° Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, ΠΎΡΡ‚Π°Π²Π»ΡŽ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ. Π­Ρ‚ΠΎ вСдь Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‡Π΅Π½ΡŒ интСрСсно. ΠšΠ°ΠΆΠ΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ это Ρ‡Π΅Ρ€Π½Ρ‹ΠΉ ящик β€” Π²ΠΎΡ‚ ΠΎΠ±ΡƒΡ‡ΠΈΠ»ΠΈ Π΄Π΅Ρ‚Π΅ΠΊΡ‚ΠΎΡ€ ΠΈ большС Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ. На самом Π΄Π΅Π»Π΅ это Π½Π΅ Ρ‚Π°ΠΊ.

Но всС-Ρ‚Π°ΠΊΠΈ каскадный Π΄Π΅Ρ‚Π΅ΠΊΡ‚ΠΎΡ€ β€” Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π² случаС ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹Ρ… Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… рСсурсов. Если Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€ грязный ΠΈΠ»ΠΈ Ρ€Π°ΠΌΠΊΠ° ΠΏΠ»ΠΎΡ…ΠΎ Π²ΠΈΠ΄Π½Π°, Ρ‚ΠΎ Π₯Π°Π°Ρ€ Ρ‚ΠΎΠΆΠ΅ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ сСбя проявляСт ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ².

РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€Π°

Π—Π΄Π΅ΡΡŒ рассказ ΠΏΡ€ΠΎ распознаваниС тСкста Π² ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ°Ρ… Ρ‚Π°ΠΊΠΎΠ³ΠΎ Π²ΠΈΠ΄Π°:

РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ
ΠžΠ±Ρ‰ΠΈΠ΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹ ΠΏΡ€ΠΎ распознавании Π±Ρ‹Π»ΠΈ описаны Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅.

Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΌΡ‹ ставили ΠΏΠ΅Ρ€Π΅Π΄ собой Π·Π°Π΄Π°Ρ‡Ρƒ распознавания грязных, частично стСртых ΠΈ Π·Π΄ΠΎΡ€ΠΎΠ²ΠΎ искаТСнных пСрспСктивой Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ².
Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, это интСрСсно, Π° Π²ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, казалось, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠ³Π΄Π° чистыС Π±ΡƒΠ΄ΡƒΡ‚ ΡΡ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π² 100% случаях. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Ρ‚Π°ΠΊ ΠΈ происходит. Но Ρ‚ΡƒΡ‚ Π½Π΅ слоТилось. Оказалось, Ρ‡Ρ‚ΠΎ Ссли ΠΏΠΎ грязным Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ успСха Π±Ρ‹Π»Π° 88%, Ρ‚ΠΎ ΠΏΠΎ чистым, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 90%. Π₯отя Π½Π° Π΄Π΅Π»Π΅ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ распознавания ΠΎΡ‚ Ρ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΈ Π½Π° мобильном ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π΄ΠΎ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π°, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, оказалось Π΅Ρ‰Π΅ Ρ…ΡƒΠΆΠ΅ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Ρ†ΠΈΡ„Ρ€Ρ‹. Π§ΡƒΡ‚ΡŒ мСньшС 50% ΠΎΡ‚ приходящих ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ (Ρ‡Ρ‚ΠΎΠ±Ρ‹ люди Π½Π΅ ΠΏΡ‹Ρ‚Π°Π»ΠΈΡΡŒ Ρ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ). Π’.Π΅. Π² срСднСм Π΄Π²Π°ΠΆΠ΄Ρ‹ Π½ΡƒΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΡΡ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ. Π₯отя Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ Ρ‚Π°ΠΊΠΎΠΉ Π½ΠΈΠ·ΠΊΠΈΠΉ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ связан с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΡ‹Ρ‚Π°Π»ΠΈΡΡŒ ΡΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€Π° с экрана ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π°, Π° Π½Π΅ Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ обстановкС.

Π’Π΅ΡΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ строился для грязных Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ². Но Π²ΠΎΡ‚ оказалось, Ρ‡Ρ‚ΠΎ сСйчас Π»Π΅Ρ‚ΠΎΠΌ Π² МосквС 9 ΠΈΠ· 10 Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² идСально чистыС. А Π·Π½Π°Ρ‡ΠΈΡ‚ Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΡΡ‚Ρ€Π°Ρ‚Π΅Π³ΠΈΡŽ ΠΈ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΄Π²Π° Ρ€Π°Π·Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°. Если ΡƒΠ΄Π°Π»ΠΎΡΡŒ быстро ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Ρ‚ΡŒ чистый Π½ΠΎΠΌΠ΅Ρ€, Ρ‚ΠΎ этот Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ, Π° Ссли Π½Π΅ ΡƒΠ΄Π°Π»ΠΎΡΡŒ, Ρ‚ΠΎ Ρ‚Ρ€Π°Ρ‚ΠΈΠΌ Π΅Ρ‰Π΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ процСссора ΠΈ запускаСм Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ для грязных Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ².

ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ распознавания Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ стоило Π±Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ сразу

Как ΠΆΠ΅ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Ρ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΈ чистый Π½ΠΎΠΌΠ΅Ρ€? Π­Ρ‚ΠΎ совсСм Π½Π΅ слоТно.

ΠŸΡ€Π΅Π΄ΡŠΡΠ²ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ трСбования ΠΊ Ρ‚Π°ΠΊΠΎΠΌΡƒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡƒ:

1) нСкоторая ΡƒΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ ΠΊ ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Π°ΠΌ (Β± 10 градусов)
2) ΡƒΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ ΠΊ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ измСнСнию ΠΌΠ°ΡΡˆΡ‚Π°Π±Π° (20%)
3) ΠΎΡ‚Ρ€Π΅Π·Π°Π½ΠΈΠ΅ ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ Π³Ρ€Π°Π½ΠΈΡ† Π½ΠΎΠΌΠ΅Ρ€Π° Π³Ρ€Π°Π½ΠΈΡ†Π΅ΠΉ ΠΊΠ°Π΄Ρ€Π° ΠΈΠ»ΠΈ просто ΠΏΠ»ΠΎΡ…ΠΎ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½Π½Ρ‹Π΅ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ€ΡƒΡˆΠΈΡ‚ΡŒ всС (это ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎ Π²Π°ΠΆΠ½ΠΎ, Ρ‚.ΠΊ. Π² случаС грязных Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² приходится ΠΎΠΏΠΈΡ€Π°Ρ‚ΡŒΡΡ Π½Π° Π³Ρ€Π°Π½ΠΈΡ†Ρƒ Π½ΠΎΠΌΠ΅Ρ€Π°; Ссли Π½ΠΎΠΌΠ΅Ρ€ чистый, Ρ‚ΠΎ Π½ΠΈΡ‡Π΅Π³ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ Ρ†ΠΈΡ„Ρ€/Π±ΡƒΠΊΠ² Π½Π΅ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΠ·ΡƒΠ΅Ρ‚ Π½ΠΎΠΌΠ΅Ρ€).

Π˜Ρ‚Π°ΠΊ, Π² чистых ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠΎ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹Ρ… Π½ΠΎΠΌΠ΅Ρ€Π°Ρ… всС Ρ†ΠΈΡ„Ρ€Ρ‹ ΠΈ Π±ΡƒΠΊΠ²Ρ‹ ΠΎΡ‚Π΄Π΅Π»ΠΈΠΌΡ‹ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°, Π° Π·Π½Π°Ρ‡ΠΈΡ‚ ΠΌΠΎΠΆΠ½ΠΎ Π±ΠΈΠ½Π°Ρ€ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈ морфологичСскими ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ Π»ΠΈΠ±ΠΎ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ связанныС области, Π»ΠΈΠ±ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ извСстными функциями выдСлСния ΠΊΠΎΠ½Ρ‚ΡƒΡ€ΠΎΠ².

Π—Π΄Π΅ΡΡŒ стоит Π΅Ρ‰Π΅ ΠΏΡ€ΠΎΠΉΡ‚ΠΈΡΡŒ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠΌ срСдних частот ΠΈ Π½ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.
РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ
На ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ малоконтрастный ΠΊΠ°Π΄Ρ€ для наглядности.

Π—Π°Ρ‚Π΅ΠΌ Π±ΠΈΠ½Π°Ρ€ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎ фиксированному ΠΏΠΎΡ€ΠΎΠ³Ρƒ (ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡ€ΠΎΠ³ Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‚. ΠΊ. ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π±Ρ‹Π»ΠΎ Π½ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ).

Π“ΠΈΠΏΠΎΡ‚Π΅Π·Ρ‹ ΠΏΠΎ ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Ρƒ ΠΊΠ°Π΄Ρ€Π°

РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ

Π’ дальнСйшСм ΠΌΠ΅Ρ‚ΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ ΡƒΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ ΠΊ ΡƒΠ³Π»Ρƒ ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Π° Ρ†ΠΈΡ„Ρ€ ΠΈ Π±ΡƒΠΊΠ², поэтому Π²Ρ‹Π±Ρ€Π°Π½ Ρ‚Π°ΠΊΠΎΠΉ достаточно большой шаг ΠΏΠΎ ΡƒΠ³Π»Ρƒ β€” 10 градусов.
Π‘ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ ΠΊΠ°Π΄Ρ€ΠΎΠΌ Π² дальнСйшСм Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ нСзависимо. Какая Π³ΠΈΠΏΠΎΡ‚Π΅Π·Π° ΠΏΠΎ ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Ρƒ даст Π»ΡƒΡ‡ΡˆΠΈΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, Ρ‚Π° ΠΈ ΠΏΠΎΠ±Π΅Π΄ΠΈΡ‚.

А Π·Π°Ρ‚Π΅ΠΌ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ всС связанныС области. Π’ΡƒΡ‚ использовалась стандартная функция findContours ΠΈΠ· OpenCV. Если связанная ΠΎΠ±Π»Π°ΡΡ‚ΡŒ (ΠΊΠΎΠ½Ρ‚ΡƒΡ€) ΠΈΠΌΠ΅Π΅Ρ‚ высоту Π² пиксСлях ΠΎΡ‚ H1 Π΄ΠΎ H2 Π° ΡˆΠΈΡ€ΠΈΠ½Π° ΠΈ высота связана ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ΠΌ ΠΎΡ‚ K1 Π΄ΠΎ K2, Ρ‚ΠΎ оставляСм Π² ΠΊΠ°Π΄Ρ€Π΅ ΠΈ ΠΎΡ‚ΠΌΠ΅Ρ‡Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π² этой области ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π½Π°ΠΊ. ΠŸΠΎΡ‡Ρ‚ΠΈ навСрняка Π½Π° этом этапС останутся лишь Ρ†ΠΈΡ„Ρ€Ρ‹ ΠΈ Π±ΡƒΠΊΠ²Ρ‹, ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΉ мусор ΠΈΠ· ΠΊΠ°Π΄Ρ€Π° ΡƒΠΉΠ΄Π΅Ρ‚. Π’ΠΎΠ·ΡŒΠΌΠ΅ΠΌ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠ½Ρ‚ΡƒΡ€Ρ‹ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΈ, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ ΠΈΡ… ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΌΠ°ΡΡˆΡ‚Π°Π±Ρƒ ΠΈ дальшС ΠΏΠΎΡ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ с ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π±ΡƒΠΊΠ²ΠΎΠΉ/Ρ†ΠΈΡ„Ρ€ΠΎΠΉ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ.

Π’ΠΎΡ‚ ΠΊΠ°ΠΊΠΈΠ΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΈ ΠΊΠΎΠ½Ρ‚ΡƒΡ€ΠΎΠ² ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΠΈΠ»ΠΈ нашим трСбованиям:
РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ

ΠšΠ°Ρ‡Π΅ΡΡ‚Π²ΠΎ снимка Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π΅, всС Π±ΡƒΠΊΠ²Ρ‹ ΠΈ Ρ†ΠΈΡ„Ρ€Ρ‹ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΠΌΡ‹, ΠΈΠ½Π°Ρ‡Π΅ ΠΌΡ‹ Π΄ΠΎ этого шага Π½Π΅ дошли Π±Ρ‹.
ΠœΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌ всС Π·Π½Π°ΠΊΠΈ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρƒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 20Ρ…30 пиксСлСй. Π’ΠΎΡ‚ ΠΎΠ½ΠΈ:
РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ
ΠšΡΡ‚Π°Ρ‚ΠΈ, OpenCV ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Resize (ΠΏΡ€ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΊ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρƒ 20Ρ…30) Π±ΠΈΠ½Π°Ρ€ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ Π² Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π°Π½ΠΎΠ΅, Π·Π° счСт интСрполяции. ΠŸΡ€ΠΈΠ΄Π΅Ρ‚ΡΡ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ Π±ΠΈΠ½Π°Ρ€ΠΈΠ·Π°Ρ†ΠΈΡŽ.

И Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ самый простой способ ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ с извСстными изобраТСниями Π·Π½Π°ΠΊΠΎΠ² β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ XOR (нормализованная дистанция Π₯эмминга). НапримСр Ρ‚Π°ΠΊ:

Distance = 1.0 β€” |Sample XOR Image|/|Sample|

Если дистанция большС ΠΏΠΎΡ€ΠΎΠ³ΠΎΠ²ΠΎΠΉ, Ρ‚ΠΎ считаСм, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ нашли Π·Π½Π°ΠΊ, мСньшС β€” Π²Ρ‹ΠΊΠΈΠ΄Ρ‹Π²Π°Π΅ΠΌ.

Π”Π°, ΠΌΡ‹ ΠΈΡ‰Π΅ΠΌ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ Π·Π½Π°ΠΊΠΈ Π Π€ ΠΈΠΌΠ΅Π½Π½ΠΎ Π² Ρ‚Π°ΠΊΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅. Π’ΡƒΡ‚ Π½ΡƒΠΆΠ½ΠΎ ΡƒΡ‡Π΅ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ†ΠΈΡ„Ρ€Π° 0 ΠΈ Π±ΡƒΠΊΠ²Π° Β«ΠΎΒ» Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠΌΡ‹ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°, Ρ†ΠΈΡ„Ρ€Π° 8 ΠΈ Π±ΡƒΠΊΠ²Π° Β«Π²Β». Выстроим всС Π·Π½Π°ΠΊΠΈ слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ ΠΈ Π±ΡƒΠ΄Π΅ΠΌ Π±Ρ€Π°Ρ‚ΡŒ ΠΏΠΎ 6 Π·Π½Π°ΠΊΠΎΠ².
ΠšΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΉ Ρ€Π°Π· β€” Π±ΡƒΠΊΠ²Π°-Ρ†ΠΈΡ„Ρ€Π°-Ρ†ΠΈΡ„Ρ€Π°-Ρ†ΠΈΡ„Ρ€Π°-Π±ΡƒΠΊΠ²Π°-Π±ΡƒΠΊΠ²Π° (Π½Π΅ Π·Π°Π±Ρ‹Π²Π°Π΅ΠΌ ΠΏΡ€ΠΎ 0/ΠΎ, 8/Π²)
ΠšΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΉ Π΄Π²Π° β€” ΠΎΡ‚ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ Π½ΠΈΠΆΠ½Π΅ΠΉ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ 6 Π·Π½Π°ΠΊΠΎΠ² ΠΎΡ‚ Π»ΠΈΠ½ΠΈΠΈ

Π‘ΡƒΠΌΠΌΠ°Ρ€Π½Ρ‹Π΅ ΠΎΡ‡ΠΊΠΈ Π·Π° Π³ΠΈΠΏΠΎΡ‚Π΅Π·Ρƒ β€” сумма дистанций Π₯эмминга всСх 6 Π·Π½Π°ΠΊΠΎΠ². Π§Π΅ΠΌ большС, Ρ‚Π΅ΠΌ Π»ΡƒΡ‡ΡˆΠ΅.

Π˜Ρ‚Π°ΠΊ, Ссли суммарныС ΠΎΡ‡ΠΊΠΈ мСньшС ΠΏΠΎΡ€ΠΎΠ³Π°, Ρ‚ΠΎ считаСм, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ нашли 6 Π·Π½Π°ΠΊΠΎΠ² Π½ΠΎΠΌΠ΅Ρ€Π° (Π±Π΅Π· Ρ€Π΅Π³ΠΈΠΎΠ½Π°). Если большС ΠΏΠΎΡ€ΠΎΠ³Π°, Ρ‚ΠΎ ΠΈΠ΄Π΅ΠΌ ΠΊ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡƒ устойчивому ΠΊ грязным Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌ.

Π’ΡƒΡ‚ Π΅Ρ‰Π΅ стоит Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ Π±ΡƒΠΊΠ²Ρ‹ «Н» ΠΈ «М». Для этого Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ классификатор, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎ гистограммС Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚ΠΎΠ².

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π΄Π²Π° ΠΈΠ»ΠΈ Ρ‚Ρ€ΠΈ Π·Π½Π°ΠΊΠ° Π½Π°Π΄ Π»ΠΈΠ½Π΅ΠΉ, ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ ΠΏΠΎ Π½ΠΈΠ·Ρƒ 6 ΡƒΠΆΠ΅ Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Ρ… Π·Π½Π°ΠΊΠΎΠ², β€” Ρ€Π΅Π³ΠΈΠΎΠ½. Если Ρ‚Ρ€Π΅Ρ‚ΡŒΡ Ρ†ΠΈΡ„Ρ€Π° сущСствуСт, ΠΈ Π΅Π΅ ΠΏΠΎΡ…ΠΎΠΆΠ΅ΡΡ‚ΡŒ большС ΠΏΠΎΡ€ΠΎΠ³ΠΎΠ²ΠΎΠΉ, Ρ‚ΠΎ Ρ€Π΅Π³ΠΈΠΎΠ½ состоит ΠΈΠ· Ρ‚Ρ€Π΅Ρ… Ρ†ΠΈΡ„Ρ€. Π˜Π½Π°Ρ‡Π΅ ΠΈΠ· Π΄Π²ΡƒΡ….

Однако, распознаваниС Ρ€Π΅Π³ΠΈΠΎΠ½Π° часто происходит Π½Π΅ Ρ‚Π°ΠΊ Π³Π»Π°Π΄ΠΊΠΎ, ΠΊΠ°ΠΊ Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ Π±Ρ‹. Π¦ΠΈΡ„Ρ€Ρ‹ Π² Ρ€Π΅Π³ΠΈΠΎΠ½Ρ‹ мСньшС, ΠΌΠΎΠ³ΡƒΡ‚ ΡƒΠ΄Π°Ρ‡Π½ΠΎ Π½Π΅ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒΡΡ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Ρ€Π΅Π³ΠΈΠΎΠ½ Π»ΡƒΡ‡ΡˆΠ΅ ΡƒΠ·Π½Π°Π²Π°Ρ‚ΡŒ способом Π±ΠΎΠ»Π΅Π΅ устойчивым ΠΊ грязи/ΡˆΡƒΠΌΠ°/ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Ρ‚ΠΈΡŽ, описанным Π΄Π°Π»Π΅Π΅.

КакиС-Ρ‚ΠΎ Π΄Π΅Ρ‚Π°Π»ΠΈ описания Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π½Π΅ слишком ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ раскрыты. ΠžΡ‚Ρ‡Π°ΡΡ‚ΠΈ ΠΈΠ·-Π·Π° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ сСйчас сдСлан лишь ΠΌΠ°ΠΊΠ΅Ρ‚ этого Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΈ прСдстоит Π΅Ρ‰Π΅ ΠΏΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π½Π° Ρ‚Π΅Ρ… тысячах ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ. Если Π½ΠΎΠΌΠ΅Ρ€ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΈ чистый, Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π·Π° дСсятки миллисСкунд Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Ρ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€ ΠΈΠ»ΠΈ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ Β«Π½Π΅ ΡƒΠ΄Π°Π»ΠΎΡΡŒΒ» ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎΠΌΡƒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡƒ.

Алгоритм устойчивый ΠΊ грязным Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌ

ΠŸΠΎΠ½ΡΡ‚Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ, описанный Π²Ρ‹ΡˆΠ΅ совсСм Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, Ссли Π·Π½Π°ΠΊΠΈ Π½Π° Π½ΠΎΠΌΠ΅Ρ€Π΅ ΡΠ»ΠΈΠΏΠ°ΡŽΡ‚ΡΡ ΠΈΠ·-Π·Π° ΠΏΠ»ΠΎΡ…ΠΎΠ³ΠΎ качСства изобраТСния (грязи, ΠΏΠ»ΠΎΡ…ΠΎΠ³ΠΎ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, Π½Π΅ΡƒΠ΄Π°Ρ‡Π½ΠΎΠΉ Ρ‚Π΅Π½ΠΈ ΠΈΠ»ΠΈ ΡƒΠ³Π»Π° съСмки).

Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ², ΠΊΠΎΠ³Π΄Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π½Π΅ смог Π½ΠΈΡ‡Π΅Π³ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ:
РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ

А Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ, описанный Π΄Π°Π»Π΅Π΅, смог.

Но придСтся ΠΎΠΏΠΈΡ€Π°Ρ‚ΡŒΡΡ Π½Π° Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ Π½ΠΎΠΌΠ΅Ρ€Π°, Π° ΠΏΠΎΡ‚ΠΎΠΌ ΡƒΠΆΠ΅ Π²Π½ΡƒΡ‚Ρ€ΠΈ строго ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ области ΠΈΡΠΊΠ°Ρ‚ΡŒ Π·Π½Π°ΠΊΠΈ с Ρ‚ΠΎΡ‡Π½ΠΎ извСстной ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ ΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΎΠΌ. И Π³Π»Π°Π²Π½ΠΎΠ΅ β€” Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ Π±ΠΈΠ½Π°Ρ€ΠΈΠ·Π°Ρ†ΠΈΠΈ!

Π˜Ρ‰Π΅ΠΌ ниТнюю Π³Ρ€Π°Π½ΠΈΡ†Ρƒ Π½ΠΎΠΌΠ΅Ρ€Π°

Π‘Π°ΠΌΡ‹ΠΉ простой ΠΈ самый Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΉ этап Π² этом Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ΅. ΠŸΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Π΅ΠΌ нСсколько Π³ΠΈΠΏΠΎΡ‚Π΅Π· ΠΏΠΎ ΡƒΠ³Π»Ρƒ ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Π° ΠΈ строим для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π³ΠΈΠΏΠΎΡ‚Π΅Π·Ρ‹ ΠΏΠΎ ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Ρƒ гистограмму яркости пиксСлСй вдоль Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… Π»ΠΈΠ½ΠΈΠΉ для Π½ΠΈΠΆΠ½Π΅ΠΉ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρ‹ изобраТСния:
РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ

Π’Ρ‹Π±Π΅Ρ€Π΅ΠΌ максимум Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π° ΠΈ Ρ‚Π°ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ ΡƒΠ³ΠΎΠ» Π½Π°ΠΊΠ»ΠΎΠ½Π° ΠΈ ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΌΡƒ ΡƒΡ€ΠΎΠ²Π½ΡŽ ΠΎΡ‚Ρ€Π΅Π·Π°Ρ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€ снизу. НС Π·Π°Π±ΡƒΠ΄Π΅ΠΌ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ контраст ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Π²ΠΎΡ‚ Ρ‚Π°ΠΊΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅:
РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ

Π’ΠΎΠΎΠ±Ρ‰Π΅ стоит ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ гистограмму яркости, Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈ гистограмму диспСрсии, гистограмму Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚ΠΎΠ², Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΠ±Ρ€Π΅Π·ΠΊΠΈ Π½ΠΎΠΌΠ΅Ρ€Π°.

Π˜Ρ‰Π΅ΠΌ Π²Π΅Ρ€Ρ…Π½ΡŽΡŽ Π³Ρ€Π°Π½ΠΈΡ†Ρƒ Π½ΠΎΠΌΠ΅Ρ€Π°

Π’ΡƒΡ‚ ΡƒΠΆΠ΅ Π½Π΅ Ρ‚Π°ΠΊ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, оказалось, Ссли ΡΠ½ΠΈΠΌΠ°ΡŽΡ‚ с Ρ€ΡƒΠΊ Π·Π°Π΄Π½ΠΈΠΉ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€, Ρ‚ΠΎ вСрхняя Π³Ρ€Π°Π½ΠΈΡ†Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ сильно ΠΈΠ·ΠΎΠ³Π½ΡƒΡ‚Π° ΠΈ частично ΠΏΡ€ΠΈΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ Π·Π½Π°ΠΊΠΈ ΠΈΠ»ΠΈ Π² Ρ‚Π΅Π½ΠΈ, ΠΊΠ°ΠΊ Π² Π΄Π°Π½Π½ΠΎΠΌ случаС:
РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ
Π Π΅Π·ΠΊΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° яркости Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ части Π½ΠΎΠΌΠ΅Ρ€Π° Π½Π΅Ρ‚, Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚ ΠΈ вовсС Ρ€Π°Π·Ρ€Π΅ΠΆΠ΅Ρ‚ Π½ΠΎΠΌΠ΅Ρ€ посСрСдинС.

ΠœΡ‹ Π²Ρ‹ΡˆΠ»ΠΈ ΠΈΠ· ситуации Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½ΠΎ: ΠΎΠ±ΡƒΡ‡ΠΈΠ»ΠΈ Π½Π° ΠΊΠ°ΠΆΠ΄ΡƒΡŽ Ρ†ΠΈΡ„Ρ€Ρƒ ΠΈ ΠΊΠ°ΠΆΠ΄ΡƒΡŽ Π±ΡƒΠΊΠ²Ρƒ каскадный Π΄Π΅Ρ‚Π΅ΠΊΡ‚ΠΎΡ€ Π₯Π°Π°Ρ€Π°, нашли всС Π·Π½Π°ΠΊΠΈ Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ, Ρ‚Π°ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ»ΠΈ Π²Π΅Ρ€Ρ…Π½ΡŽΡŽ линию Π³Π΄Π΅ Ρ€Π΅Π·Π°Ρ‚ΡŒ:

РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ

Казалось Π±Ρ‹, Ρ‡Ρ‚ΠΎ Ρ‚ΡƒΡ‚ ΠΈ стоит ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ β€” ΠΌΡ‹ ΠΆΠ΅ нашли ΡƒΠΆΠ΅ Ρ†ΠΈΡ„Ρ€Ρ‹ ΠΈ Π±ΡƒΠΊΠ²Ρ‹! Но Π½Π° Π΄Π΅Π»Π΅, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π΄Π΅Ρ‚Π΅ΠΊΡ‚ΠΎΡ€ Π₯Π°Π°Ρ€Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡˆΠΈΠ±Π°Ρ‚ΡŒΡΡ, Π° Ρƒ нас Ρ‚ΡƒΡ‚ 7-8 Π·Π½Π°ΠΊΠΎΠ². Π₯ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ†ΠΈΡ„Ρ€Ρ‹ 4. Если вСрхняя Π³Ρ€Π°Π½ΠΈΡ†Π° Π½ΠΎΠΌΠ΅Ρ€Π° сливаСтся с Ρ†ΠΈΡ„Ρ€ΠΎΠΉ 4, Ρ‚ΠΎ совсСм Π½Π΅ слоТно ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ†ΠΈΡ„Ρ€Ρƒ 7. Π§Ρ‚ΠΎ кстати ΠΈ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅. Но с Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, нСсмотря Π½Π° ΠΎΡˆΠΈΠ±ΠΊΡƒ Π² Π΄Π΅Ρ‚Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, вСрхняя Π³Ρ€Π°Π½ΠΈΡ†Π° Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Ρ… ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΎΠ² Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ совпадаСт с Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ Π³Ρ€Π°Π½ΠΈΡ†Π΅ΠΉ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ Π½ΠΎΠΌΠ΅Ρ€Π°.

Найти Π±ΠΎΠΊΠΎΠ²Ρ‹Π΅ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ Π½ΠΎΠΌΠ΅Ρ€Π°

Π’ΠΎΠΆΠ΅ Π½ΠΈΡ‡Π΅Π³ΠΎ Ρ…ΠΈΡ‚Ρ€ΠΎΠ³ΠΎ β€” Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ ниТнюю. ЕдинствСнноС ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅, Ρ‡Ρ‚ΠΎ часто ΡΡ€ΠΊΠΎΡΡ‚ΡŒ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π° ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ послСднСго Π·Π½Π°ΠΊΠ° Π² Π½ΠΎΠΌΠ΅Ρ€Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Ρ‚ΡŒ ΡΡ€ΠΊΠΎΡΡ‚ΡŒ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π° Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ Π½ΠΎΠΌΠ΅Ρ€Π°, поэтому выбираСтся Π½Π΅ максимум, Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚, ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°ΡŽΡ‰ΠΈΠΉ ΠΏΠΎΡ€ΠΎΠ³. Аналогично с Π½ΠΈΠΆΠ½Π΅ΠΉ Π³Ρ€Π°Π½ΠΈΡ†Π΅ΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅Π±Ρ€Π°Ρ‚ΡŒ нСсколько Π³ΠΈΠΏΠΎΡ‚Π΅Π· ΠΏΠΎ Π½Π°ΠΊΠ»ΠΎΠ½Ρƒ, Ρ‚. ΠΊ. ΠΈΠ·-Π·Π° пСрспСктивы ΠΏΠ΅Ρ€ΠΏΠ΅Π½Π΄ΠΈΠΊΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ совсСм Π½Π΅ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π°.

Π˜Ρ‚Π°ΠΊ, Π²ΠΎΡ‚ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΎΠ±Ρ€Π΅Π·Π°Π½Π½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€:

РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ
Π΄Π°! особСнно приятно Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ°Π΄Ρ€ с ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ распознан.

ΠŸΠ΅Ρ‡Π°Π»ΠΈΡ‚ лишь ΠΎΠ΄Π½ΠΎ β€” ΠΊ этому этапу ΠΎΡ‚ 5% Π΄ΠΎ 15% Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚Ρ€Π΅Π·Π°Ρ‚ΡŒΡΡ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ. НапримСр, Ρ‚Π°ΠΊ:
РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ
(кстати это ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Π½Π°ΠΌ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΠ» ΠΆΠ΅Π»Ρ‚Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€ такси, насколько я понял β€” Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π½Π΅ ΡˆΡ‚Π°Ρ‚Π½Ρ‹ΠΉ)

ВсС это Π½ΡƒΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ всС это дСлалось лишь для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ вычислСний, Ρ‚. ΠΊ. ΠΏΠ΅Ρ€Π΅Π±Ρ€Π°Ρ‚ΡŒ всС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΌΠ°ΡΡˆΡ‚Π°Π±Ρ‹ ΠΈ Π½Π°ΠΊΠ»ΠΎΠ½Ρ‹ Π·Π½Π°ΠΊΠΎΠ² ΠΏΡ€ΠΈ ΠΈΡ… поискС β€” ΠΎΡ‡Π΅Π½ΡŒ Π·Π°Ρ‚Ρ€Π°Ρ‚Π½ΠΎ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ.

Π Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ строку Π½Π° Π·Π½Π°ΠΊΠΈ

К соТалСнию, ΠΈΠ·-Π·Π° пСрспСктивы ΠΈ Π½Π΅ стандартной ΡˆΠΈΡ€ΠΈΠ½Ρ‹ всСх Π·Π½Π°ΠΊΠΎΠΌ, приходится ΠΊΠ°ΠΊ-Ρ‚ΠΎ Π²Ρ‹Π΄Π΅Π»ΡΡ‚ΡŒ символы Π² ΡƒΠΆΠ΅ ΠΎΠ±Ρ€Π΅Π·Π°Π½Π½ΠΎΠΌ Π½ΠΎΠΌΠ΅Ρ€Π΅. Π’ΡƒΡ‚ снова Π²Ρ‹Ρ€ΡƒΡ‡ΠΈΡ‚ гистограмма ΠΏΠΎ яркости, Π½ΠΎ ΡƒΠΆΠ΅ вдоль оси X:
РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ

ЕдинствСнноС, Ρ‡Ρ‚ΠΎ Π² дальнСйшСм стоит ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π²Π΅ Π³ΠΈΠΏΠΎΡ‚Π΅Π·Ρ‹: символы Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ сразу ΠΈΠ»ΠΈ ΠΎΠ΄ΠΈΠ½ максимум гистограммы стоит ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ. Π­Ρ‚ΠΎ связано с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½ΠΎΠΌΠ΅Ρ€Π°Ρ… отвСрстиС ΠΏΠΎΠ΄ Π²ΠΈΠ½Ρ‚ ΠΈΠ»ΠΈ Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Π²ΠΈΠ½Ρ‚Π° Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ Π½ΠΎΠΌΠ΅Ρ€Π° ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ, ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π·Π½Π°ΠΊ, Π° ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈ вовсС Π½Π΅Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹.

Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎ сих ΠΏΠΎΡ€ Π½Π΅ Π±ΠΈΠ½Π°Ρ€ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ, Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ всю ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ.

Π—Π΄Π΅ΡΡŒ ΠΏΠ΅Ρ‡Π°Ρ‚Π½Ρ‹Π΅ символы, Π·Π½Π°Ρ‡ΠΈΡ‚ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚ взвСшСнная ковариация для сравнСния ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ с ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ:
РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ

ΠžΠ±Ρ€Π°Π·Ρ†Ρ‹ для сравнСния ΠΈ вСса ΠΏΡ€ΠΈ ΠΊΠΎΠ²Π°Ρ€ΠΈΠ°Ρ†ΠΈΠΈ:
РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ

ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, нСльзя просто ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ, Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ гистограммы, с ΠΎΠ±Ρ€Π°Π·Ρ†Π°ΠΌΠΈ. ΠŸΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ΡΡ Π΄Π΅Π»Π°Ρ‚ΡŒ нСсколько Π³ΠΈΠΏΠΎΡ‚Π΅Π· ΠΏΠΎ ΡΠΌΠ΅Ρ‰Π΅Π½ΠΈΡŽ ΠΈ ΠΏΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±Ρƒ.
ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Π³ΠΈΠΏΠΎΡ‚Π΅Π· ΠΏΠΎ полоТСнию ΠΏΠΎ оси X = 4
ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Π³ΠΈΠΏΠΎΡ‚Π΅Π· ΠΏΠΎ полоТСнию ΠΏΠΎ оси Y = 4
ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Π³ΠΈΠΏΠΎΡ‚Π΅Π· ΠΏΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±Ρƒ = 3

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ области ΠΏΡ€ΠΈ сравнСнии с ΠΎΠ΄Π½ΠΈΠΌ Π·Π½Π°ΠΊΠΎΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π°ΡΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ 4Ρ…4Ρ…3 ΠΊΠΎΠ²Π°Ρ€ΠΈΠ°Ρ†ΠΈΠΈ.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ Π΄Π΅Π»ΠΎΠΌ Π½Π°ΠΉΠ΄Π΅ΠΌ 3 большиС Ρ†ΠΈΡ„Ρ€Ρ‹. Π­Ρ‚ΠΎ 3 Ρ… 10 Ρ… 4 Ρ… 4 Ρ… 3 = 1440 сравнСний.

Π—Π°Ρ‚Π΅ΠΌ слСва ΠΎΠ΄Π½Ρƒ Π±ΡƒΠΊΠ²Ρƒ ΠΈ справа Π΅Ρ‰Π΅ Π΄Π²Π΅. Π‘ΡƒΠΊΠ² для сравнСния 12. Π’ΠΎΠ³Π΄Π° количСство сравнСний 3x12x4x4x3 = 1728

Когда Ρƒ нас Π΅ΡΡ‚ΡŒ 6 символов, Ρ‚ΠΎ всС справа ΠΎΡ‚ Π½ΠΈΡ… β€” Ρ€Π΅Π³ΠΈΠΎΠ½.

РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ

Π’ Ρ€Π΅Π³ΠΈΠΎΠ½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ 2 Ρ†ΠΈΡ„Ρ€Ρ‹ ΠΈΠ»ΠΈ 3 Ρ†ΠΈΡ„Ρ€Ρ‹ β€” это Π½ΡƒΠΆΠ½ΠΎ ΡƒΡ‡Π΅ΡΡ‚ΡŒ. Π Π°Π·Π±ΠΈΠ²Π°Ρ‚ΡŒ Ρ€Π΅Π³ΠΈΠΎΠ½ гистограммным способом ΡƒΠΆΠ΅ бСссмыслСнно ΠΈΠ·-Π·Π° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ качСство изобраТСния ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ слишком Π½ΠΈΠ·ΠΊΠΎΠ΅. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ просто ΠΏΠΎΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎ Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ Ρ†ΠΈΡ„Ρ€Ρ‹ слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ. НачинаСм с Π»Π΅Π²ΠΎΠ³ΠΎ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ ΡƒΠ³Π»Π°, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ нСсколько Π³ΠΈΠΏΠΎΡ‚Π΅Π· ΠΏΠΎ оси X, оси Y ΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±Ρƒ. Находим Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠ΅Π΅ совпадСниС. БмСщаСмся Π½Π° Π·Π°Π΄Π°Π½Π½ΡƒΡŽ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρƒ Π²ΠΏΡ€Π°Π²ΠΎ, снова ΠΈΡ‰Π΅ΠΌ. Π’Ρ€Π΅Ρ‚ΠΈΠΉ символ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΊΠ°Ρ‚ΡŒ слСва ΠΎΡ‚ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΈ справа ΠΎΡ‚ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ, Ссли ΠΌΠ΅Ρ€Π° похоТСсти Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅Π³ΠΎ символа большС ΠΏΠΎΡ€ΠΎΠ³ΠΎΠ²ΠΎΠΉ, Ρ‚ΠΎ Π½Π°ΠΌ ΠΏΠΎΠ²Π΅Π·Π»ΠΎ β€” Π½ΠΎΠΌΠ΅Ρ€ Ρ€Π΅Π³ΠΈΠΎΠ½Π° состоит ΠΈΠ· Ρ‚Ρ€Π΅Ρ… Ρ†ΠΈΡ„Ρ€.

Π’Ρ‹Π²ΠΎΠ΄Ρ‹

ΠŸΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° примСнСния Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° (Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ описанного Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅) Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ Ρ€Π°Π· ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΠ»Π° ΠΏΡ€ΠΎΠΏΠΈΡΠ½ΡƒΡŽ истину ΠΏΡ€ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ Π·Π°Π΄Π°Ρ‡ распознавания: Π½ΡƒΠΆΠ½Π° Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ прСзСнтативная Π±Π°Π·Π° ΠΏΡ€ΠΈ создании Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ². ΠœΡ‹ Π½Π°Ρ†Π΅Π»ΠΈΠ²Π°Π»ΠΈΡΡŒ Π½Π° грязныС ΠΈ ΠΏΠΎΡ‚Π΅Ρ€Ρ‚Ρ‹Π΅ Π½ΠΎΠΌΠ΅Ρ€Π°, Ρ‚.ΠΊ. тСстовая Π±Π°Π·Π° снималась Π·ΠΈΠΌΠΎΠΉ. И Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ часто довольно ΠΏΠ»ΠΎΡ…ΠΈΠ΅ Π½ΠΎΠΌΠ΅Ρ€Π° ΡƒΠ΄Π°Π²Π°Π»ΠΎΡΡŒ ΡƒΠ·Π½Π°Π²Π°Ρ‚ΡŒ, Π½ΠΎ чистых Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π² ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰Π΅ΠΉ Π²Ρ‹Π±ΠΎΡ€ΠΊΠ΅ ΠΏΠΎΡ‡Ρ‚ΠΈ Π½Π΅ Π±Ρ‹Π»ΠΎ.

Π’ΡΠΊΡ€Ρ‹Π»Π°ΡΡŒ ΠΈ другая сторона ΠΌΠ΅Π΄Π°Π»ΠΈ: ΠΌΠ°Π»ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊ Ρ€Π°Π·Π΄Ρ€Π°ΠΆΠ°Π΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΊΠ°ΠΊ ситуация, ΠΊΠΎΠ³Π΄Π° автоматичСская систСма Π½Π΅ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ совсСм ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ. «Ну Ρ‡Ρ‚ΠΎ Ρ‚ΡƒΡ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒΡΡ?!Β» А Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ автоматичСская систСма Π½Π΅ смогла ΡƒΠ·Π½Π°Ρ‚ΡŒ грязный ΠΈΠ»ΠΈ ΠΏΠΎΡ‚Π΅Ρ€Ρ‚Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€Π°, β€” это ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎ.

ΠžΡ‚ΠΊΡ€ΠΎΠ²Π΅Π½Π½ΠΎ говоря, это наш ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ систСмы распознавания для массового потрСбитСля. И ΠΎ Ρ‚Π°ΠΊΠΈΡ… Β«ΠΌΠ΅Π»ΠΎΡ‡Π°Ρ…Β», ΠΊΠ°ΠΊ ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΡ…, стоит ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Π΄ΡƒΠΌΠ°Ρ‚ΡŒ. БСйчас ΠΊ Π½Π°ΠΌ присоСдинился спСциалист, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π²ΡˆΠΈΠΉ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΡƒΡŽ Β«RecognitorΒ» ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΏΠΎΠ΄ iOs. Π’ UI Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ появилась Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ сСйчас отправляСтся Π½Π° сСрвСр, Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π₯Π°Π°Ρ€ΠΎΠΌ Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π½ΡƒΠΆΠ½Ρ‹ΠΉ, Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Π² ΡƒΠΆΠ΅ Β«Π·Π°ΡΡ‚Ρ‹Π²ΡˆΠ΅ΠΌΒ» ΠΊΠ°Π΄Ρ€Π΅. И ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ этим ΡƒΠΆΠ΅ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅. АвтоматичСскоС распознаваниС становится Π½Π΅ Π΄ΡƒΡ€Π°Ρ†ΠΊΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ, Π±Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ нСльзя Π½ΠΈΡ‡Π΅Π³ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, Π° просто ΠΏΠΎΠΌΠΎΡ‰Π½ΠΈΠΊΠΎΠΌ.

ΠŸΡ€ΠΎΠ΄ΡƒΠΌΡ‹Π²Π°Ρ‚ΡŒ систСму, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ автоматичСскоС распознаваниС изобраТСния Π±ΡƒΠ΄Π΅Ρ‚ Π³Π°Ρ€ΠΌΠΎΠ½ΠΈΡ‡Π½ΠΎ ΠΈ ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ, β€” оказалось Π·Π°Π΄Π°Ρ‡Π΅ΠΉ Π½ΠΈΡ‡ΡƒΡ‚ΡŒ Π½Π΅ ΠΏΡ€ΠΎΡ‰Π΅, Ρ‡Π΅ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ эти Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ распознавания.

И, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, надСюсь, Ρ‡Ρ‚ΠΎ ΡΡ‚Π°Ρ‚ΡŒΡ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»Π΅Π·Π½Π°.

ΠŸΠ΅Ρ€Π²Π°Ρ ΡΡ‚Π°Ρ‚ΡŒΡ Ρ†ΠΈΠΊΠ»Π° β€” ΠΎΠ±Ρ‰ΠΈΠΉ ΠΎΠ±Π·ΠΎΡ€ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ
Вторая ΡΡ‚Π°Ρ‚ΡŒΡ β€” Наш сСрвСр
Π’Ρ€Π΅Ρ‚ΡŒΡ ΡΡ‚Π°Ρ‚ΡŒΡ β€” ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» обращСния ΠΊ Π½Π°ΡˆΠ΅ΠΌΡƒ сСрвСру

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

РаспознаСм Π½ΠΎΠΌΠ΅Ρ€Π° Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° multihead-ΠΌΠΎΠ΄Π΅Π»ΠΈ Π² Catalyst

Ѐиксация Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ доступа, розыск ΠΈ отслСТиваниС Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ – лишь Ρ‡Π°ΡΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… трСбуСтся ΠΏΠΎ Ρ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€ автомобиля (государствСнный рСгистрационный Π·Π½Π°ΠΊ ΠΈΠ»ΠΈ Π“Π Π—).

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрим созданиС ΠΌΠΎΠ΄Π΅Π»ΠΈ для распознавания с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Catalyst – ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· самых популярных высокоуровнСвых Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ² для Pytorch. Он позволяСт ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ большого количСства ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰Π΅Π³ΠΎΡΡ ΠΈΠ· ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΊΠΎΠ΄Π° – Ρ†ΠΈΠΊΠ»Π° обучСния, расчёта ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊ, создания Ρ‡Π΅ΠΊ-ΠΏΠΎΠΈΠ½Ρ‚ΠΎΠ² ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ – ΠΈ ΡΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΠΈΡ‚ΡŒΡΡ нСпосрСдствСнно Π½Π° экспСримСнтС.

РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ

Π‘Π΄Π΅Π»Π°Ρ‚ΡŒ модСль для распознавания ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ², Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡƒΡ‚Π΅ΠΌ поиска ΠΈ опрСдСлСния ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… символов, ΠΈΠ»ΠΈ Π² Π²ΠΈΠ΄Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ image-to-text. ΠœΡ‹ рассмотрим модСль с нСсколькими Π²Ρ‹Ρ…ΠΎΠ΄Π°ΠΌΠΈ (multihead-модСль). Π’ качСствС датасСта Π²ΠΎΠ·ΡŒΠΌΡ‘ΠΌ датасСт с российскими Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Nomeroff Net. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΈΠ· датасСта прСдставлСны Π½Π° рис. 1.

РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ

Рис. 1. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΈΠ· датасСта

ΠžΠ±Ρ‰ΠΈΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡŽ Π·Π°Π΄Π°Ρ‡ΠΈ

НСобходимо Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ модСль, которая Π½Π° Π²Ρ…ΠΎΠ΄Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π“Π Π—, Π° Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄Π΅ ΠΎΡ‚Π΄Π°Π²Π°Ρ‚ΡŒ строку распознанных символов. МодСль Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ ΠΈΠ· экстрактора Ρ„ΠΈΡ‡Π΅ΠΉ ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… классификационных β€œΠ³ΠΎΠ»ΠΎΠ²β€. Π’ датасСтС прСдставлСны Π“Π Π— ΠΈΠ· 8 ΠΈ 9 символов, поэтому Π³ΠΎΠ»ΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π΅Π²ΡΡ‚ΡŒ. КаТдая Π³ΠΎΠ»ΠΎΠ²Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄ΡΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ символ ΠΈΠ· Π°Π»Ρ„Π°Π²ΠΈΡ‚Π° β€œ1234567890ABEKMHOPCTYX”, плюс ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ символ β€œ-” (дСфис) для обозначСния отсутствия дСвятого символа Π² Π²ΠΎΡΡŒΠΌΠΈΠ·Π½Π°Ρ‡Π½Ρ‹Ρ… Π“Π Π—. АрхитСктура схСматично прСдставлСна Π½Π° рис. 2.

РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ

Рис. 2. АрхитСктура ΠΌΠΎΠ΄Π΅Π»ΠΈ

Π’ качСствС loss-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²ΠΎΠ·ΡŒΠΌΡ‘ΠΌ ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ кросс-ΡΠ½Ρ‚Ρ€ΠΎΠΏΠΈΡŽ. Π‘ΡƒΠ΄Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π΅Ρ‘ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π³ΠΎΠ»ΠΎΠ²Π΅ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π° Π·Π°Ρ‚Π΅ΠΌ просуммируСм ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ значСния для получСния ΠΎΠ±Ρ‰Π΅Π³ΠΎ лосса ΠΌΠΎΠ΄Π΅Π»ΠΈ. ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ‚ΠΎΡ€ – Adam. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ OneCycleLRWithWarmup ΠΊΠ°ΠΊ ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊ leraning rate. Π Π°Π·ΠΌΠ΅Ρ€ Π±Π°Ρ‚Ρ‡Π° – 128. Π”Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ обучСния установим Π² 10 эпох.

Π’ качСствС ΠΏΡ€Π΅Π΄ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π±ΡƒΠ΄Π΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π½ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊ Π΅Π΄ΠΈΠ½ΠΎΠΌΡƒ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρƒ.

ΠšΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π”Π°Π»Π΅Π΅ рассмотрим основныС ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹ ΠΊΠΎΠ΄Π°. Класс датасСта (листинг 1) Π² ΠΎΠ±Ρ‰Π΅ΠΌ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ для CV-Π·Π°Π΄Π°Ρ‡ Π½Π° Pytorch. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ стоит лишь Π½Π° Ρ‚ΠΎ, ΠΊΠ°ΠΊ ΠΌΡ‹ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌ список ΠΊΠΎΠ΄ΠΎΠ² символов Π² качСствС Ρ‚Π°Ρ€Π³Π΅Ρ‚Π°. Π’ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅ label_encoder пСрСдаётся слуТСбный класс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠΌΠ΅Π΅Ρ‚ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ символы Π°Π»Ρ„Π°Π²ΠΈΡ‚Π° Π² ΠΈΡ… ΠΊΠΎΠ΄Ρ‹ ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ.

Листинг 1. Класс датасСта

Π’ классС ΠΌΠΎΠ΄Π΅Π»ΠΈ (листинг 2) ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ PyTorch Image Models для создания экстрактора Ρ„ΠΈΡ‡Π΅ΠΉ. ΠšΠ°ΠΆΠ΄ΡƒΡŽ ΠΈΠ· классификационных Π³ΠΎΠ»ΠΎΠ² ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΌΡ‹ добавляСм Π² ModuleList, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π±Ρ‹Π»ΠΈ доступны ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ‚ΠΎΡ€Ρƒ. Π›ΠΎΠ³ΠΈΡ‚Ρ‹ с Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· Π³ΠΎΠ»ΠΎΠ² Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ΡΡ списком.

Листинг 2. Класс ΠΌΠΎΠ΄Π΅Π»ΠΈ

Π¦Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΌ Π·Π²Π΅Π½ΠΎΠΌ, ΡΠ²ΡΠ·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌ всС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΌ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ, являСтся Runner. Он прСдставляСт Π°Π±ΡΡ‚Ρ€Π°ΠΊΡ†ΠΈΡŽ Π½Π°Π΄ Ρ†ΠΈΠΊΠ»ΠΎΠΌ обучСния-Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ. Π’ случаС обучСния multihead-ΠΌΠΎΠ΄Π΅Π»ΠΈ нас Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΠΎΠ²Π°Ρ‚ΡŒ рСализация ΠΌΠ΅Ρ‚ΠΎΠ΄Π° handle_batch ΠΈ Π½Π°Π±ΠΎΡ€ колбэков.

ΠœΠ΅Ρ‚ΠΎΠ΄ handle_batch, ΠΊΠ°ΠΊ слСдуСт ΠΈΠ· названия, ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π±Π°Ρ‚Ρ‡Π° Π΄Π°Π½Π½Ρ‹Ρ…. ΠœΡ‹ Π² Π½Ρ‘ΠΌ Π±ΡƒΠ΄Π΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ модСль с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π±Π°Ρ‚Ρ‡Π°, Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² – расчёт лосса, ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊ ΠΈ Ρ‚.Π΄. – ΠΌΡ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ колбэков. Код ΠΌΠ΅Ρ‚ΠΎΠ΄Π° прСдставлСн Π² листингС 3.

Листинг 3. РСализация runner’а

Колбэки ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅:

CriterionCallback – для расчёта лосса. Нам потрСбуСтся ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ экзСмпляру для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· Π³ΠΎΠ»ΠΎΠ² ΠΌΠΎΠ΄Π΅Π»ΠΈ.

MetricAggregationCallback – для Π°Π³Ρ€Π΅Π³Π°Ρ†ΠΈΠΈ лоссов ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Π³ΠΎΠ»ΠΎΠ² Π² Π΅Π΄ΠΈΠ½Ρ‹ΠΉ лосс ΠΌΠΎΠ΄Π΅Π»ΠΈ.

OptimizerCallback – Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ‚ΠΎΡ€ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ вСса ΠΌΠΎΠ΄Π΅Π»ΠΈ.

SchedulerCallback – для запуска LR Scheduler’а.

AccuracyCallback – Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ прСдставлСниС ΠΎ точности классификации ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· Π³ΠΎΠ»ΠΎΠ² Π² Ρ…ΠΎΠ΄Π΅ обучСния ΠΌΠΎΠ΄Π΅Π»ΠΈ.

CheckpointCallback – Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ Π»ΡƒΡ‡ΡˆΠΈΠ΅ вСса ΠΌΠΎΠ΄Π΅Π»ΠΈ.

Код, Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ список колбэков, прСдставлСн Π² листингС 4.

Листинг 4. Код получСния колбэков

ΠžΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ части ΠΊΠΎΠ΄Π° ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ для Pytorch ΠΈ Catalyst, поэтому ΠΌΡ‹ Π½Π΅ станСм ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈΡ… здСсь. ΠŸΠΎΠ»Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΊ ΡΡ‚Π°Ρ‚ΡŒΠ΅ доступСн Π½Π° GitHub.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ экспСримСнта

РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π€ΠΎΡ‚ΠΎ РаспознаваниС Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ

Рис. 3. Π“Ρ€Π°Ρ„ΠΈΠΊ лосс-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π² процСссС обучСния. ΠžΡ€Π°Π½ΠΆΠ΅Π²Π°Ρ линия – train loss, синяя – valid loss

Π’ спискС Π½ΠΈΠΆΠ΅ пСрСчислСны Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ошибки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ модСль допустила Π½Π° тСст-сСтС:

Incorrect prediction: T970XT23- instead of T970XO123

Incorrect prediction: X399KT161 instead of X359KT163

Incorrect prediction: E166EP133 instead of E166EP123

Incorrect prediction: X225YY96- instead of X222BY96-

Incorrect prediction: X125KX11- instead of X125KX14-

Incorrect prediction: X365PC17- instead of X365PC178

Π—Π΄Π΅ΡΡŒ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ всС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹: Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ распознанныС Π±ΡƒΠΊΠ²Ρ‹ ΠΈ Ρ†ΠΈΡ„Ρ€Ρ‹ основной части Π“Π Π—, Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ распознанныС Ρ†ΠΈΡ„Ρ€Ρ‹ ΠΊΠΎΠ΄Π° Ρ€Π΅Π³ΠΈΠΎΠ½Π°, лишняя Ρ†ΠΈΡ„Ρ€Π° Π² ΠΊΠΎΠ΄Π΅ Ρ€Π΅Π³ΠΈΠΎΠ½Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅Π²Π΅Ρ€Π½ΠΎ прСдсказанноС отсутствиС послСднСй Ρ†ΠΈΡ„Ρ€Ρ‹.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрСли способ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ multihead-ΠΌΠΎΠ΄Π΅Π»ΠΈ для распознавания Π“Π Π— Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Catalyst. ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ явились собствСнно модСль, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°Π½Π½Π΅Ρ€ ΠΈ Π½Π°Π±ΠΎΡ€ колбэков для Π½Π΅Π³ΠΎ. МодСль ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΎΠ±ΡƒΡ‡ΠΈΠ»Π°ΡΡŒ ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Π»Π° Π²Ρ‹ΡΠΎΠΊΡƒΡŽ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ Π½Π° тСстовой Π²Ρ‹Π±ΠΎΡ€ΠΊΠ΅.

Бпасибо Π·Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅! НадССмся, Ρ‡Ρ‚ΠΎ наш ΠΎΠΏΡ‹Ρ‚ Π±Ρ‹Π» Π²Π°ΠΌ ΠΏΠΎΠ»Π΅Π·Π΅Π½.

Π‘ΠΎΠ»ΡŒΡˆΠ΅ Π½Π°ΡˆΠΈΡ… статСй ΠΏΠΎ ΠΌΠ°ΡˆΠΈΠ½Π½ΠΎΠΌΡƒ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΡŽ ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *