i.segmentgrass – Online in der Cloud

Dies ist der Befehl i.segmentgrass, der beim kostenlosen Hosting-Anbieter OnWorks mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, dem Windows-Online-Emulator oder dem MAC OS-Online-Emulator ausgeführt werden kann

PROGRAMM:

NAME/FUNKTION


i.segment - Identifiziert Segmente (Objekte) aus Bilddaten.

SCHLÜSSELWÖRTER


Bilder, Segmentierung, Klassifizierung, Objekterkennung

ZUSAMMENFASSUNG


i.segment
i.segment --help
i.segment [-dw] Gruppe=Name Möglichkeiten für das Ausgangssignal:=Name Schwelle=schweben [Methode=Schnur]
[Ähnlichkeit=Schnur] [Mindestgröße=ganze Zahl] [Erinnerung=ganze Zahl] [Iterationen=ganze Zahl]
[Saatgut=Name] [Beschränkt=Name] [Güte=Name] [--überschreiben] [--Hilfe] [--ausführlich]
[--ruhig] [--ui]

Flaggen:
-d
Verwenden Sie 8 Nachbarn (3x3-Nachbarschaft) anstelle der standardmäßigen 4 Nachbarn für jedes Pixel

-w
Gewichtete Eingabe, führt nicht die Standardskalierung der Eingabe-Rasterkarten durch

--überschreiben
Ausgabedateien erlauben, vorhandene Dateien zu überschreiben

--help
Nutzungszusammenfassung drucken

- ausführlich
Ausführliche Modulausgabe

--ruhig
Leiser Modulausgang

--ui
Starten des GUI-Dialogs erzwingen

Parameter:
Gruppe=Name [erforderlich]
Name der Eingabebildgruppe

Möglichkeiten für das Ausgangssignal:=Name [erforderlich]
Name für Ausgabe-Rasterkarte

Schwelle=schweben [erforderlich]
Differenzschwelle zwischen 0 und 1
Schwellenwert = 0 führt nur identische Segmente zusammen; Schwellenwert = 1 führt alle zusammen

Methode=Schnur
Segmentierungsmethode
Option: region_growing
Standard: region_growing

Ähnlichkeit=Schnur
Methode zur Ähnlichkeitsberechnung
Option: euklidisch, Manhattan
Standard: euklidisch

Mindestgröße=ganze Zahl
Mindestanzahl von Zellen in einem Segment
Im letzten Schritt werden kleine Segmente mit ihrem besten Nachbarn zusammengeführt
Option: 1 100000
Standard: 1

Erinnerung=ganze Zahl
Speicher in MB
Standard: 300

Iterationen=ganze Zahl
Maximale Anzahl von Iterationen
Standard: 20

Saatgut=Name
Name für die Eingabe-Rasterkarte mit Start-Seeds

Beschränkt=Name
Name der Eingabe-Rasterkarte mit Begrenzung/Einschränkung
Es müssen ganzzahlige Werte sein. Jeder Bereich wird unabhängig von den anderen segmentiert

Güte=Name
Name für die Ausgabekarte zur Schätzung der Anpassungsgüte

BESCHREIBUNG


Bei der Bildsegmentierung oder Objekterkennung werden ähnliche Pixel gruppiert
einzigartige Segmente, auch als Objekte bezeichnet. Grenz- und bereichsbasierte Algorithmen sind
In der Literatur wird derzeit ein Algorithmus zum Vergrößern und Zusammenführen von Regionen beschrieben
umgesetzt. Jedes während des Segmentierungsprozesses gefundene Objekt erhält eine eindeutige ID und ist
eine Sammlung zusammenhängender Pixel, die bestimmte Kriterien erfüllen. Beachten Sie den Kontrast zum Bild
Klassifizierung, bei der alle einander ähnlichen Pixel derselben Klasse zugeordnet werden und
müssen nicht zusammenhängend sein. Die Ergebnisse der Bildsegmentierung können für sich genommen nützlich sein,
oder als Vorverarbeitungsschritt für die Bildklassifizierung verwendet. Die Segmentierungsvorverarbeitung
Schritt kann Lärm reduzieren und die Klassifizierung beschleunigen.

ANMERKUNG


Region persönlichem Wachstum und Vereinigung
Dieser Segmentierungsalgorithmus untersucht nacheinander alle aktuellen Segmente in der Rasterkarte.
Die Ähnlichkeit zwischen dem aktuellen Segment und jedem seiner Nachbarn wird berechnet
nach der angegebenen Abstandsformel. Segmente werden zusammengeführt, wenn sie mehrere erfüllen
Kriterien, darunter:

1 Das Paar ist einander am ähnlichsten (der Ähnlichkeitsabstand beträgt
kleiner als zu jedem anderen Nachbarn) und

2 Die Ähnlichkeit muss niedriger als der Eingabeschwellenwert sein. Der Vorgang wird wiederholt
bis während eines vollständigen Durchgangs keine Zusammenführungen mehr vorgenommen werden.

Ähnlichkeit und Schwelle
Die Ähnlichkeit zwischen Segmenten und nicht zusammengeführten Objekten wird verwendet, um zu bestimmen, um welche Objekte es sich handelt
werden zusammengeführt. Kleinere Distanzwerte weisen auf eine engere Übereinstimmung mit einem Ähnlichkeitswert von hin
Null für identische Pixel.

Während der normalen Verarbeitung sind Zusammenführungen nur zulässig, wenn die Ähnlichkeit zwischen zwei Segmenten besteht
kleiner als der angegebene Schwellenwert ist. Beim letzten Durchgang jedoch mindestens
Eine Segmentgröße von 2 oder mehr wird mit angegeben Mindestgröße Parameter, Segmente mit einem kleineren
Die Pixelanzahl wird mit der ihres ähnlichsten Nachbarn zusammengeführt, auch wenn die Ähnlichkeit vorhanden ist
größer als der Schwellenwert.

Das Schwelle muss größer als 0.0 und kleiner als 1.0 sein. Ein Schwellenwert von 0 würde dies ermöglichen
Es werden nur Pixel mit identischen Werten zusammengeführt, während ein Schwellenwert von 1 alles zulassen würde
zusammengeführt werden. Erste empirische Untersuchungen deuten auf Schwellenwerte von 0.01 bis 0.05 hin
vernünftige Werte zu Beginn. Es wird empfohlen, mit einem niedrigen Wert, z. B. 0.01, zu beginnen
Führen Sie dann eine hierarchische Segmentierung durch, indem Sie die Ausgabe des letzten Laufs als verwenden Saatgut für die
nächster Lauf.

Berechnung Formeln
Sowohl die euklidische als auch die Manhattan-Entfernung verwenden unter Berücksichtigung jedes Rasters die Normaldefinition
in der Bildgruppe als Dimension. Zukünftig soll auch die Entfernungsberechnung erfolgen
Berücksichtigung der Formmerkmale der Segmente. Die normalen Abstände betragen dann
multipliziert mit dem eingegebenen radiometrischen Gewicht. Als nächstes wird ein zusätzlicher Beitrag hinzugefügt:
(1-Radiogewicht) * {Glätte * Glättegewicht + Kompaktheit * (1-Glättegewicht)},
wobei Kompaktheit = Umfangslänge / Quadratfläche (Fläche) und Glätte = Umfangslänge /
Begrenzungsrahmen. Die Umfangslänge wird als Anzahl der Pixel an den Seiten des Segments geschätzt
hat.

Saat
Die Seeds-Karte kann verwendet werden, um entweder Seed-Pixel (zufällige oder ausgewählte Punkte) bereitzustellen
der den Segmentierungsprozess starten soll) oder Seed-Segmente. Wenn die Samen das Ergebnis sind
Bei einer vorherigen Segmentierung mit niedrigerem Schwellenwert kann eine hierarchische Segmentierung durchgeführt werden.
Die unterschiedlichen Ansätze werden vom Programm automatisch erkannt: eventuell vorhandene Pixel
Identische Startwerte und zusammenhängende Elemente erhalten eine eindeutige Segment-ID.

Es wird erwartet, dass die Mindestgröße wird auf 1 gesetzt, wenn eine Seed-Map verwendet wird, aber das Programm
ermöglicht die Verwendung anderer Werte. Wenn beide Optionen verwendet werden, ist dies die letzte Iteration
Ignoriert den Schwellenwert, ignoriert auch die Seed-Map und erzwingt Zusammenführungen für alle Pixel (nicht).
nur Segmente, die aus den Samen gewachsen/verschmolzen sind).

Maximal Anzahl of beginnend Segmente
Beim Region-Growing-Algorithmus ohne Start-Seeds wird jedes Pixel sequentiell ausgeführt
nummeriert. Das aktuelle Limit bei CELL-Speicher liegt bei 2 Milliarden Startsegment-IDs. Wenn die
Wenn die anfängliche Karte eine größere Anzahl von Nicht-Null-Pixeln aufweist, gibt es zwei Problemumgehungen:

1 Verwenden Sie Startpixel. (Maximal 2 Milliarden Pixel können positiv gekennzeichnet werden
ganze Zahlen.)

2 Verwenden Sie Start-Saatsegmente. (Durch Erstklassifizierung oder andere Methoden.)

Boundary Einschränkungen
Grenzbeschränkungen begrenzen die Nachbarschaft von Pixeln und Segmenten. Jeder einzelne Wert
anwesend in der Beschränkt Raster werden als MASKE betrachtet. Daher keine Segmente im Finale
Segmentierte Karten überschreiten eine Grenze, auch wenn ihre Spektraldaten sehr ähnlich sind.

Mindestens Segment Größe
Um den Einfluss von Salz und Pfeffer zu reduzieren, a Mindestgröße größer als 1 fügt einen weiteren hinzu
in die Verarbeitung übergehen. Während des letzten Durchgangs wird der Schwellenwert für alle Segmente ignoriert
kleiner als die eingestellte Größe, wodurch sehr kleine Segmente gezwungen werden, mit den meisten zu verschmelzen
ähnlicher Nachbar.

Güte of Fit
Das Güte Die Anpassung für jedes Pixel wird als 1 berechnet – der Abstand des Pixels zum
Objekt, zu dem es gehört. Der Abstand wird mit dem ausgewählten berechnet Ähnlichkeit Methode. EIN
Der Wert 1 bedeutet identische Werte, perfekte Anpassung, und der Wert 0 bedeutet maximal möglich
Abstand, schlechteste Passform.

Beispiele:


Segmentierung of RGB Orthofoto
In diesem Beispiel wird das im NC-Beispieldatensatz enthaltene Orthofoto verwendet. Richten Sie eine ein
Bildgruppe:
i.group group=ortho_group input=ortho_2001_t792_1m@PERMANENT

Stellen Sie den Bereich auf einen kleineren Testbereich ein (Auflösung stammt aus dem eingegebenen Orthofoto).
g.region -p raster=ortho_2001_t792_1m n=220446 s=220075 e=639151 w=638592
Probieren Sie einen niedrigen Schwellenwert aus und überprüfen Sie die Ergebnisse.
i.segment group=ortho_group Ausgabe=ortho_segs_l1 Schwellenwert=0.02

Eine Sichtprüfung zeigt, dass dies zu zu vielen Segmenten führt. Erhöhung der
Schwellenwert, wobei die vorherigen Ergebnisse als Startwerte verwendet werden und eine Mindestgröße von 2 festgelegt wird:
i.segment group=ortho_group Ausgabe=ortho_segs_l2 Schwellenwert=0.05 Samen=ortho_segs_l1 min=2
i.segment-Gruppe=ortho_group Ausgabe=ortho_segs_l3 Schwellenwert=0.1 Samen=ortho_segs_l2
i.segment-Gruppe=ortho_group Ausgabe=ortho_segs_l4 Schwellenwert=0.2 Samen=ortho_segs_l3
i.segment-Gruppe=ortho_group Ausgabe=ortho_segs_l5 Schwellenwert=0.3 Samen=ortho_segs_l4

Die Ausgabe ortho_segs_l4 mit Schwelle=0.2 hat immer noch zu viele Segmente, aber die Ausgabe
mit Schwelle=0.3 hat zu wenige Segmente. Ein Schwellenwert von 0.25 scheint gut zu sein
Auswahl. Es gibt auch etwas Rauschen im Bild. Als nächstes zwingen wir alle Segmente kleiner als
10 Pixel werden mit ihrem ähnlichsten Nachbarn zusammengeführt (auch wenn sie weniger ähnlich sind).
als von unserem Schwellenwert gefordert):

Stellen Sie die Region so ein, dass sie mit der/den gesamten Karte(n) in der Gruppe übereinstimmt.
g.region -p raster=ortho_2001_t792_1m@PERMANENT

Führen Sie i.segment auf der vollständigen Karte:
i.segment group=ortho_group Ausgabe=ortho_segs_final Schwellenwert=0.25 min=10

Die Verarbeitung des gesamten Orthobildes mit fast 10 Millionen Pixeln dauerte etwa 450-mal länger
dann für den letzten Lauf.

Segmentierung of panchromatisch Kanal
In diesem Beispiel wird der panchromatische Kanal der im Norden enthaltenen Landsat7-Szene verwendet
Carolina-Beispieldatensatz:
# Gruppe mit Einzelkanal erstellen
i.group group=singleband input=lsat7_2002_80
# Rechenregion auf Landsat7-PAN-Band setzen
g.region raster=lsat7_2002_80 -p
# Segmentierung mit minsize=5 durchführen
i.segment-Gruppe=Einzelband-Schwellenwert=0.05, Mindestgröße=5
output=lsat7_2002_80_segmented_min5 goodness=lsat7_2002_80_goodness_min5
# Segmentierung mit minsize=100 durchführen
i.segment-Gruppe=Einzelband-Schwellenwert=0.05, Mindestgröße=100
output=lsat7_2002_80_segmented_min100 goodness=lsat7_2002_80_goodness_min100

Ursprünglicher panchromatischer Kanal der Landsat7-Szene

Segmentierter panchromatischer Kanal, Mindestgröße=5

Segmentierter panchromatischer Kanal, Mindestgröße=100

ALLES


Funktionalität
· Weitere Prüfung der Formeigenschaften (Glätte, Kompaktheit), ggf
sieht gut aus, sollte hinzugefügt werden. (in Fortschritt)

· Malahanobis-Distanz für die Ähnlichkeitsberechnung.

Verwenden Sie die of Segmentierung Ergebnisse
· Verbessern Sie die optionale Ausgabe dieses Moduls, oder noch besser, fügen Sie ein Modul für hinzu
i.segment.metrics.

· Bereitstellung von Updates für i.maxlik um sicherzustellen, dass die Segmentierungsausgabe als verwendet werden kann
Eingabe für die vorhandene Klassifizierungsfunktionalität.

· Integration/Workflow für r.fuzzy (Hinzufügen Auf).

Schnelligkeit
· Siehe create_isegs.c

REFERENZEN


Dieses Projekt wurde erstmals während GSoC 2012 entwickelt. Projektdokumentation, Bild
Segmentierungsreferenzen und andere Informationen finden Sie im Projekt-Wiki.

Informationen zur Klassifizierung in GRASS finden Sie im Wiki.

Nutzen Sie i.segmentgrass online über die Dienste von onworks.net



Neueste Linux- und Windows-Online-Programme