Tutorium ILMSImage

Aus ILMS-Wiki
Version vom 10. Dezember 2011, 12:21 Uhr von DanielS (Diskussion | Beiträge)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

ILMSImage-Plugin für QuantumGIS

Einleitung

Das im Folgenden beschriebene Plugin stellt Funktionen der Bildanalysesoftware ILMSImage im Rahmen der Benutzeroberfläche von QuantumGIS zur Verfügung. ILMSImage wurde entwickelt, um umfangreiche Bilddatenmengen aus der Fernerkundung effektiv und zielgerichtet prozessieren und thematisch auswerten zu können. Dabei setzt das Programm auf dem Konzept der objektbasierten Bildanalyse auf, d.h. die Bildelemente (Pixel) eines Datensatzes werden nicht separat betrachtet, sondern im Kontext benachbarter, spektral ähnlicher Elemente untersucht. Dieses Konzept manifestiert sich in der typischen ILMSImage-Prozesskette, die i.d.R. aus drei Schritten besteht:

  1. Zunächst erfolgt die Analyse einzelner Pixel auf der Basis von spektraler Ähnlichkeit und räumlicher Nähe. Das resultiert in der Zusammenfassung benachbarter Bildelemente mit ähnlichen spektralen Eigenschaften zu größeren Gruppen. Dieser Vorgang wird im Kontext der objektbasierten Bildanalyse häufig als Segmentierung, im Zusammenhang mit ILMSImage als Zellbildung bezeichnet.
  2. In einem zweiten Arbeitsschritt erfolgt die Ableitung von zellbasierten Attributen bzw. Merkmalen. Diese Attribute lassen sich entweder aus der Geometrie der im ersten Arbeitsschritt erzeugten Zellen oder aus deren Verknüpfung mit den originalen Bilddaten bzw. zusätzlichen Datenquellen erzeugen. Die weitere Verarbeitung erfolgt dann auf der Grundlage der erzeugten Zellen und der daraus abgeleiteten Attribute, die Originaldaten bleiben im weiteren Verlauf der Prozessierung unberücksichtigt.
  3. Der dritte Schritt umfasst die eigentliche thematische Klassifikation. Dabei setzt ILMSImage auf einem zweistufigen Konzept auf, welches eine unüberwachte Klassifikation der Zellen und ihrer Attribute mit einer überwachten Klassifikation anhand von Referenzdaten verknüpft. Entsprechend des vom Nutzer bereitgestellten Klassifikationsschemas erfolgt dann die Ausweisung thematischer Flächen innerhalb des Untersuchungsgebiets.

Installation

Vorbemerkungen

Zur erfolgreichen Verwendung der ILMSImage-Funktionen innerhalb der Oberfläche von QuantumGIS werden folgende Programmkomponenten bzw. Bibliotheken benötigt:

  1. eine Installation der freien Desktop-GIS-Software QuantumGIS (ab Version 1.5),
  2. ein Python-Interpreter (empfohlene Version: 2.5.2),
  3. die Kommandozeilenwerkzeuge der Geospatial Data Abstraction Library (GDAL, ab Version 1.7),
  4. eine Kommandozeilenversion von ILMSImage (xILMSImage, empfohlene Version: 2010-11-08),
  5. der Python-Quellcode des QuantumGIS-GUI-Plugins.

Das Projekt OSGeo4W der Open Source Geospatial Foundation (OSGeo) stellt ein umfangreiches Bündel von quelloffenen Programmen und Bibliotheken zur Bearbeitung von räumlichen Daten zur Verfügung, welches zur einfachen Installation und eventuellen späteren Aktualisierung der drei erstgenannten Bestandteile verwendet werden kann. Daher wird – obwohl eine separate Einrichtung von QuantumGIS, Python und GDAL grundsätzlich möglich ist – in dieser Anleitung die Installation mit Hilfe dieses Pakets beschrieben. Die beiden letzten Komponenten sind im Rahmen der wissenschaftlichen Kooperation über den Lehrstuhl für Geoinformatik der Friedrich-Schiller Universität Jena erhältlich.

Vorbereitungen und Anforderungen

Der Download des OSGeo4W-Installationspakets erfolgt über die Webseite des Projekts. In unregelmäßigen Abständen erfolgt eine Aktualisierung dieses Pakets, die außerdem in der Regel nicht auf der Webseite angekündigt wird. Um auf dem neuesten Stand zu bleiben ist es daher ratsam, das Installationspaket von Zeit zu Zeit erneut herunterzuladen.

Für eine Installation des Plugins sind etwa 200 bis 300 Megabyte Festplattenplatz zu veranschlagen. Dazu kommt der notwendige Speicherplatz für zu bearbeitende (Bild-)Daten sowie die entsprechenden Zwischen- und Endprodukte.

Beschreibung der Installation

Die Installation des Plugins erfolgt in der nachstehenden Reihenfolge:

  1. Installation und Einrichtung von QuantumGIS, Python und GDAL durch Anwendung des OSGeo4W-Pakets
  2. Installation und Aktivierung des GUI-Plugins
  3. Installation der ILMSImage-Kommandozeilenversion
  4. Abschließende Einrichtung des GUI-Plugins

Installation und Einrichtung von QuantumGIS, Python und GDAL

Zur Installation und Einrichtung der Komponenten QuantumGIS, Python und GDAL kann das heruntergeladene OSGeo4W-Paket verwendet werden. Dieses basiert auf der Installationssoftware für das Cygwin-Projekt, d.h. die bereitstehenden Programme sind in einer Baumstruktur dargestellt. Wird eines der Programmpakete zur Installation ausgewählt, erfolgt die automatische Selektion der entsprechenden Pakete, die zu dessen Ausführung zwingend vorhanden sein müssen. Dadurch ist es möglich, eventuelle Abhängigkeiten zwischen verschiedenen Programmen oder Bibliotheken unter Kontrolle zu behalten.

In der Folge wird die Installation Schritt für Schritt beschrieben.

Nach Doppelklick auf die ausführbare Datei erscheint das Startfenster des Installationspakets, hier wird die Fortgeschrittene Installation ausgewählt:

Ilms img qgis install 01.png


Bei vorhandener Verbindung zum Internet kann die entsprechende Option als Download-Quelle ausgewählt werden:

Ilms img qgis install 02.png


Auf dem nächsten Fenster erfolgt die Auswahl des Installationsverzeichnisses. Es wird dringend empfohlen, die vorgeschlagene Alternative (standardmäßig C:\OSGeo4W) beizubehalten, da eine Verschiebung der Installation nur unter beträchtlichem Anpassungsaufwand möglich ist. Durch Auswahl der Option Alle Benutzer erhalten alle Nutzer der verwendeten Windows-Installation Zugriff auf die Verknüpfungen zu den installierten Programmen:

Ilms img qgis install 03.png


Nach Auswahl des Installationsverzeichnisses erfolgt die Selektion eines Paketverzeichnisses. Dabei handelt es sich um einen Ordner, der als Sicherungsort für die herunterzuladenden und noch nicht installierten Programmpakete dient. Für die spätere Ausführung werden diese Pakete nicht benötigt, d.h. sie können auf einer nicht permanent angeschlossenen externen Platte oder in einem Netzwerkordner abgelegt werden. Es ist zu beachten, dass mittels des Paketverzeichnisses auch eine erneute Installation des Gesamtsystems ohne Anschluss zum Internet möglich ist. Dazu wird im Zuge einer späteren Ausführung des Installationspakets bei der Auswahl der Datenquelle die Option Aus einem lokalen Verzeichnis installieren gewählt und der entsprechende Pfad selektiert:

Ilms img qgis install 04.png


In der Folge ist die Auswahl der Verbindungsart zum Internet möglich (ohne Abbildung). Nach dem Download der vollständigen Paketliste vom Server der OSGeo-Initiative erscheint die bereits erwähnte Baumansicht aller installierbaren Programme und Bibliotheken. Diese sind auf die Kategorien Commandline Utilities, Desktop, Libs, Web und Web Applications verteilt. Um nun die aktuelle Version von QuantumGIS zu installieren ist es ausreichend, das entsprechende Programmpaket in der Kategorie Desktop zu lokalisieren und durch einen Klick auf das Symbol der sich verfolgenden Pfeile zur Installation auszuwählen. Die erfolgreiche Auswahl lässt sich über die Versionsnummer verifizieren, die nach dem Klick an der Stelle des vorherigen Skip zu finden sein sollte. Der Komfort des OSGeo4W-Installationspakets besteht darin, dass durch Auswahl des Programmpakets für QuantumGIS alle zur Ausführung der installierten Software benötigten Zusatzprogramme und Bibliotheken ebenfalls für die Installation vorgemerkt wurden. Das beinhaltet im vorgestellten Fall auch einen Python-Interpreter und die GDAL-Kommandozeilenwerkzeuge. Durch einen Klick auf Weiter wird das Herunterladen und Installieren aller markierten Programmpakete und Bibliotheken initiiert. Dies kann – je nach Größe und Anzahl der gewählten Pakete sowie der Verbindungsgeschwindigkeit – einige Zeit in Anspruch nehmen.

Ilms img qgis install 05.png


Nach Abschluss der Installation ist es möglich, Desktopicons und eine Verknüpfung im Startmenü einzurichten, um die schnelle Erreichbarkeit der installierten Software zu gewährleisten (ohne Abbildung). Als Ergebnis dieses ersten Installationsschritts erscheint auf dem Desktop eine Verknüpfung zur eben installierten Version von QuantumGIS, welche sofort zum Start des Programms verwendet werden kann:

Ilms img qgis install 06.png

Installation und Aktivierung des GUI-Plugins

Über eine Programmschnittstelle erlaubt QuantumGIS die Erzeugung und Integration von Plugins, welche GIS- und weitere Funktionen in angepasster Form zur Verfügung stellen. Plugins lassen sich in C++ oder Python implementieren – das vorliegende ILMSImage-Plugin ist in der letzteren Sprache geschrieben – und werden mit der Hilfe von Qt bzw. PyQt, zweier plattformübergreifender Klassenbibliotheken zur Programmierung graphischer Benutzeroberflächen, erstellt.

Um einem Benutzer von QuantumGIS die Verwendung des ILMSImage-Plugins zu ermöglichen, muss das vorliegende Verzeichnis mit den Quellcodedateien in die Ordnerstruktur der GIS-Software kopiert werden. Vorausgesetzt, der vom Setuppaket vorgeschlagene Installationsordner wurde nicht verändert, ist das Ziel dieser Integration das folgende Verzeichnis: C:\OSGeo4W\apps\qgis\python\plugins

Nach dem Kopieren sollte vorstehendes Verzeichnis ein Unterverzeichnis mit dem Namen ILMSRaster enthalten, das seinerseits die gesammelten Quellcodedateien beinhaltet. Dabei sollte auf die richtige Schreibweise (auch in Groß- und Kleinschreibung) des Namens geachtet werden, da auf diesen intern zurückgegriffen wird.

Auf diese Installationsprozedur erfolgt die Aktivierung des Plugins über die QuantumGIS-Oberfläche. Zu diesem Zweck erfolgt nach Programmstart der Wechsel in das Menü Erweiterungen zu dem dort zu findenden Unterpunkt Erweiterungen verwalten:

Ilms img qgis install 07.png


Das Fenster des daraufhin erscheinenden QuantumGIS-Erweiterungsmanagers enthält bereits eine Reihe von Plugins, welche standardmäßig zur Verfügung stehen und deren Quellcode – im Falle ihrer Implementierung in Python – sich ebenfalls im bereits beschriebenen Verzeichnis befindet. Beim Eintrag namens ILMSRaster/ILMSImage plugin for QuantumGIS handelt es sich um das ILMSImage-Plugin:

Ilms img qgis install 08.png


Nach der Aktivierung der Kontrollbox und dem Beenden des Erweiterungsmanagers steht das ILMSImage-Plugin über den Menüpunkt Erweiterungen sowie die entsprechende Werkzeugleiste zur weiteren Verwendung bereit:

Ilms img qgis install 09.png


Durch einen Klick auf den Unterpunkt ILMSRaster bzw. das Icon in der Werkzeugleiste erscheint das Plugin im Rahmen eines an die Arbeitsfläche angedockten Panels am rechten Rand der QuantumGISBenutzeroberfläche:

Ilms img qgis install 10.png

Installation der ILMSImage-Kommandozeilenversion

Bei der Kommandozeilenversion von ILMSImage handelt es sich um eine speziell erzeugte ausführbare Version des Programms, die es erlaubt, die Funktionen der Software über einen Kommandozeileninterpreter zu steuern und auszuführen. Die Interaktion mit dem Nutzer erfolgt dabei über die Ausgaben auf der Kommandozeile oder im Rahmen der Einbindung des Programms in eine externe Anwendung, wie im Fall des vorliegenden Plugins für QuantumGIS. Die Kommandozeilenversion von ILMSImage wird in der Regel als xILMSImage bezeichnet, um sie von einer ebenfalls existierenden Version des Programms mit Benutzeroberfläche unterscheiden zu können.

Um ILMSImage über das vorliegende Plugin ansprechen zu können, sollte sich die ausführbare Datei der Kommandozeilenversion auf dem Rechner befinden, auf dem auch QuantumGIS und die entsprechende Erweiterung installiert wurden. Außerdem muss die Konfigurationsdatei des Plugins angepasst werden. Diese Datei trägt den Namen ilmsraster.cfg und befindet sich im Wurzelverzeichnis des Plugins, gemäß oben beschriebener Installation also im Verzeichnis C:\OSGeo4W\apps\qgis\python\plugins\ILMSRaster.

Bei der Datei handelt es sich um eine Textdatei, welche die wichtigsten Angaben zum Plugin sowie zum letzten bearbeiteten Projekt enthält. Sie ist in unterschiedliche Sektionen gegliedert, die jeweils mehrere Konfigurationseinträge zusammenfassen. Die Sektion ILMSImage enthält alle Informationen zum eigentlichen Plugin. Hinter dem Eintrag ilms_img_bin sollte der Pfad zur Kommandozeilenversion von ILMSImage eingetragen werden, dann stehen dem Plugin die entsprechenden Funktionen zur Verfügung:

ilms_img_bin = C:\ilms_img\bin\xILMSImage.exe

Im angeführten Beispiel befindet sich die Kommandozeilenversion entsprechend im Verzeichnis c:\ilms_img\bin und trägt den Namen xILMSImage.exe.

Abschließende Einrichtung des GUI-Plugins

Um die Installation des ILMSImage-Plugins abzuschließen, ist es schließlich notwendig, diesem den Installationsort der GDAL-Kommandozeilenwerkzeuge bekannt zu machen. Das ist ebenfalls über die bereits beschriebene Konfigurationsdatei ilmsraster.cfg möglich. In der Sektion ilmsimage befindet sich ein Eintrag mit dem Namen gdal_bin_dir. Hinter diesem erfolgt die Angabe des entsprechenden Verzeichnisses. Im Falle mit den Vorgaben durchgeführten Installation sollte der folgende Eintrag den gewünschten Zweck erfüllen:

gdal_bin_dir = C:\OSGeo4W\bin

Es sollte beachtet werden, dass es nach Änderungen an der Konfigurationsdatei üblicherweise notwendig ist, QuantumGIS neu zu starten, um diese wirksam werden zu lassen.

Nach Absolvierung der dargestellten Installationsschritte sollte einer Ausführung des ILMSImage-Plugins nichts mehr im Wege stehen.

Aktualisierung einer bestehenden Installation

Eine bestehende Installation der ILMSImage-Plugins lässt sich durch Aktualisierung der einzelnen Programmkomponenten auf dem jeweils neuesten Stand halten.

  1. Der Quellcode des Plugins lässt sich durch Überschreiben der bestehenden Version mit der neu erhaltenen aktualisieren.
  2. Für den Fall, dass die Kommandozeilenversion von ILMSImage aktualisiert werden soll, muss der Pfad zur neuen Datei in der Konfigurationsdatei ilmsraster.cfg unter ilms_img_bin eingetragen werden.
  3. QuantumGIS, GDAL und Python lassen sich erneutes Ausführen des OSGeo4W-Installationspakets aktualisieren. Dazu wird zunächst wie oben beschrieben vorgegangen. Das Setup-Programm identifiziert dann - nach Bezug einer neuen Paketliste über das Internet - selbstständig die zu aktualisierenden Bestandteile einer bestehenden Installation. Um zu kontrollieren, welche Änderungen vorgenommen werden, lässt sich die Anzeige im Paketfenster durch wiederholtes Klicken auf Ansicht umstellen. Wenn das Schlüsselwort Teilw. neben dem entsprechenden Button erscheint, sind alle zu aktualisierenden, aber auch alle neu zu installierenden und zu entfernenden, Pakete aufgelistet. Es wird empfohlen, diese Aktualisierung mindestens immer dann durchzuführen, wenn ein veränderter Plugin-Quellcode verwendet werden soll.

Die Liste der zu aktualisierenden Pakete einer OSGeo4W-Installation

Anwendung

Vorbemerkungen

Die Veranschaulichung der Anwendung des ILMSImage-Plugins erfolgt im Rahmen einer Beispielanwendung, welche das Einzugsgebiet der Rot im Freistaat Thüringen untersucht. Um das Beispiel nachvollziehen zu können, stehen alle notwendigen Eingangsdaten zum Download zur Verfügung. Im Rahmen dieser Anleitung wurde die entsprechende Datei in ein neues Verzeichnis namens C:\ilms_img entpackt. Um die Beispielanwendung zu starten, reicht es, das vorbereitete QuantumGIS-Projekt C:\ilms_img\rot.qgs über den Punkt Projektdatei öffnen... an dem Menü Datei zu laden.

Ilms img qgis work 01 de.png

Nach dem Öffnen des Projekts stellt sich die Oberfläche von QuantumGIS wie in der folgenden Abbildung dar. Den größten Teil nimmt die Kartendarstellung der Daten ein. Die Übersicht der Ebenen auf der linken Seite zeigt die geladenen Elementgruppen, welche Bilddaten (Imagery), die Begrenzung des Einzugsgebiets (Catchment) und die später notwendigen, im Augenblick noch nicht in der Kartendarstellung angezeigten, Referenzdaten (Training Data) umfassen.

Ilms img qgis work 02 de.png

Durchführung der Beispielanwendung

Aktivierung des ILMSImage-Plugins

Die Aktivierung des Plugins erfolgt, wie oben beschrieben, durch Auswahl des dazugehörigen Unterpunkts im Menü Erweiterungen oder über das Symbol in der entsprechenden Werkzeugleiste. Danach erscheint auf der rechten Seite des Arbeitsbereichs das GUI-Panel, das alle verfügbaren Funktionen bereitstellt. Zur Bearbeitung eines Projekts beinhaltet das Plugin insgesamt vier Unterpanels, welche über die entsprechenden Überschriften angewählt werden können. Sie haben folgende Funktionen:

  1. ILMSImage Setup hilft bei der Auswahl geeigneter Eingangsdatenlayer, erlaubt die nachträgliche Auswahl eines Teiluntersuchungsgebiets und erstellt ein neues ILMSImage-Projekt.
  2. ILMSImage Cell Creation führt die Zellbildung anhand der gewählten Eingangsdaten und weiterer optionaler Parameter durch.
  3. ILMSImage Attribute Calculation berechnet zellbasierte Attribute und Merkmale und erlaubt die Integration zusätzlicher Datenebenen.
  4. ILMSImage Classification führt die zweistufige thematische Auswertung, bestehend aus unüberwachter und überwachter Klassifikation durch.

Im Folgenden werden die einzelnen Unterpanels anhand einer beispielhaften Prozesskette für das Untersuchungsgebiet der Rot im Detail beschrieben.

ILMSImage Setup

ILMSImage Setup hilft bei der Auswahl geeigneter Eingangsdatenlayer, erlaubt die nachträgliche Auswahl eines Teiluntersuchungsgebiets und erstellt ein neues ILMSImage-Projekt.

Eine detaillierte Beschreibung des Panels erfolgt im Hauptartikel zu ILMSImage Setup

ILMSImage Cell Creation

ILMSImage Cell Creation führt die Zellbildung anhand der gewählten Eingangsdaten und weiterer optionaler Parameter durch.

Eine detaillierte Beschreibung des Panels erfolgt im Hauptartikel zu ILMSImage Cell Creation

ILMSImage Attribute Calculation

ILMSImage Attribute Calculation berechnet zellbasierte Attribute und Merkmale und erlaubt die Integration zusätzlicher Datenebenen.

Eine detaillierte Beschreibung des Panels erfolgt im Hauptartikel zu ILMSImage Attribute Calculation

ILMSImage Classification

ILMSImage Classification führt die zweistufige thematische Auswertung, bestehend aus unüberwachter und überwachter Klassifikation durch.

Eine detaillierte Beschreibung des Panels erfolgt im Hauptartikel zu ILMSImage Classification

Meine Werkzeuge
In anderen Sprachen