ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ связанного мноТСства пиксСлСй Π½Π° Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ

Π‘Ρ‚Π°Ρ‚ΡŒΡΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

ΠžΠ±Π·ΠΎΡ€. Π—Π°Π΄Π°Ρ‡Π° опрСдСлСния связанного мноТСства довольно Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Π° Π² Π²ΠΎΠΏΡ€ΠΎΡΠ°Ρ… Π°Π½Π°Π»ΠΈΠ·Π° Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠ³ΠΎ изобраТСния. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ большоС количСство Π·Π°Π΄Π°Ρ‡. Одной ΠΈΠ· ΠΎΡΠ½ΠΎΠ²Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ являСтся ΠΈΠ·Π±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΡ‚ ΡˆΡƒΠΌΠΎΠ² ΠΈ ΠΏΠΎΠΌΠ΅Ρ… Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ двиТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ Π² ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ ΠΎΡ†ΠΈΡ„Ρ€ΠΎΠ²ΠΊΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ сигнала. Алгоритм опрСдСлСния связанного мноТСства Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ связанного мноТСства пиксСлСй Π½Π° Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ΠšΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚ Π½Π°ΡƒΠΊ Π“ΠΎΠ»ΠΎΠ²ΠΊΠΎ А.Π’.

ΠΠ°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ институт кораблСстроСния Π³. НиколаСва

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ связанного мноТСства пиксСлСй Π½Π° Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ опрСдСлСния связанного мноТСства ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ функция. ΠŸΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΎ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ описаниС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° ΠΈΠ»Π»ΡŽΡΡ‚Ρ€Π°Ρ†ΠΈΡ Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° тСстовая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ описанный Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ. ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½ Π°Π½Π°Π»ΠΈΠ· Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠΉ ΠΎΠ΄ΠΈΠ½ Ρ–Π· Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ–Π² Ρ€Π΅Π°Π»Ρ–Π·Π°Ρ†Ρ–Ρ— Π·Π°Π΄Π°Ρ‡Ρ– визначСння Π·Π²’язаної Π±Π΅Π·Π»Ρ–Ρ‡Ρ– ΠΎΠ±'Ρ”ΠΊΡ‚Ρ–Π² Π½Π° Π±Ρ–Π½Π°Ρ€Π½ΠΎΠΌΡƒ Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Π½Ρ–. Π’ΠΈΠ·Π½Π°Ρ‡Π΅Π½Ρ– Π±Π°Π·ΠΎΠ²Ρ– ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ, які ΠΏΠΎΠ²ΠΈΠ½Π½Π° Π²ΠΈΠ·Π½Π°Ρ‡Π°Ρ‚ΠΈ функція. ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΉ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΈΠΉ опис Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡƒ Π· Π΄ΠΎΠ΄Π°Π²Π°Π½Π½ΡΠΌ Ρ–Π»ΡŽΡΡ‚Ρ€Π°Ρ†Ρ–ΠΉ ΠΉΠΎΠ³ΠΎ Ρ€ΠΎΠ±ΠΎΡ‚ΠΈ. Π ΠΎΠ·Ρ€ΠΎΠ±Π»Π΅Π½Π° тСстова ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ°, Π² ΡΠΊΡ–ΠΉ Ρ€Π΅Π°Π»Ρ–Π·ΠΎΠ²Π°Π½ΠΈΠΉ описаний Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ. ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΉ Π°Π½Π°Π»Ρ–Π· тимчасових ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ–Π² Ρ€ΠΎΠ±ΠΎΡ‚ΠΈ Ρ„ΡƒΠ½ΠΊΡ†Ρ–Ρ—.

On a binary image one of algorithms of realization of task of determination of the linked great number of objects is resulted. Base parameters which a function must determine are certain. The detailed description of algorithm is made, illustration of his work is resulted. The test program the described algorithm is realized in which is developed. The analysis of temporal parameters of work of function is conducted.

ΠžΠ±Π·ΠΎΡ€. Π—Π°Π΄Π°Ρ‡Π° опрСдСлСния связанного мноТСства довольно Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Π° Π² Π²ΠΎΠΏΡ€ΠΎΡΠ°Ρ… Π°Π½Π°Π»ΠΈΠ·Π° Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠ³ΠΎ изобраТСния. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ большоС количСство Π·Π°Π΄Π°Ρ‡. Одной ΠΈΠ· ΠΎΡΠ½ΠΎΠ²Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ являСтся ΠΈΠ·Π±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΡ‚ ΡˆΡƒΠΌΠΎΠ² ΠΈ ΠΏΠΎΠΌΠ΅Ρ… Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ двиТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ Π² ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ ΠΎΡ†ΠΈΡ„Ρ€ΠΎΠ²ΠΊΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ сигнала. Алгоритм опрСдСлСния связанного мноТСства Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π² Π·Π°Π΄Π°Ρ‡Π°Ρ… распознавании ΠΏΠ΅Ρ‡Π°Ρ‚Π½ΠΎΠ³ΠΎ тСкста ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΡ Π»ΠΈΡ†Π° Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ.

БущСствуСт общая ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ° Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ поставлСнной Π·Π°Π΄Π°Ρ‡ΠΈ. Одним ΠΈΠ· Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ являСтся функция bwlabel, Π² ΡΠ·Ρ‹ΠΊΠ΅ модСлирования Matlab. Ѐункция bwlabel ΠΈΡ‰Π΅Ρ‚ Π½Π° Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ связныС области пиксСлов ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ ΡΠΎΠ·Π΄Π°Π΅Ρ‚ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ€Π°Π²Π΅Π½ Π½ΠΎΠΌΠ΅Ρ€Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ пиксСл изобраТСния.

К Π½Π΅Π΄ΠΎΡΡ‚Π°Ρ‚ΠΊΠ°ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ bwlabel слСдуСт отнСсти Π½ΠΈΠ·ΠΊΡƒΡŽ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ выполнСния, Π° Ρ‚Π°ΠΊΠΆΠ΅ отсутствиС возмоТности подсчСта количСства пиксСлСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ опрСдСлСния количСства пиксСлСй ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ являСтся ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠΌ Π² Π·Π°Π΄Π°Ρ‡Π°Ρ… распознавания ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Ρ… Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ², обнаруТСния Π»ΠΈΡ†, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΡˆΡƒΠΌΠΎΠ² ΠΈ ΠΏΠΎΠΌΠ΅Ρ…, Π²Π»ΠΈΡΡŽΡ‰ΠΈΠ΅ Π½Π° ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ опрСдСлСния области двиТСния.

ΠŸΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°Ρ‡ΠΈ. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ связанныС мноТСства Π½Π° Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ. ΠŸΡ€Π΅Π΄ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ опрСдСлСния количСства пиксСлСй, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰ΠΈΡ… ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π²ΠΎ Π²Π½Π΅ΡˆΠ½Π΅ΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅ΡΡ‚ΠΈ Π°Π½Π°Π»ΠΈΠ· Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… характСристик Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°. Максимально ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ характСристикам, для возмоТности использования Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² Π°Π½Π°Π»ΠΈΠ·Π΅ Π²ΠΈΠ΄Π΅ΠΎΠΏΠΎΡ‚ΠΎΠΊΠ°.

РСшСниС Π·Π°Π΄Π°Ρ‡ΠΈ. БвязноС мноТСство (ΠΎΠ±Π»Π°ΡΡ‚ΡŒ) — мноТСство пиксСлСй, Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ пиксСля ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π΅ΡΡ‚ΡŒ хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ сосСд, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰ΠΈΠΉ Π΄Π°Π½Π½ΠΎΠΌΡƒ мноТСству. Π’ΠΈΠ΄Ρ‹ связности:

Β· 4 ΡΠ²ΡΠ·Π½ΠΎΡΡ‚ΡŒ — сосСдями для пиксСля ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ 4 пиксСля: свСрху, слСва, справа, снизу (1).

(1)

Β· 8 ΡΠ²ΡΠ·Π½ΠΎΡΡ‚ΡŒ — сосСдями для пиксСля ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ 8 пиксСлСй, Ρ‚. Π΅. всС ΠΊ Π½Π΅ΠΌΡƒ ΠΏΡ€ΠΈΠ»Π΅ΠΆΠ°Ρ‰ΠΈΠ΅, Π² Ρ‚ΠΎΠΌ числС ΠΈ ΠΏΠΎ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ (2).

(2)

Анализу Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄Π²Π΅Ρ€Π³Π°Ρ‚ΡŒΡΡ ΠΌΠΎΠ½ΠΎΡ…Ρ€ΠΎΠΌΠ½ΠΎΠ΅ (Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠ΅) ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. Π‘ΠΈΠ½Π°Ρ€Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ — это ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ пиксСль ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0 ΠΈΠ»ΠΈ 1. Π‘ΡƒΠ΄Π΅ΠΌ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π² Π½Π°ΡˆΠ΅ΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ 0 — это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ„ΠΎΠ½Π°, 1 — Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ связности — 8.

Зададимся Π±Π°Π·ΠΎΠ²Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ функция поиска связанных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²:

1. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±Ρ‰Π΅Π³ΠΎ количСства связанных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

2. НумСрация ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ связанного ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ индСксом, Ρ‚. Π΅. всС пиксСля, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‚ ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ Π½ΠΎΠΌΠ΅Ρ€ 1, Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ изобраТСния Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 1, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰ΠΈΠ΅ ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ 2 — Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 2, ΠΈ Ρ‚. Π΄.

3. ΠŸΠΎΠ΄ΡΡ‡Π΅Ρ‚ количСства пиксСлСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚.

Рассмотрим основной Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для Π΅Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹.

Π’Ρ…ΠΎΠ΄Π½Ρ‹ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ являСтся Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½Ρ‹ΠΉ ΠΌΠΎΠ½ΠΎΡ…Ρ€ΠΎΠΌΠ½Ρ‹ΠΉ массив, Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΠΌ h — высота ΠΈ w — ΡˆΠΈΡ€ΠΈΠ½Π° изобраТСния, Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒΡŽ integer. Π₯Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠ³ΠΎ изобраТСния Π² 32Ρ… разрядной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ прСдпосылки:

Β· ΠΡƒΠΌΠ΅Ρ€Π°Ρ†ΠΈΡŽ Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Ρ… связанных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ нСпосрСдствСнно Π² ΠΈΡΡ…ΠΎΠ΄Π½ΠΎΠΌ массивС, Ρ‡Ρ‚ΠΎ избавляСт ΠΎΡ‚ Π½Π΅ΠΎΠ±Ρ…одимости объявлСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎ даст Π½Π΅Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ экономию Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ всСго Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°

Β· ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ связанных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΡΡ‚ΠΈΠ³Π°Ρ‚ΡŒ 232 — вСрхняя Π³Ρ€Π°Π½ΠΈΡ†Π° Π΄Π°Π½Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°. Π Π°Π·ΠΌΠ΅Ρ€ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ количСство пиксСлСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒΡΡ Π² ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ, Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ 1024×768.

Β· Integer являСтся самым быстрым Ρ‚ΠΈΠΏΠΎΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² ΡΠ·Ρ‹ΠΊΠ΅ программирования Visual C++, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΈΠΌΠ΅Π΅Ρ‚ 32Ρ… Ρ€Π°Π·Ρ€ΡΠ΄Π½ΡƒΡŽ Π°Π΄Ρ€Π΅ΡΠ°Ρ†ΠΈΡŽ ΠΊ ΠΏΠ°ΠΌΡΡ‚ΠΈ. Из ΡΠΎΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ прСимущСствСнно ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ с Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒΡŽ integer.

Π’Π°ΠΊΠΆΠ΅ Π² Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅:

Β· bIndexCount — пСрСмСнная ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0 ΠΈΠ»ΠΈ 1 (Ρ„Π»Π°Π³ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠ³ΠΎ счСта связанных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²). ΠŸΡ€ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ обнуляСтся

Β· bIsRound — Ρ„Π»Π°Π³ сосСдства. ΠŸΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 1, Ссли Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… связной области Π΅ΡΡ‚ΡŒ хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ сосСд, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ ΠΎΡ‚ 0. Π’ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0.

Β· id — Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ пиксСля Π² ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅.

Β· val — Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ пиксСля Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ½ΠΎΠΌ массивС.

Β· index_count — счСтчик связанных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Π’ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 2. Π­Ρ‚ΠΎ обусловлСно Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π² ΠΈΡΡ…ΠΎΠ΄Π½ΠΎΠΌ массивС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 1 ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

Β· index[3][hw] - индСксный Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Π‘Ρ…Π΅ΠΌΠ° массива ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 4.

Π¦ΠΈΠΊΠ»Ρ‹ с ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ i ΠΈ j ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°ΡŽΡ‚ всС элСмСнты Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива mas[i][j]. Π’ΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠΌ Ρ†ΠΈΠΊΠ»Π΅ j ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° 4 Π³Ρ€Π°Π½ΠΈΡ‡Π½Ρ‹Ρ… условия — Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ ряд, Π½ΠΈΠΆΠ½ΠΈΠΉ ряд, послСдний столбСц ΠΈ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт массива (рисунок 1).

Рисунок 1

ПослС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π³Ρ€Π°Π½ΠΈΡ‡Π½Ρ‹Ρ… условий, происходит Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ А1 ΠΈ (ΠΈΠ»ΠΈ) А2 ΠΈ (ΠΈΠ»ΠΈ) … А5. На Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 2 ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎΠ΄Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ А1. ΠžΡ‚Π»ΠΈΡ‡ΠΈΠ΅ А2 … А5 Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ… массива. ΠŸΠΎΠ΄Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ сосСдних элСмСнтов провСряСмого пиксСля, ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡ‚ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ индСксированного массива. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° производится 1, 2, 3 ΠΈ 4Π³ΠΎ пиксСлСй (2).

Рисунок 2

Рассмотрим Ρ€Π°Π±ΠΎΡ‚Ρƒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ исходного Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠ³ΠΎ массива (3). Π Π°Π±ΠΎΡ‚Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ начинаСтся с Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ находится ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт массива, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ 1 (элСмСнт mas[1][5]).

(3)

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ 1, 2, 3, 4 (2) Ρ€Π°Π²Π½Ρ‹ 0 (ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π±Ρ‹Π»ΠΎ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠ΅ ΠΎΡ‚ 0). Π­Ρ‚ΠΎΠΌΡƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ записываСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ index_count (Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π°Π²Π½ΠΎ 2), сама пСрСмСнная инкрСмСнтируСтся. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ массива ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 2, index[0][2]=2. Аналогичная ситуация происходит для ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ элСмСнта (ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ Ρ‡Ρ‚ΠΎ элСмСнт 2 Π½Π΅ Π³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ с ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΎΠΌ 3) ΠΈ ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π° 7. Π§Π΅Ρ‚Π²Π΅Ρ€Ρ‚Ρ‹ΠΉ Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹ΠΉ элСмСнт Π³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ со Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ index[0][2]=2, index[0][4]= index[0][mas[0][2]]=2. Аналогичная ситуация с ΡˆΠ΅ΡΡ‚Ρ‹ΠΌ Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹ΠΌ элСмСнтом, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ с Ρ‚Ρ€Π΅Ρ‚ΡŒΠΈΠΌ. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ пятый Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹ΠΉ элСмСнт Π³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ с ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΎΠΌ массива, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ записано число 4. Однако Ρ€Π°Π½Π΅Π΅ Π±Ρ‹Π»ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ, Ρ‡Ρ‚ΠΎ 4ΠΉ элСмСнт относится ΠΊΠΎ 2ΠΌΡƒ (4).

(4)

По ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌΡƒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡƒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ id ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π΅Ρ‚ся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ элСмСнта, id=4. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ val=index[0][id (4)]=2. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ выполняСтся Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ id ΠΈ val Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°Π²Π½Ρ‹. И Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послС этого index[0][5]=index[0][2]=2. БхСматичСски Ρ€Π°Π±ΠΎΡ‚Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 4 (Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π½ΡƒΠ»Π΅Π²ΠΎΠΉ строки) ПослС ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π° Ρ†ΠΈΠΊΠ»Π° i ΠΈ j, происходит ΠΏΠΎΠ»Π½ΠΎΠ΅ индСксированиС массива. Π’ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ index_count хранится количСство проиндСксированных элСмСнтов. Π Π°Π·ΠΌΠ΅Ρ€ массива, послС выполнСния Ρ†ΠΈΠΊΠ»ΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ index[3][ index_count].

ΠŸΠΎΠ΄Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ B Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ΅Ρ‚ ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΡƒΡŽ сортировку проиндСксированных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ ΠΏΠΎΠ΄ΡΡ‡Π΅Ρ‚ количСства пиксСлСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ относятся ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ (Рисунок 2. Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΈ Π²Ρ‚ΠΎΡ€ΠΎΠΉ строки). ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ соотвСтствий производится Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ поиску сосСдства пятого ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, Ρ‚. Π΅. ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ id ΠΈ val ΠΈ Π±Π΅ΡΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» while с ΠΏΡ€Π΅Π΄ΡƒΡΠ»ΠΎΠ²ΠΈΠ΅ΠΌ равСнства ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΡ‡Π΅ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ послС ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ сортировки значСния Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ½ΠΎΠΌ массивС ΡΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ Π½Π° ΠΎΠ΄Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Π»Π΅Π²ΠΎ. Π’ΠΎ Π΅ΡΡ‚ΡŒ, нумСрация Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² начинаСтся с Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, количСство пиксСлСй, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰ΠΈΡ… ΠΏΠ΅Ρ€Π²ΠΎΠΌΡƒ элСмСнту, хранится ΠΏΠΎ Π°Π΄Ρ€Π΅ΡΡƒ index[1][1]=3 (рисунок 4, пСрвая строка). ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ итСрация Ρ†ΠΈΠΊΠ»Π° ΠΏΠΎΠ΄Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ B Ρ€Π°Π²Π½Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ index_count.

ΠŸΠΎΠ΄Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ C Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ массивы Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнта исходного массива замСняСтся ΠΏΠΎ Ρ„ΠΎΡ€ΠΌΡƒΠ»Π΅ mas[i][j]=index[2][mas[i][j]]. Π’Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΉ массив Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ (5).

(5)

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ сущСствуСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π±Π΅Π· Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π·Π°Ρ‚Ρ€Π°Ρ‚. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… количСство элСмСнтов мСньшС 10, ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΈΠ· Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠ΅Π³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π°, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ Π²ΡΡΡ‡Π΅ΡΠΊΠΈΡ… ΠΏΠΎΠΌΠ΅Ρ…, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ дальнСйший Π°Π½Π°Π»ΠΈΠ·.

Рисунок 4.

На Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 4 ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ интСрфСйс ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ описанный Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ. ΠžΡΠ½ΠΎΠ²Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ графичСскоС ΠΎΠΊΠ½ΠΎ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹. ΠŸΡ€Π΅Π΄ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Π½ интСрфСйс сохранСния ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ изобраТСния. ΠŸΡ€ΠΈΠ²ΠΎΠ΄ΡΡ‚ΡΡ основныС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ выполнСния Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°: врСмя выполнСния, количСство ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², количСство ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ†Π²Π΅Ρ‚ΠΎΠ² (пСрСмСнная index_count) Π° Ρ‚Π°ΠΊΠΆΠ΅ количСство пиксСлСй Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ распознанный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ выдСляСтся ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠΌ.

Анализу подвСргаСтся ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ 320×240. ВрСмя выполнСния Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° измСняСтся Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… ΠΎΡ‚ 0 Π΄ΠΎ 20 мс, ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²/Ρ†Π²Π΅Ρ‚ΠΎΠ² ΠΎΡ‚ 5/87 Π΄ΠΎ 3300/3400 (случайно сгСнСрированный Π½Π°Π±ΠΎΡ€ пиксСлСй).

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

1. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ связанного мноТСства ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² позволяСт ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π°Π½Π°Π»ΠΈΠ· Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠ³ΠΎ изобраТСния ΠΈ Π²Π²Π΅ΡΡ‚ΠΈ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Π­Ρ‚ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ благодаря Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ производится подсчСт количСства пиксСлСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚.

2. ВрСмя Π°Π½Π°Π»ΠΈΠ·Π° довольно ΠΌΠ°Π»ΠΎ, Ρ‡Ρ‚ΠΎ позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π² Π·Π°Π΄Π°Ρ‡Π°Ρ… Π°Π½Π°Π»ΠΈΠ·Π° ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π΅ΠΎ.

3. Π Π°Π±ΠΎΡ‚Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ с Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅Ρ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ограничСния Π½Π° Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅. ΠŸΡ€ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ Π·Π°Π΄Π°Ρ‡, связанных с Π°Π½Π°Π»ΠΈΠ·ΠΎΠΌ Ρ†Π²Π΅Ρ‚Π½Ρ‹Ρ… Π»ΠΈΠ±ΠΎ ΠΏΠΎΠ»ΡƒΡ‚ΠΎΠ½ΠΎΠ²Ρ‹Ρ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€Π΅Π΄ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ конвСртирования, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ потСрям Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

1. ГонсалСс Π ., Вудс Π ., Эддинс Π‘. Цифровая ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° изобраТСния Π² ΡΡ€Π΅Π΄Π΅ MATLAB. Москва 2006 Π³.

2. Π‘. ΠŸΠ°Ρ…ΠΎΠΌΠΎΠ². C/C++ ΠΈ MS Visual C++ 2008 для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…. Π‘Π₯Π’-ΠŸΠ΅Ρ‚Π΅Ρ€Π±ΡƒΡ€Π³, 2008 Π³.

3. АлСксандр Π’Π΅ΠΆΠ½Π΅Π²Π΅Ρ†. Π’Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ связных областСй Π² Ρ†Π²Π΅Ρ‚Π½Ρ‹Ρ… ΠΈ ΠΏΠΎΠ»ΡƒΡ‚ΠΎΠ½ΠΎΠ²Ρ‹Ρ… изобраТСниях. ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Π°Ρ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° ΠΈ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈΠ°. Выпуск № 4(4)/2003.

4. И. М. Π–ΡƒΡ€Π°Π²Π΅Π»ΡŒ «Π’ΠΈΠΏΡ‹ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ» .

5. И. М. Π–ΡƒΡ€Π°Π²Π΅Π»ΡŒ «ΠžΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ Π»ΠΈΡ† Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Ρ†Π²Π΅Ρ‚Π°» .

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ