Przejdź do treści
QGIS
Tutorial
GeoAI

Raster na wektor w QGIS: 5 metod wektoryzacji

Opublikowano Zaktualizowano

Trzy panele: raster pokrycia terenu przedstawiony jako siatka kolorowych pikseli, ta sama granica odwzorowana przez poligonizację jako schodki oraz ponownie ta sama granica jako gładka zielona linia po agregacji, filtrze powierzchniowym, uproszczeniu i wygładzeniu.

Aby przekonwertować raster na poligony wektorowe w QGIS, otwórz Raster > Konwersja > Poligonizuj (raster na wektor)… (Raster > Conversion > Polygonize (Raster to Vector)), wybierz kanał, nazwij pole wynikowe i uruchom narzędzie. Otrzymasz jeden poligon dla każdej połączonej grupy pikseli o wspólnej wartości, a ta wartość trafi do tabeli atrybutów. To właściwe rozwiązanie dla sklasyfikowanego rastra i niewłaściwe dla fotografii. Cztery inne metody obsługują rastry, których narzędzie Poligonizuj nie potrafi odczytać.

Metoda 2 to wtyczka, którą tworzymy, więc odpowiednio oceń tę sekcję. Ma tyle samo miejsca co pozostałe cztery.

Krótka odpowiedź

Otwórz właściwości rastra i sprawdź dwie rzeczy: typ kanału oraz liczbę różnych wartości. To one wskażą właściwą metodę.

Dane wejścioweMetodaKoszt
Sklasyfikowany raster (pokrycie terenu, reklasyfikowane nachylenie, maska)Metoda 1, Raster > Konwersja > PoligonizujBezpłatnie, w podstawowym QGIS
Ortofotomapa, zdjęcie z drona lub zdjęcia satelitarneMetoda 2, model segmentacjiBezpłatne wtyczki wymagają karty NVIDIA. Wtyczki w chmurze mają bezpłatne pakiety, a następnie subskrypcję
Ciągły raster (NDVI, nachylenie, kanał odbicia)Metoda 3, Reklasyfikacja (wg tabeli), następnie poligonizacjaBezpłatnie, w podstawowym QGIS
DEM lub dowolna powierzchnia wysokościowaMetoda 4, Raster > Extraction > Warstwice lub poligony warstwicoweBezpłatnie, w podstawowym QGIS
Skanowana mapa papierowa lub planMetoda 5, GRASS r.thin oraz r.to.vectBezpłatnie, ale wolno. Dostępne jest płatne śledzenie AI

Każda ścieżka menu, identyfikator algorytmu i wartość domyślna poniżej zostały sprawdzone w dokumentacji QGIS 3.44 oraz stabilnej dokumentacji GDAL 23 sierpnia 2026 roku. Ścieżki menu zakładają domyślny układ QGIS, który wtyczka może zmienić.

Metoda 1: Poligonizuj

Pracuj w odwzorowanym układzie współrzędnych (projected CRS). Dwa opisane niżej kroki przyjmują odległość lub powierzchnię w jednostkach warstwy, a w stopniach te liczby nic nie znaczą.

Algorytm to Poligonizuj (raster na wektor), id gdal:polygonize, opakowujący narzędzie GDAL gdal_polygonize.

Strona dokumentacji QGIS 3.44 dotycząca Polygonize, z parametrami INPUT, BAND, FIELD i EIGHT_CONNECTEDNESS
Źródło każdej wartości domyślnej poniżej: dokumentacja QGIS 3.44 dla gdal:polygonize, zrzut wykonany 23 sierpnia 2026 roku.

Otwórz narzędzie

Raster > Konwersja > Poligonizuj (raster na wektor)… albo panel Algorytmy przetwarzania, grupa GDAL, konwersja rastra.

Wybierz kanał

Kanał 1, chyba że klasy znajdują się gdzie indziej. Tylko jeden kanał, więc zredukuj raster RGB do pojedynczego kanału klas.

Nazwij pole

DN to wartość domyślna. Zmień nazwę na landcover_code, zamiast zostawiać DN.

Zdecyduj o sąsiedztwie 8 pikseli

Domyślnie wyłączone, więc piksele muszą dzielić pełną krawędź, aby się połączyć. Włącz je, a połączą się także piksele stykające się po przekątnej. Przy wyłączonej opcji cienki element diagonalny rozpada się na łańcuch poligonów. W naszym teście na WorldCover poniżej obniżyło to liczbę poligonów o 21%, a liczby wierzchołków wcale: grupuje piksele, nie wygładza ich.

Zapisz do rzeczywistego pliku

Domyślnie tworzona jest warstwa tymczasowa. 100 km² pokrycia terenu o rozdzielczości 10 m dało nam 9221 poligonów i plik GeoPackage o rozmiarze 4,9 MB, więc zapisuj bezpośrednio do pliku.

Okno dialogowe QGIS Polygonize: Land cover 10 m [EPSG:32631], Band 1 (Palette), pole landcover_code, łączność 8-sąsiedztwa odznaczona, wynik zapisywany do GeoPackage.
Cztery istotne parametry na wycinku ESA WorldCover o rozdzielczości 10 m z doliny Drôme. DN zmienione na landcover_code, wynik zapisywany bezpośrednio do GeoPackage.

Dwie rzeczy oszczędzają czas. Po pierwsze, ustaw wartość NoData dla klasy, której nie chcesz zachować. GDAL odczyta wtedy maskę poprawności kanału i pominie te piksele, zamiast otaczać wszystko jednym ogromnym poligonem tła. To najczęstsza skarga dotycząca wyniku narzędzia Poligonizuj, a problem dotyczy właściwości rastra, nie ustawień narzędzia.

Strona referencyjna gdal_polygonize w serwisie gdal.org, z opcjami -8, -nomask i -mask
Narzędzie GDAL znajdujące się pod algorytmem QGIS, zrzut wykonany 23 sierpnia 2026 roku. Zachowanie maski poprawności wynika z flagi -nomask.

Po drugie, obserwuj typ kanału. gdal:polygonize zawsze zapisuje pole całkowitoliczbowe, więc po drodze konwertuje kanał zmiennoprzecinkowy, co prowadzi do dwóch różnych problemów zależnie od sposobu przechowywania wartości przez raster. Żadne z nich nie generuje ostrzeżenia. Kanał Float32 najpierw przeprowadź przez Metodę 3.

Schodki i szum: najpierw Generalizuj raster, potem Uprość pokrycie

Narzędzie Poligonizuj odwzorowuje granice pikseli, więc krawędź pola biegnąca po przekątnej wraca jako kąty proste, po jednym schodku na piksel. Klasyfikacja Sentinel o rozdzielczości 10 m daje schodki co 10 m.

Wynik Polygonize nałożony na raster pokrycia terenu o rozdzielczości 10 m, w przybliżeniu 1:1 500. Różowe grunty uprawne między zielonymi drzewami i żółtymi terenami trawiastymi, każda diagonalna granica złożona z jednopikselowych schodków.
Surowy wynik gdal:polygonize, 3551 poligonów, na rastrze ESA WorldCover, z którego pochodzi. Policz schodki wzdłuż dowolnej przekątnej: każdy to piksel o rozdzielczości 10 m.

To prawidłowy wynik, a żadne ustawienie narzędzia Poligonizuj go nie zmieni. Naprawia go jeden krok na rastrze przed poligonizacją i jeden krok na pokryciu po niej. Na kwadracie 10 km danych ESA WorldCover wokół Crest w departamencie Drôme poligonizacja dała 9221 poligonów i 200 656 wierzchołków, a 57% tych poligonów było mniejszych niż pięć pikseli. Generalizacja rastra z progiem 10 pikseli przed poligonizacją zmniejszyła ich liczbę do 2660 i zmieniła klasę 1,75% pikseli.

Zwykłe rozwiązanie wektorowe psuje potem mapę. Algorytm Uprość geometrię w QGIS działa na jednym poligonie naraz, więc dwaj sąsiedzi upraszczają wspólną krawędź inaczej: przy tolerancji 10 m otworzyło to 88 ha szczelin i 81 ha nakładek na kwadracie 10 000 ha. Uprość pokrycie traktuje warstwę jako jedną siatkę i nie zostawiło żadnych.

Krok na kwadracie 10 kmPoligonyWierzchołkiGeoPackagePiksele ze zmienioną klasąSzczeliny i nakładki
Poligonizuj, domyślnie sąsiedztwo 4 pikseli9221200 6564,9 MB0%0
Poligonizuj, sąsiedztwo 8 pikseli7284200 6564,7 MB0%0
Generalizuj raster 5 px, potem Poligonizuj3886168 0603,6 MB0,94%0
Generalizuj raster 10 px (wartość domyślna), potem Poligonizuj2660155 9203,2 MB1,75%0
Generalizuj raster 50 px, potem Poligonizuj1001122 4402,4 MB5,36%0
Generalizuj raster 10 px, potem Uprość geometrię przy 10 m266057 8961,5 MB4,11%169 ha
Generalizuj raster 10 px, potem Uprość pokrycie przy 10 m266084 9841,9 MB2,63%0

Generalizacja rastra wygrywa z filtrem $area z tego samego powodu. Usunięcie wszystkich poligonów mniejszych niż 500 m² kasuje 5263 poligony, czyli te, które pochłania generalizacja z progiem 5 pikseli, ale zostawia 94 ha dziur. Generalizacja oddaje te piksele największemu sąsiadowi, więc mapa pozostaje ciągła. Z 51 poradników QGIS na YouTube z naszego korpusu badawczego, w których pada nazwa Poligonizuj, żaden nie uruchamia Generalizuj raster przed nią.

Trzy panele tego samego kwadratu 1,2 km z poligonami pokrycia terenu. Z lewej: surowy wynik poligonizacji, schodkowe krawędzie i wiele jednopikselowych plamek. W środku: po generalizacji rastra i uproszczeniu poligon po poligonie, czarne szczeliny wzdłuż wspólnych krawędzi. Z prawej: po generalizacji rastra i uproszczeniu jako pokrycie, czyste wspólne krawędzie bez szczelin.
Kwadrat 1,2 km na południowy zachód od Crest w departamencie Drôme, rzeka przy górnej krawędzi. ESA WorldCover 2021, 10 m. Panel środkowy: czerń oznacza szczeliny i nakładki, które uproszczenie poligon po poligonie przy 10 m otworzyło między sąsiadami. Pomiar z 23 września 2026 roku.

W QGIS całe czyszczenie to cztery kroki, w tej kolejności.

Generalizuj raster

Raster > Analysis > Generalizuj raster (Sieve), id gdal:sieve, przed poligonizacją. Próg podaje się w pikselach i domyślnie wynosi 10, czyli 1000 m² na rastrze 10 m. Każdy płat mniejszy od progu przejmuje wartość swojego największego sąsiada. Zmiana klas rośnie wraz z progiem: 1,75% pikseli przy 10, 8,19% przy 100.

Poligonizuj wygeneralizowany raster

Metoda 1 jak wyżej. Agregacja nie jest potrzebna: Poligonizuj już zapisuje jeden poligon na płat.

Uprość pokrycie

Panel Algorytmy przetwarzania, grupa pokrycia wektorowego (Vector coverage), Uprość pokrycie (Simplify coverage), native:coveragesimplify, dostępne w QGIS od wersji 3.36. Tolerancja jest podawana w jednostkach warstwy i domyślnie wynosi 1. Na rastrze 10 m przy 5 m nie usunęła nic, a przy 10 m usunęła 45% wierzchołków, więc zacznij od rozmiaru jednego piksela. Zwykłe Uprość geometrię zostaw dla odizolowanych płatów, które nie mają wspólnej krawędzi, na przykład jednej klasy na tle NoData.

Wygładzaj, ale tylko krzywe

native:smoothgeometry (Wygładź), na rzeczywiście zakrzywionych obiektach: strumieniach, liniach brzegowych, płatach roślinności. Przesunięcie domyślnie wynosi 0,25, a liczba iteracji kontroluje stopień zaokrąglenia. Ustaw Maksymalny kąt na węźle do wygładzenia na 90, aby ostrzejsze narożniki pozostały ostre, co pozwala zachować narożniki budynków i działek.

Jak to zmierzyliśmy. ESA WorldCover 2021 v200, kafel N42E003, kwadrat 10 km wyśrodkowany na Crest (44.728 N, 5.022 E), przeliczony do EPSG:32631 przy 10 m metodą najbliższego sąsiada, 23 września 2026 roku. „Piksele ze zmienioną klasą” to wynik wypalenia poligonów z powrotem na tę samą siatkę i porównania z oryginalnym rastrem. Szczeliny i nakładki to powierzchnia, której nie pokrywa żaden poligon, oraz powierzchnia pokryta przez dwa poligony. Wiersze Poligonizuj, Generalizuj raster, Uprość geometrię i Uprość pokrycie powtórzyliśmy narzędziami z QGIS 3.44.7 (GDAL 3.12, GEOS 3.14) i dostaliśmy te same liczby. Jedno okno, jeden produkt pokrycia terenu i jeden rozmiar piksela: raster 30 m lub 1 m zmienia każdą liczbę.

Użyj, gdy: raster przechowuje klasy jako liczby całkowite.

Pomiń, gdy: kanał jest zmiennoprzecinkowy, przedstawia fotografię lub wysokość.

Metoda 2: Model segmentacji dla fotografii

Model segmentacji nauczył się, jak wyglądają obiekty, więc odnajduje je na fotografii, gdzie żadna wartość piksela ich nie rozdziela. Tworzymy jeden z takich modeli, AI Segmentation. Ta sekcja dotyczy naszego narzędzia.

Skieruj narzędzie Poligonizuj na tę samą ortofotomapę, a otrzymasz szum. Czerwony dach i czerwony samochód mają podobne wartości pikseli, podobnie jak szary dach i szara droga. Klasy istnieją w twojej głowie, nie w pliku.

Zainstaluj przez Zarządzanie wtyczkami

Bez GPU, bez środowiska Python i bez pobierania wag modelu.

Utwórz konto

Jest potrzebne. Bezpłatny limit, a następnie 39 € miesięcznie bez VAT.

Wybierz tryb

Oba tryby w chmurze wysyłają obrazy na serwer. Mały model lokalny pozostaje na twoim komputerze.

Uruchom nad swoim obszarem

Otrzymasz warstwę poligonową w układzie współrzędnych projektu, z polami label, class, score, area_m2 i perimeter_m dla każdego obiektu.

Filtruj wynik

Surowy wynik modelu wymaga filtrowania, tak jak wynik narzędzia Poligonizuj wymaga czyszczenia. Podczas jednego uruchomienia nad centrum Paryża zachowałem 82 poligony z 635, a te 82 obejmowały 84 procent zabudowanej powierzchni.

Podmiejska ulica na zdjęciach Google Satellite w QGIS. Sześć dachów domów po prawej stronie drogi obrysowanych na czerwono oraz kolejne poligony nad domami po lewej.
Ekstrakcja oparta na modelu na zdjęciach Google Satellite, zrzut wykonany 23 sierpnia 2026 roku. Każdy dach jest osobnym poligonem, edytowalnym jak dowolny obiekt wektorowy. Poligonizuj nie potrafi tego zrobić: wartości pikseli nie rozdzielają dachu od podjazdu.

Pięć innych wtyczek wykonuje to zadanie, a nasza znajduje się w ostatnim wierszu. Koszty i bezpłatne pakiety według stanu na 23 sierpnia 2026 roku.

NarzędzieCo instalujeszGPUKontoObrazy opuszczają komputerWynikKoszt
Deepness (źródło)Zarządzanie wtyczkami, następnie jego pakiety Python i model ONNXOpcjonalne, CPU działaNieNieWarstwa poligonowa, obwiednie lub rasterBezpłatnie
Geo-SAMZarządzanie wtyczkami, następnie zależności i wagi modelu z okna ustawieńOpcjonalne, kliknięcia działają na CPUNieNieWarstwa poligonowa, pikselowa lub uproszczonaBezpłatnie
samgeoPakiet Python w środowisku, bez panelu QGISZalecaneNieNieGeoJSON, Shapefile lub GeoPackage ładowany samodzielnieBezpłatnie
Mapflow (strona)Zarządzanie wtyczkamiNieTakTak w usłudze chmurowej, przesłany GeoTIFF lub wskazana usługa kafelkowa. Oferowana jest opcja on-premise dla klientów enterpriseWarstwa poligonowaKredyty, płatne
Bunting Labs AI VectorizerZarządzanie wtyczkamiNieTakTak, we fragmentach rastraWierzchołki w warstwie, którą digitalizujeszOkres próbny, następnie 29 dolarów miesięcznie
AI Segmentation (nasza)Zarządzanie wtyczkamiNieTakTak w obu trybach w chmurze, nie w małym modelu lokalnymWarstwa poligonowa w układzie współrzędnych projektu, z polami label, class, score, area_m2 i perimeter_mBezpłatny limit, następnie 39 € miesięcznie bez VAT

Jedno ograniczenie dla każdego.

  • Deepness uruchamia model, który mu przekażesz, więc najpierw musisz go znaleźć lub wytrenować.
  • Geo-SAM przyjmuje kliknięcia i obwiednie, po jednym obiekcie.
  • samgeo nie ma interfejsu QGIS. Piszesz w Pythonie.
  • Mapflow oferuje gotowe modele dla budynków, lasów, dróg i placów budowy.
  • Bunting Labs AI Vectorizer śledzi linie podczas digitalizacji.
  • AI Segmentation, nasza, wysyła obrazy na serwer w obu trybach w chmurze. Tylko mały model lokalny pozostaje lokalny.

Użyj, gdy: dane wejściowe to fotografia, a obiektów jest więcej, niż chcesz narysować ręcznie.

Pomiń, gdy: obrazy nie mogą opuścić twojego komputera, co może obsłużyć lokalna wtyczka, taka jak Deepness lub Geo-SAM.

Wypróbuj bezpłatnie w QGIS, karta nie jest potrzebna

Metoda 3: Reklasyfikacja, następnie poligonizacja

Poligonizacja ciągłego rastra zawodzi na jeden z dwóch sposobów, zależnie od przechowywania wartości.

Wartości zapisane jako skalowane liczby całkowite, tak jak w produktach NDVI, dają poligon dla niemal każdego piksela. Zmierzyłem 39 801 poligonów z 40 000 pikseli na scenie Sentinel-2.

Wartości zapisane jako surowe liczby zmiennoprzecinkowe między -1 a 1 zostają podczas konwersji do liczb całkowitych spłaszczone do -1, 0 lub 1, zanim rozpocznie się śledzenie. Ta sama scena wróciła jako 238 poligonów w dwóch klasach. Wygląda to schludnie, ale wartości zniknęły.

Raster NDVI nad terenami rolnymi w przybliżeniu 1:1 000, gdzie każdy piksel 10 m ma własny obrys poligonu. Panel Warstwy wyświetla ndvi_polygonized z 39801 obiektami.
NDVI ze sceny Sentinel-2 z 11 sierpnia 2025 roku, zapisane jako skalowane liczby całkowite i poligonizowane bez zmian. 39 801 poligonów z 40 000 pikseli.

Nachylenie, wysokość, temperatura i surowy kanał odbicia zachowują się tak samo. Narzędzie odwzorowuje granice między wartościami całkowitymi, a ciągły raster nie ma granic wartych odwzorowania. Utwórz więc klasy samodzielnie za pomocą Reklasyfikacja (wg tabeli) (Reclassify by table), id native:reclassifybytable.

Otwórz Reklasyfikację (wg tabeli)

Panel Algorytmy przetwarzania, grupa analizy rastra. Ciągły raster jest danymi wejściowymi.

Wprowadź tabelę klas

Trzy kolumny: minimum, maksimum, nowa wartość. Narzędzie przyjmuje -inf, inf i nan jako NoData. Maska roślinności ma trzy wiersze.

MinimumMaksimumWartość
-inf0.21
0.20.52
0.5inf3

Ustaw typ danych wynikowych

W parametrach zaawansowanych Wynikowy typ danych domyślnie ma wartość Float32. Ustaw Byte lub Int16, aby Poligonizuj działało poprawnie.

Sprawdź granice zakresów

Granice zakresu domyślnie mają wartość min < value <= max, co decyduje o tym, gdzie trafi piksel o wartości dokładnie 0.2. Wybierz ustawienie zgodne z definicją klasy.

Poligonizuj wynik

Uruchom Metodę 1 na reklasyfikowanym rastrze, a następnie cztery kroki czyszczenia.

Okno dialogowe QGIS Reclassify by Table na rastrze NDVI Float32: Output data type ustawione na Byte, Range boundaries ustawione na min mniejsze niż wartość mniejsza lub równa max oraz trzywierszowa tabela klas.
Trzywierszowa maska roślinności w poprawionej tabeli. Dwie wartości domyślne, które warto zmienić, znajdują się za nią: typ danych wynikowych, tutaj Byte, oraz granice zakresu.

Użyj, gdy: potrafisz liczbowo określić, gdzie kończy się jedna klasa i zaczyna następna.

Pomiń, gdy: potrzebujesz obiektu, a nie zakresu wartości.

Metoda 4: Warstwice z DEM

W przypadku wysokości nie używaj narzędzia Poligonizuj. Zastosuj Warstwice (Contour) w Raster > Extraction > Warstwice, id gdal:contour.

Otwórz Warstwice

Raster > Extraction > Warstwice, z DEM jako danymi wejściowymi.

Ustaw interwał

Domyślnie wynosi 10,0 w jednostkach rastra, więc metryczny DEM otrzyma linię co 10 m.

Nazwij atrybut

Wysokość domyślnie trafia do ELEV. Zachowaj tę nazwę i na jej podstawie dodaj etykiety.

Zdecyduj o opcji Twórz wektor 3D

Zaznacz ją, aby zapisać wysokość każdego wierzchołka. W przypadku drukowanej mapy pozostaw ją wyłączoną, ponieważ wiele programów usuwa współrzędną Z.

Przełącz na poligony warstwicowe dla wypełnionych pasów

Powiązany algorytm gdal:contour_polygon tworzy wypełnione pasy między dwiema wysokościami, z polami ELEV_MIN i ELEV_MAX na każdym poligonie. To właściwe rozwiązanie dla mapy hipsometrycznej lub zasięgu zalewu i pozwala uniknąć ręcznej poligonizacji reklasyfikowanego DEM.

Okno dialogowe QGIS Contour na DEM Copernicus 30 m: interwał 10, nazwa atrybutu ELEV, Produce 3D vector odznaczone.
gdal:contour na kaflu Copernicus DEM 30 m nad doliną Drôme. Interwał 10 w jednostkach rastra, wysokość w ELEV, opcja Twórz wektor 3D wyłączona.
Dwa panele tego samego pagórkowatego obszaru: brązowe warstwice co 10 m na szarym cieniowaniu terenu, linie 50 m pogrubione i oznaczone wartościami 400, 450, 500, 550, 600 oraz 650, a następnie ten sam teren jako wypełnione pasy od zielonych dolin do brązowych wierzchołków.
Ten sam DEM, ten sam interwał 10 m, dwa algorytmy. gdal:contour tworzy linie z etykietami z ELEV. gdal:contour_polygon tworzy wypełnione pasy z ELEV_MIN i ELEV_MAX, których potrzebuje mapa hipsometryczna.

Warstwice z lidarowego DEM są zaszumione, ponieważ zaszumiona jest powierzchnia. Wygładź raster przed utworzeniem warstwic, nigdy same linie później: wygładzone linie będą się przecinać.

Użyj, gdy: potrzebujesz poziomu: wysokości, głębokości, opadów lub stężenia.

Pomiń, gdy: raster już przechowuje klasy.

Metoda 5: Skanowane mapy papierowe

Jeśli znasz ArcGIS i szukasz odpowiednika ArcScan w QGIS, nie ma takiego narzędzia. Podstawowy QGIS nie oferuje interaktywnego śledzenia rastra, w którym klikasz linię na skanie, a narzędzie za nią podąża. To rzeczywista luka w QGIS i lepiej powiedzieć to wprost, niż kazać ci przeszukiwać menu. O tym, co jeszcze się zmienia po przejściu, przeczytasz we wpisie QGIS vs ArcGIS Pro.

Bezpłatna ścieżka prowadzi przez GRASS, który jest dostarczany z większością instalatorów QGIS.

Utwórz próg na skanie

Przekształć skanowany arkusz w raster binarny: linie na jedną wartość, papier na drugą.

Odchudź linie

r.thin redukuje każde pociągnięcie do szerokości jednego piksela.

Wektoryzuj

r.to.vect z typem obiektu line. Dokumentacja GRASS ostrzega, że w punktach połączeń i na wystających odcinkach powstaje nadmiar wierzchołków, więc zaplanuj czas na czyszczenie.

Istnieją jeszcze dwie ścieżki. Potrace i AutoTrace działają poza QGIS: bitmapa na wejściu, wektor na wyjściu, a następnie georeferencjonujesz wynik. Dobrze radzą sobie ze skanami o wysokim kontraście, ale nie uwzględniają geografii.

W QGIS Bunting Labs AI Vectorizer (wpis w repozytorium QGIS) automatycznie uzupełnia linię podczas digitalizacji, z myślą o mapach geologicznych, inwentaryzacji powykonawczej i planach. Wysyła fragmenty rastra na swoje serwery, nie oferuje bezpłatnego pakietu poza okresem próbnym, a opublikowane ceny zaczynają się od 29 dolarów miesięcznie, według stanu na 23 sierpnia 2026 roku.

W przypadku kilku obiektów nadal wygrywa ręczna digitalizacja z przyciąganiem. Nie budowałbym procesu śledzenia dla mniej więcej pięćdziesięciu obiektów.

Użyj, gdy: skan zawiera czytelne linie i setki obiektów.

Pomiń, gdy: arkusz jest blady, kreskowany lub opisany tekstem na liniach.

Co zapamiętać

Co mówią właściwościMetoda
Kanał całkowitoliczbowy, mniej niż sto różnych wartościMetoda 1, Generalizuj raster, poligonizacja, następnie Uprość pokrycie
Trzy kanały fotografiiMetoda 2, model segmentacji
Kanał zmiennoprzecinkowy, tysiące różnych wartościMetoda 3, reklasyfikacja wg tabeli, następnie Metoda 1
Wysokość w metrach lub dowolna gładka powierzchniaMetoda 4, warstwice lub poligony warstwicowe
Skanowany arkusz bez wartości klasMetoda 5, GRASS lub digitalizacja ręczna

Liczba różnych wartości rozstrzyga. Poniżej stu ktoś już sklasyfikował raster, a Poligonizuj czysto odwzorowuje te klasy.

Przy tysiącach wartości nikt niczego nie sklasyfikował, więc w Metodzie 3 wyznaczasz progi samodzielnie albo przekazujesz zadanie modelowi w Metodzie 2.

Schodki są prawidłowym wynikiem i żadne ustawienie narzędzia Poligonizuj ich nie usunie. Najpierw wygeneralizuj raster, potem użyj Uprość pokrycie, a nie Uprość geometrię, aby sąsiedzi zachowali jedną wspólną krawędź.

Każdy krok czyszczenia przesuwa wierzchołki, więc każdą powierzchnię trafiającą do raportu oblicz z rastra, a nie z poligonów.

Narzędzie Poligonizuj nie potrafi odczytać fotografii przy żadnych ustawieniach, ponieważ klasy są w twojej głowie, a nie w pliku.

Pytania, które ludzie zadają

Czy raster do poligonu to to samo co raster do wektora?

Nie całkiem. Raster do wektora obejmuje poligony, linie i punkty. Raster do poligonu to konkretnie ścieżka Poligonizuj, Raster > Konwersja > Poligonizuj, czyli Metoda 1. Warstwice z Metody 4 również należą do raster do wektora, ale ich wynikiem są linie.

Dlaczego Poligonizuj tworzy jeden ogromny poligon wokół wszystkiego?

Dla klasy tła nie ustawiono wartości NoData, więc GDAL odwzorowuje ją jako rzeczywiste dane. Ustaw NoData dla tej klasy we właściwościach rastra, a następnie ponownie uruchom Metodę 1.

Dlaczego Poligonizuj utworzył poligon dla niemal każdego piksela?

Raster jest ciągły, a nie sklasyfikowany, więc prawie żadne dwa sąsiednie piksele nie mają tej samej wartości. Najpierw wykonaj reklasyfikację: Metoda 3.

Jak usunąć schodkowe krawędzie?

Wygeneralizuj raster przed poligonizacją, następnie uruchom Uprość pokrycie z tolerancją około jednego piksela, a potem Wygładź tylko na obiektach zakrzywionych. Zwykłe Uprość geometrię działa poligon po poligonie i otwiera szczeliny między sąsiadami. Jeśli powierzchnie trafiają do raportu, oblicz je z rastra.

Czy QGIS ma odpowiednik ArcScan?

Nie. Podstawowy QGIS nie ma interaktywnego śledzenia rastra. Metoda 5 oferuje bezpłatną ścieżkę przez GRASS, najpierw r.thin, a potem r.to.vect, oraz płatną opcję, wtyczkę Bunting Labs od 29 dolarów miesięcznie.

Czy mogę wykonać poligonizację zdjęcia lotniczego lub satelitarnego?

Nie, a wynik będzie wyglądał jak szum, ponieważ czerwony dach i czerwony samochód mają wspólne wartości pikseli. Użyj modelu segmentacji: Metoda 2.

Jak usunąć drobne poligony, które tworzy Poligonizuj?

Uruchom Raster > Analysis > Generalizuj raster na rastrze przed poligonizacją. Łączy każdy płat poniżej progu z jego największym sąsiadem. Usuwanie małych poligonów po fakcie zostawia dziury.

Czy raster do wektora w QGIS jest bezpłatny?

Tak w przypadku Metod 1, 3 i 4: Poligonizuj, reklasyfikacja, warstwice oraz algorytmy czyszczenia należą do podstawowego QGIS. Pieniądze kosztują tylko przypadek fotografii i płatne śledzenie skanów.

Poradnik obrysów budynków prowadzi przez filtrowanie od początku do końca, a wpis o SAM w QGIS wyjaśnia, które obiekty te modele dobrze znajdują. Centrum QGIS AI porównuje wtyczki obok siebie. Jeśli potrzebujesz tylko budynków, nasze bezpłatne narzędzie obrysów budynków pobiera je z otwartych danych w przeglądarce, bez wtyczki.