Posteryzacja była świetnym początkiem: wyeliminowała większość artefaktów kompresji i uprościła kartografię na tyle, aby umożliwić dodatkowe czyszczenie.
Znaczna część czyszczenia kategorycznego rastra obejmuje tak zwane operacje „morfologiczne”. Obejmują one rozszerzenie jednej kategorii na sąsiadów, ponowne jej zmniejszenie i ponowne grupowanie przyległych komórek monokategoryjnych w ich własne kategorie.
Zwykle potrzebne są pewne eksperymenty, choćby dlatego, że artefakty, które mają zostać usunięte - litery, linie kreskowania itp. - będą różnić się rozmiarem pikseli między skanami. Aby rozpocząć, zilustruję, co te procedury mogą osiągnąć na przykładzie.
Oryginał po posteryzacji wygląda następująco. To siatka z trzema kategoriami pokazanymi w trzech kolorach. Naszym celem jest stworzenie siatki, w której ciemnozielone obszary są przekształcane w ciągłe fragmenty, bez nadmiaru, kropek lub nieistotnej linii, nadające się do późniejszej analizy za pomocą algebry rastrowej.

Po rozwinięciu ciemnozielonych obszarów o zaledwie jeden piksel do wszystkich otaczających obszarów ten obraz daje:

(Aby uzyskać bardziej precyzyjną kontrolę, możesz ograniczyć ekspansję tylko do czarnych obszarów, jeśli pozwala na to GIS).
Aby wyeliminować wiele cienkich linii zielonych artefaktów i małych wysepek, zmniejszmy zieleń z powrotem o dwa piksele

a następnie, aby zrównoważyć wszystkie rozwijające się i kurczące (aby zmniejszyć obciążenie), rozszerzymy go o jeszcze jeden piksel:

Grupowanie regionów identyfikuje następujące ciągłe obszary zieleni:

Każda łatka jest pokazana w innym kolorze.
Użyj operacji warunkowej lub operacji SetNull, aby wyeliminować małe poprawki. Jak malutki Przejrzałem tabelę atrybutów i odkryłem, że wiele łat zajmowało od 6 do 47 komórek; potem nastąpił skok do 422 komórek. Wybrałem próg w ramach tego skoku (100) i usunąłem wszystkie komórki z liczbą (nie wartościami!) Mniejszą niż ten próg. Oto, co pozostało, nałożone na oryginał do porównania:

Osiągnęliśmy dość precyzyjną reprezentację obszarów zainteresowania, odpowiednich do wykrywania i kwantyfikacji zmian w stosunku do podobnie przetwarzanych obrazów. Wziąłem trochę pracy, ale jest to o wiele mniej pracy niż ręczne digitalizowanie oryginalnego skanu i - pod warunkiem, że skany są wykonywane w stałej rozdzielczości - mogą być półautomatyczne. (Ponieważ oryginalne mapy używają różnych kolorów, na początku musi nastąpić inteligentna interwencja, aby wybrać odpowiednie kolory do powiększania i zmniejszania.) Każdy z kroków jest również dość szybkim obliczeniem, więc prawdopodobnie możesz sobie pozwolić na zeskanowanie oryginału mapy w bardzo wysokich rozdzielczościach dla największej precyzji.