Zum Inhalt springen
AI Segmentation
QGIS
Tutorial

Baumbestand in QGIS: 6 Methoden, gratis

Drei Ansichten derselben Parklandschaft: einfache Luftbilder, ein NDVI-Raster mit roter Vegetation und jede Baumkrone als eigenes farbiges Polygon.

Um Baumkronen in aus multispektralen Aufnahmen zu kartieren, berechnest du zunächst NDVI über Raster > Raster Calculator…, setzt mit Reclassify by table einen Schwellenwert und führst anschließend Raster > Conversion > Polygonize (raster to vector) aus. Damit erhältst du Bedeckung, aber keine einzelnen Bäume. Fünf weitere Methoden decken LiDAR, offene Daten und den Fall ab, in dem du ein Polygon pro Baumkrone brauchst.

Wo das Web danebenliegt

Drei Antworten werden in Tutorials und Foren immer wiederholt, und jede davon kostet dich einen Nachmittag.

„NDVI schwellen, und schon hast du deine Bäume.“ NDVI trennt Grün von Nichtgrün. Eine Rasenfläche, ein Weizenfeld und eine Eiche sind alle grün und landen deshalb in derselben Klasse. NDVI liefert dir Vegetationsbedeckung. Ob du sie als Baumkronenbedeckung bezeichnest, ist eine Entscheidung, die du begründen musst.

„Das Baumhöhenmodell direkt aus der LAS-Datei erzeugen.“ Die Geländeoberfläche kommt aus den Punkten, die als Boden klassifiziert sind, und QGIS 3.44 hat keinen Algorithmus, der diese Klassifizierung vornimmt. In einer nicht klassifizierten Punktwolke liefert der Filter nichts, und das Gelände wird flach.

„Installiere das Semi-Automatic Classification Plugin, neueste Version.“ Release 9.0.4 benötigt QGIS 3.99, also die QGIS-4-Reihe. Unter QGIS 3.44 bietet dir der Manager 8.5.0 vom November 2024 an. Prüfe deshalb zuerst, welche Version du tatsächlich bekommen hast, bevor du deine Trainingsdaten verantwortlich machst.

Die kurze Antwort

Was du hastMethodeKosten
Multispektralbilder mit einem NahinfrarotbandMethode 1, NDVI und anschließend polygonisierenKostenlos, QGIS-Kernfunktion
LiDAR oder ein DSM und ein DTMMethode 2, BaumkronenhöhenmodellKostenlos, QGIS-Kernfunktion
Bilder und mehrere zu trennende KlassenMethode 3, überwachte KlassifikationKostenlos, ein plugin
Ein großes Gebiet, und das Datum des letzten Jahres reicht ausMethode 4, ein offener BaumkronendatensatzKostenloser Download
RGB-Bilder und eine NVIDIA-KarteMethode 5, lokales SegmentierungsmodellKostenlos, plus ein zu findendes Modell
RGB-Bilder, keine Karte, und du willst BaumkronenMethode 6, Cloud-SegmentierungsmodellKostenloses Kontingent, danach Abonnement

Bevor du beginnst

Arbeite in einem projizierten CRS. Jede Methode hier endet mit einer Fläche, und eine Fläche in Grad ist nichts wert.

Entscheide, ob du Bedeckung oder Baumkronen brauchst. Bedeckung ist eine Oberfläche, aus der sich ein Prozentsatz ergibt. Baumkronen sind zählbare Objekte, genau das, was eine Straßenaufnahme oder ein Parkinventar benötigt.

Methode 1: NDVI-Schwellenwert

NDVI trennt grüne Vegetation von Dächern, Straßen und Wasser. Öffne Raster > Raster Calculator… und gib ("nir@1" - "red@1") / ("nir@1" + "red@1") ein.

An NDVI raster over a French village in QGIS, vegetation bright and roofs dark, with the layer histogram beside it showing two peaks.
NDVI from a Sentinel-2 scene. The histogram has two peaks and the valley between them is your threshold. There is no universal number, so read your own scene.

Führe anschließend Reclassify by table (native:reclassifybytable, Processing Toolbox, Raster analysis) aus. Verwende eine Zeile oberhalb und eine unterhalb des Schwellenwerts und setze den Ausgabedatentyp auf Byte. Polygonisiere das Ergebnis.

Verwende die Methode, wenn: die Bilder ein Nahinfrarotband enthalten und du Bedeckung möchtest.

Überspringe sie, wenn: Bäume von Rasen oder Nutzpflanzen unterschieden werden müssen. NDVI kann das nicht, weil alle drei grün sind.

Methode 2: Baumkronenhöhenmodell aus LiDAR

Die Höhe ist das einzige Signal, das einen Baum von einer Rasenfläche trennt. QGIS erstellt beide Oberflächen direkt aus einer LAS- oder LAZ-Datei mit Export to raster (pdal:exportraster, Point Cloud Conversion). Setze Attribute auf Z. Für das Gelände fügst du den Filterausdruck Classification == 2 hinzu. Das ist Ground in den ASPRS-Klassen, die QGIS verwendet. Für die Oberfläche filterst du mit ReturnNumber == 1.

A canopy height model in QGIS coloured from green at ground level to dark red at 25 metres, tree crowns standing out over flat grey ground.
DSM minus DTM over a park. Crowns stand out because they are tall, not because they are green, so lawns and gardens drop out on their own.

Ziehe eine Oberfläche von der anderen ab, und zwar in Raster > Raster Calculator… mit "dsm@1" - "dtm@1", oder bei größeren Kacheln in grass:r.mapcalc.simple. Klassifiziere ab der Höhe um, die deine Spezifikation als Baumkronen festlegt, und polygonisiere anschließend. Die Ausgabe enthält eine Höhe pro Pixel. Das liefert dir keine andere Methode auf dieser Seite.

Verwende die Methode, wenn: du LiDAR oder ein nationales DSM-DTM-Paar hast.

Überspringe sie, wenn: deine Punkte nicht klassifiziert sind. QGIS 3.44 hat keinen Algorithmus zur Bodenklassifizierung. Nicht klassifizierte Punkte müssen deshalb zuerst außerhalb von QGIS durch PDAL verarbeitet werden.

Methode 3: Überwachte Klassifikation

Zeichne Trainingspolygone für Baum, Gras, Dach und Straße. Lass dann einen Klassifikator jedes Pixel beschriften und polygonisiere die Baumklasse. dzetsaka würde ich heute installieren. Es steht unter GPL, hat die Version 5.0.11, läuft unter QGIS 3.0 bis 4.99 und bringt elf Klassifikatoren einschließlich Random Forest und SVM mit.

Das Semi-Automatic Classification Plugin ist bekannter und verarbeitet auch Bandgruppen und Vorverarbeitung. Prüfe aber zuerst die Version. Release 9.0.4 benötigt QGIS 3.99, also die QGIS-4-Reihe. Unter QGIS 3.44 erhältst du 8.5.0 vom November 2024.

Verwende die Methode, wenn: Baumkronen eine von mehreren Klassen sind, die du aus derselben Szene benötigst.

Überspringe sie, wenn: du nur Bäume möchtest. Trainingsdaten kosten mehr Zeit als Methode 1.

Methode 4: Ein offener Baumkronendatensatz

Vielleicht hat jemand dein Gebiet bereits kartiert.

Copernicus Tree Cover Density loaded in QGIS over a European city, shaded from pale to dark green by percentage of tree cover.
Copernicus Tree Cover Density streamed into QGIS as a WMTS layer. Free, finished, and the wrong tool the moment you need this year's imagery.

Vier Datensätze solltest du kennen. Die Meta and WRI canopy height map ist global, seit März 2026 in Version 2 verfügbar, hat 1,2-m-Pixel und einen mittleren absoluten Fehler von 3,0 m gegenüber luftgestütztem LiDAR. Die Karte der ETH Zürich hat für 2020 eine Auflösung von 10 m, basiert auf Sentinel-2 und GEDI und steht unter CC BY 4.0.

Die beiden anderen sind regional oder historisch. Der Copernicus Tree Cover Density-Layer deckt Europa mit 10 m ab, jährlich von 2018 bis 2024. Für den Download benötigst du ein EU Login. Hansen Global Forest Change hat 30 m und beginnt im Jahr 2000. Das ist der richtige Datensatz für Veränderungen über die Zeit.

Städte veröffentlichen eigene Daten. Paris stellt 219.432 Bäume als Punkte bereit, Melbourne 57.980 Baumkronenpolygone für 2021. Beide sind über eine GeoJSON-URL verfügbar, die du in QGIS einfügst.

Alle vier globalen Raster unterstützen Range Requests. Streame deshalb eine Kachel mit /vsicurl/, statt sie herunterzuladen. Copernicus stellt WMTS unter https://land.copernicus.eu/cdse/tcd_europe_10m_yearly bereit. Dort setzt du das Jahr von Hand. Der Dienst weist jedes Datum bis 1984 aus, aber fast keines dieser Daten enthält tatsächlich Werte.

Verwende die Methode, wenn: das Gebiet groß ist und das Aufnahmedatum nicht deines sein muss.

Überspringe sie, wenn: du das Gebiet letzten Monat überflogen hast oder Baumkronen benötigst. Die meisten dieser Datensätze sind prozentuale Raster und keine zählbaren Objekte.

Methode 5: Ein lokales Segmentierungsmodell

Deepness, Geo-SAM und samgeo führen Segmentierungsmodelle auf deinem eigenen Rechner aus. Nichts verlässt ihn, und nichts wird abgerechnet.

Verwende die Methode, wenn: die Bilder deinen Rechner nicht verlassen dürfen.

Überspringe sie, wenn: du keine NVIDIA-Karte oder keine Lust hast, ein Modell zu finden, Gewichte anzufordern und eine Python-Umgebung aufzusetzen.

Methode 6: Ein Cloud-Segmentierungsmodell

Ein Segmentierungsmodell hat gelernt, wie eine Baumkrone aussieht. Deshalb teilt es einen Bestand in zählbare Objekte, während ein Schwellenwert nur eine zusammenhängende Fläche liefert. Wir stellen eines davon vor, AI Segmentation. Dieser Abschnitt behandelt unser eigenes Tool.

Zeichne eine Zone über den bereits in QGIS geöffneten Bildern und gib ein Wort ein. Die Polygone landen in deinem Projekt-CRS. Jedes enthält eine Fläche und einen Konfidenzwert. Gib tree für ein Polygon pro Baumkrone ein und tree canopy für die Bedeckung als Oberfläche.

A Dutch village from the air where every tree crown, in gardens and along the streets, is filled with its own colour as a separate polygon.
893 crowns from one run over a Dutch village, each its own polygon. Counted off the layer, not estimated.

Am besten für: ein Polygon pro Baumkrone aus RGB-Bildern auf einem Rechner ohne GPU.

Preis: kostenlos für 3 km² Bodenfläche pro Monat plus 50 Cloud-Semi-Auto-Objekte, ohne Karte. Pro kostet 39 Euro pro Monat ohne Mehrwertsteuer und umfasst 200 km² sowie 500 Objekte.

Läuft unter: QGIS 3.22 und neuer, Windows, macOS oder Linux. Das Modell läuft auf unseren Servern in der Europäischen Union.

Installation: Plugin-Manager, dann eine E-Mail zur Anmeldung. Keine Pakete, keine Gewichte.

Hier liegt die Stärke: Das einfache Wort liefert gute Ergebnisse. Über 90 Tage realer Läufe blieb tree bei 10,5 Prozent der Kacheln leer, gegenüber 47,3 Prozent bei orchard über 716 Kacheln. Deshalb lenkt das plugin das zweite Wort auf das erste um, bevor du etwas ausgibst.

Hier liegen die Grenzen: In einem geschlossenen Bestand gibt es keine Kronengrenzen, die gefunden werden können. Ein tree-Lauf liefert deshalb eine zusammenhängende Fläche statt eines Polygons pro Stamm. Verwende dort tree canopy und akzeptiere Bedeckung. Beide Cloud-Modi senden Bilder an unsere Server. Nur Semi-Auto auf deinem eigenen Rechner tut das nicht.

Die sechs Methoden im Vergleich

Was du benötigstMethode
Bedeckung aus deinen eigenen multispektralen BildernMethode 1
Baumkronenhöhe oder eine Trennung von Bäumen und GrasMethode 2
Baumkronen als eine Klasse unter mehrerenMethode 3
Ein großes Gebiet, schnell und kostenlosMethode 4
Baumkronen, ohne dass etwas den Rechner verlässtMethode 5
Baumkronen aus RGB-Bildern ohne GPUMethode 6

Was du dir merken solltest

Entscheide dich für Bedeckung oder Baumkronen, bevor du eine Methode auswählst. Das ist eine Frage deines Ergebnisses und nicht deiner Bilder.

Höhe schlägt Farbe, wann immer du sie bekommen kannst. Ein LiDAR-Baumkronenhöhenmodell gewinnt deshalb überall dort, wo LiDAR vorhanden ist.

NDVI liest eine Rasenfläche, eine Nutzpflanze und eine Eiche als dasselbe. Ein Schwellenwert allein liefert dir deshalb niemals einzelne Bäume.

In einem geschlossenen Bestand gibt es keine Kronengrenzen, die gefunden werden können. Jede Methode auf dieser Seite liefert dort Bedeckung, keine eine Stammzahl.

Für einen europaweiten Bedeckungsprozentsatz ist der Copernicus-Layer kostenlos und bereits fertig. Ein Modell über dieses Gebiet laufen zu lassen, würde dieselbe Antwort doppelt bezahlen.

Try it free in QGIS, no card needed

Häufige Fragen

Kann QGIS Baumkronen ohne ein plugin kartieren?

Ja, mit den Methoden 1, 2 und 4, also mit QGIS-Kernfunktionen und einem Download. Du erhältst Bedeckung als Polygone, niemals einzelne Baumkronen.

Ein Polygon pro Baum oder eines für die gesamte Baumkronenbedeckung?

Die Schwellenwertbildung mit NDVI oder einem Höhenmodell liefert dir Bedeckung. Nur ein Segmentierungsmodell teilt einen Bestand in zählbare Baumkronen. Bei Methode 6 entscheidet das eingegebene Wort, welche der beiden Varianten du erhältst.

Wie erhalte ich einen Prozentsatz der Baumkronenbedeckung?

Jedes Polygon enthält seine eigene Fläche. Summiere deshalb die Flächenspalte und teile sie durch die gemessene Fläche. Das ist eine einzige Feldberechnung auf Geometrien, die du öffnen und prüfen kannst.

Was ist genauer, NDVI oder ein LiDAR-Höhenmodell?

Das Höhenmodell, und zwar mit deutlichem Abstand. NDVI liest eine Rasenfläche und eine Eiche als dasselbe, während ein Baumkronenhöhenmodell sie um mehrere Meter trennt.

Ist irgendetwas davon kostenlos?

Die Methoden 1 bis 5 kosten außer deinen eigenen Daten nichts. Für Methode 5 benötigst du zusätzlich eine Grafikkarte. Methode 6 bietet monatlich 3 km² kostenlos, danach kostet es 39 Euro pro Monat ohne Mehrwertsteuer.

Die raster-to-vector-Anleitung führt durch die Polygonisierungs- und Bereinigungsschritte, mit denen jede Methode hier endet. Der Beitrag zu SAM in QGIS vergleicht die plugins, die Segmentierungsmodelle ausführen. Der QGIS-AI-Hub verbindet beide.