Dzięki za linka :)
Ale zacząłem już pisać samemu tą funkcję jednak coś mi nie działa. Mógłby ktoś zerknąć co jest nie tak:
Tak jak na obrazku powyżej szukam "sąsiadów" każdego pixela który jest biały, w ten sposób sprawdzam czy leży on przy jakiejś grupie, jeżeli tak to przydzielam mu numer tej grupy. Jeżeli nie, tworzę nową grupę która ma numer o jeden większy niż grupa o największym numerze. W ten sposób każda grupa powinna być bardziej szara :). Jednak dzieje się coś nie tak.
Edit
Już mi ręce opadają. Mógłby ktoś zerknąć na kod który jest w załączniku. Wydaje mi się że wszystko powinno być ok ale wynik wychodzi mi taki:
Nie mam pojęcia jak to naprawić :(.