.

Konfiguration externer Anwendungen

Die Verarbeiten Umgebung kann anhand von zusätzlichen Anwendungen erweitert werden. Derzeit werden SAGA, GRASS, OTB (Orfeo Toolbox) und R zusammen mit einigen anderen Kommandozeilenanwendungen, die räumliche Datenanalysefunktionalitäten bereitstellen, unterstützt. Algorithmen, die von einer externen Anwendung herrühren, werden von ihrem eigenen Algorithmusprovider verwaltet.

Dieses Kapitel zeigt Ihnen, wie Sie die Verarbeiten Umgebung so konfigurieren, dass diese zusätzlichen Anwendungen integriert sind, zudem werden einige Besonderheiten zu den Algorithmen, die auf ihnen basieren, erklären. Wenn das System korrekt konfiguriert ist, sind Sie in der Lage, externe Algorithmen von jeder Verarbeiten Komponente, wie die Toolbox oder der grafischen Modellierung, auszuführen, so wie Sie es mit jedem anderen Geo-Algorithmus gewohnt sind.

Standardmäßig sind alle Algorithmen, die aus einer externen Anwendung kommen und nicht in QGIS enthalten sind, deaktiviert. Sie können Sie in den Verarbeitungsoptionen aktivieren. Stellen Sie sicher, dass die entsprechende Anwendung schon auf Ihrem System installiert ist. Das Aktivieren des Algorithmusproviders ohne das Installieren der Anwendung, die benötigt wird, bewirkt, dass Algorithmen in der Werkzeugkiste erscheinen, es wird dann aber ein Fehler ausgegeben wenn Sie versuchen sie auszuführen.

Das ist so, weil die Beschreibung des Algorithmus (erforderlich, um den Parameter Dialog zu erstellen und die benötigten Informationen bereitzustellen) nicht in jeder Appllikation enthalten ist, dafür aber in QGIS. Das heißt, sie sind Teil von QGIS, so haben Sie sie in Ihrer Installation, auch wenn Sie keine andere Software installiert haben. Zum Ausführen des Algorithmus müssen jedoch auch die Binärdateien der Anwendung auf Ihrem System installiert sein.

Ein Hinweis für Windows Anwender

Wenn Sie kein fortgeschrittener Anwender sind und QGIS unter Windows benutzen, sind Sie vielleicht nicht daran interessiert, den Rest dieses Kapitels zu lesen. Stellen Sie sicher, dass Sie QGIS auf Ihrem System mit Hilfe des Standalone Installers installiert haben. Das wird automatisch SAGA, GRASS und OTB auf Ihrem System installieren und sie konfigurieren, so dass sie von QGIS aus zum Laufen gebracht werden könnne. Alle Algorithmen in der simplified Ansicht der Werkzeugkiste werden fertig zum Ausführen ohne weitere Konfigurationen sein. Wenn Sie über die OSGeo4W Anwendung installieren stellen Sie sicher dass SAGA und OTB zur Installation ebenfalls ausgewählt sind.

Wenn Sie mehr darüber, wie die Provider arbeiten, wissen wollen oder wenn Sie einige Algorithmen, die nicht in der simplified Werkzeugkiste enthalten sind (wie R Scripts), benutzen wollen, lesen Sie weiter.

Eine Bemwerkung zu den Datenformaten

Bei Verwendung einer externen Software, bedeutet das Öffnen einer Datei in QGIS nicht, dass es auch von der anderen Software geöffnet und verarbeitet werden kann. In den meisten Fällen können sie zwar auch lesen, was Sie in QGIS geöffnet haben, aber in einigen Fällen ist das vielleicht nicht der Fall. Bei der Verwendung von Datenbanken oder seltenen Dateiformaten, ob für Raster- oder Vektorlayer, könnten Probleme auftreten. Wenn das passiert, versuchen Sie, bekannte Dateiformate, bei denen Sie sicher sind, dass sie von beiden Programmen verstanden werden, zu verwenden, und überprüfen Sie die Ausgabe (im History und Log-Dialog) für weitere Informationen.

Das Verwenden von RASS Rasterlayern ist beispielsweise ein Fall, in dem Sie vielleicht Probleme haben und nicht in der Lage sein werden Ihre Arbeit zu vervollständigen, wenn Sie einen externen Algorithmus mit einem solchen Layer als Eingabe aufrufen. Aus diesem Grund erscheinen diese Layer als nicht zur Verfügung stehend für die Algorithmen.

Bei Vektorlayern sollten jedoch keine Probleme auftreten, da QGIS diese automatisch vom ursprünglichen Dateiformat zu einem von der externen Anwendung akzeptierten Format konvertiert bevor es den Layer übergibt. Dies benötigt zusätzliche Bearbeitungszeit, die erheblich sein kann, wenn der Layer groß ist. Also nicht wundern, wenn es länger braucht, um einen Layer aus einer DB-Verbindung zu analysieren, als bei einem ähnlich großen Shapefile.

Provider, die keine externe Anwendung verwenden können jeden beliebigen Layer, den Sie in QGIS öffnen können, prozessieren, da Sie ihn für Analysen anhand von QGIS öffnen.

In bezug auf Ausgabeformate können alle von QGIS als Ausgabe unterstützen Formate verwendet werden, für Raster- und Vektorlayer. Einige Provider unterstützen kene bestimmten Formate, aber alle können in gängige Rasterlayerformate exportieren, die später von QGIS automatisch transformiert werden können. Wie im Fall von Eingabelayern kann das, wenn eine Konvertierung benötigt wird, die Rechenzeit erhöhen.

Wenn die Erweiterung des Dateinamens, der festgelegt wird, wenn ein Algorithmus nicht die Erweiterung eines der von QGIS untersützten Formate besitzt, dann wird ein Suffix hinzugefügt um das Standardformat zu setzen. Im Fall von Rasterlayern wird die Erweiterung .tif verwendet, während .shp für Vektorlayer verwendet wird.

Eine Bemerkung zu Vektorlayern mit ausgewählten Objekten

Externe Anwendungen können auch über die Auswahl die in Vektorlayern innerhalb von QGIS vorliegt unterrichtet werden. Das jedoch erfordert das Umschreiben aller Eingabevektorlayer, so als würden Sie ursprünglich in einem Format, das nicht von der externen Anwendung unterstützt wird, vorliegen. Nur wenn eine Auswahl besteht, oder die Use only selected features Option in den Verarbeitungsoptionen nicht aktiviert ist, kann ein Layer direkt an eine externe Anwendung übergeben werden.

In anderen Fällen wird das Exportieren von nur ausgewählten Objekten benötigt, was bewirkt, dass sich die Ausführungszeiten verlängern.

SAGA

SAGA Algorithmen können von QGIS aus benutzt werden wenn Sie SAGA auf Ihrem System installiert haben und Sie die Verarbeiten Umgebung richtig konfigurieren, so dass es ausführbare Module von SAGA finden kann. Insbesondere das SAGA Kommandozeilenmodul wird benötigt um SAGA Algorithmen zum Laufen zu bringen.

Wenn Sie Windows benutzen beinhalten sowohl das Installationspaket und der OSGeo4W Installer SAGA unter QGIS und er Pfad ist automatisch konfiguriert, es muss also nichts weiter getan werden.

Wenn Sie SAGA selber installiert haben (denken Sie daran, dass Sie Version2.1 brauchen) muss der Pfad zu den ausführbaren Modulen konfiguriert werden. Um dies zu tun öffnen Sie den Optionen und Konfiguration Dialog. Im SAGA Block finden Sie eine Einstellung genannt SAGA Folder. Geben Sie den Pfad zu dem Ordner wo SAGA installiert ist an. Schließen Sie den Verarbeitungsoptionendialog und jetzt können Sie SAGA Algorithmen aus QGIS heraus ausführen.

Wenn Sie Linux benutzen, sind SAGA Binärpakete nicht in der Verarbeitung Umgebung enthalten, also müssen Sie die Software selber downloaden und installieren. Bitte überprüfen Sie die SAGA Webseite für mehr Informationen. Es wird SAGA 2.1 benötigt.

In diesem Fall braucht der Pfad zu den ausführbaren SAGA Modulen nicht konfiguriert werden und Sie werden diese Ordner nicht sehen. Anstelledessen müssen Sie sicherstellen, dass SAGA richtig installiert ist und seine Ordner zur PATH Umgebungsvariable hinzugefügt wurden. Öffnen Sie einfach eine Konsole und geben Sie saga_cmd ein um zu überprüfen, dass das System herausfindet, wo sich die SAGA Binärpakete befinden.

Über die SAGA KBS Einschränkungen

Die meisten SAGA Algorithmen, die mehrere Eingaberasterlayer benötigen, haben die Anforderung, dass diese das gleiche Grid-System haben. Das heisst, dass Sie das gleiche geografische Gebiet abdecken und die gleiche Zellgröße besitzen müssen, so dass Ihre korrespondierenden Grids zueinanderpassen. Wenn SAGA Algorithmen von QGIS aus aufgerufen werden, können Sie jeden Layer unabhängig von Zellgröße und Ausdehnung benutzen. Wenn Mahrfachrasterlayer als Eingabe für einen SAGA Algorithmus verwendet werden, resampled QGIS sie zu einem gemeinsamen Grid-System und übergibt diese dann an SAGA (es sei denn der SAGA Algorithmus kann mit Layern aus verschiedenen Grid-Systemen operieren).

Die Definition dieses gemeinsamen Grid-Systems wird durch den Anwender kontrolliert und Sie werden dafür mehrere Parameter in der SAGA Gruppe im Einstellungen Fenster finden. Es gibt zwei Wege das Ziel-Grid-System einzustellen:

  • Manuelles Einstellen. Sie definieren das Ausmaß indem Sie die Werte der folgenden Parameter setzen:

    • Resampling min X
    • Resampling max X
    • Resampling min Y
    • Resampling max Y
    • Resampling cellsize

    Beachten Sie, dass QGIS alle Eingabelayer bis zu diesem Ausmaß resampled, auch wenn sie sich nicht damit überschneiden.

  • Automatisches Einstellen aus Eingabelayern. Um diese Option auszuwählen, überprüfen Sie einfach die Use min covering grid system for resampling Option. Alle anderen Einstellungen werden ignoriert und das minimale Ausmaß, das alle Eingabelayer abdeckt, wird benutzt. Die Zellgröße des Ziellayers ist das Maximum aller Zellgrößen des Eingabelayers.

Für Algorithmen, die nicht mit mehreren Rasterlayern arbeiten, oder für diejenigen, die kein eindeutiges KBS bauchen, wird kein Resampling vor dem Aufruf von SAGA durchgeführt, und die Parameter werden nicht verwendet.

Einschränkungen für Multi-Band-Layer

Im Gegensatz zu QGIS hat SAGA keine Unterstützung für Multikanallayer. Wenn Sie einen Multikanallayer benutzen wollen (so wie ein RGB oder ein Multispektralbild), müssen Sie ihn erst in Einkanalbilder aufspalten. Um das zu tun, können Sie den ‘SAGA/Grid - Tools/Split RGB image’ Algorithmus (der drei Bilder aus einem RGB Bild erstellt) oder den ‘SAGA/Grid - Tools/Extract band’ Algorithmus (um einen einzelnen Kanal zu extrahieren) verwenden.

Einschränkungen in der Zellgröße

SAGA geht davon aus, dass Rasterlayer die selbe Pixelgröße in X- und Y-Richtung haben. Wenn Sie mit einem Layer mit unterschiedlichen Werten für die horizontale und vertikale Pixelgöße arbeiten, erhalten Sie möglicherweise unerwartete Ergebnisse. In diesem Fall wird eine Warnung im Verarbeitung Protokoll hinzugefügt, das anzeigt, dass ein Layer möglicherweise nicht geeignet ist, von SAGA verarbeitet zu werden.

Logging

Wenn QGIS SAGA aufruft, findet das über die Kommandozeilen-Schnittstelle statt mit einer Reihe von Befehlen, um alle erforderlichen Operation durchzuführen. SAGA zeigt den Fortschritt, indem es Informationen an die Konsole übergibt, die den Prozentsatz der Verarbeitung beinhaltet, zusammen mit zusätzlichen Inhalten. Diese Ausgabe wird gefiltert und verwendet, um die Fortschrittsanzeige zu aktualisieren, während der Algorithmus läuft.

Sowohl die von QGIS gesendeten Befehle und die von SAGA gedruckte zusätzliche Information kann mit anderen Verarbeitung Protokollnachrichten gelogged werden und Sie könnten es nützlich finden im Detail zu verfolgen was passiert wenn QGIS einen SAGA Algorithmus aufruft. Sie werden zwei Einstellungen finden, nämlich Log console output und Log execution commands um diesen Protokollierungsmechanismus zu aktivieren.

Die meisten anderen Provider, die eine externe Anwendung verwenden und diese aus der Kommandozeile aufrufen, haben ähnliche Optionen, also finden Sie sie auch an anderer Stelle in der Verarbeitungsoptionen Liste.

R. Creating R scripts

Die R Integration in QGIS unterscheidet sich von der SAGA Integration, da es keinen vordefinierten Satz von Algorithmen gibt, den man ausführen kann (bis auf einige Beispiele). Stattdessen sollten Sie Ihre Skripte schreiben und dann über R Befehle aufrufen, ähnlich wie man es von R kennt, und in einer sehr ähnlichen Weise zu dem, was wir sahen, im Kapitel Verarbeitung Skripte. Dieses Kapitel zeigt Ihnen die Syntax, die Sie verwenden sollten, um die R-Befehle von QGIS anzusprechen und wie QGIS Objekte verwendet werden (Layer, Tabellen).

Das erste, was Sie tun müssen, wie wir im Fall von SAGA gesehen haben, ist zu sagen, wo sich die R Binärdateien befinden. Sie können dies tun, indem Sie den R folder Eintrag im Verarbeitung Konfigurationsdialog ansprechen. Nachdem Sie die Parameter definiert haben, können Sie anfangen, eigene R-Skripte zu erstellen und auszuführen.

Dies ist wieder anders in Linux. Dort müssen Sie nur sicherstellen, dass der R-Ordner in der Umgebungsvariablen PATH enthalten ist. Wenn Sie nur die Eingabe R in eine Konsole eingeben können, kann es losgehen.

Um einen neuen Algorithmus hinzuzufügen, der eine R Funktion (oder ein komplexeres RScript, das sie entwickelt haben und das sie gerne zur in QGIS zur Verfügung stehen haben wollen) aufruft, müssen Sie eine Script Datei erstellen, die der Verarbeiten Umgebung, wie diese Operation durchgeführt wird, und die entsprechenden R Befehle mitteilt um das zu tun.

R Scripts Dateien habe die Erweiterung .rsx und es ist ziemlich einfach sie zu erstellen wenn Sie nur etwas grundlegende Kenntnisse über die R Syntax und R Scripting besitzen. Sie sollten im R Scripts Ordner gespeichert werden. Sie können diesen Ordner in der R Einstellungen Gruppe (steht im Verarbeitungsoptionen Dialog) einstellen, genauso wie Sie es mit dem Ordner für reguläre Verarbeitung Scripts machen.

Werfen Sie einen Blick auf eine sehr einfache Scripts-Datei, die die R-Methode spsample aufruft und ein zufälliges Gitter innerhalb der Grenzen eines Polygon in einem bestimmten Polygon-Layer erstellt. Diese Methode gehört zum Paket zur MapTools. Grundsätzlich brauchen Sie für R-Algorithmen, die Sie in Verarbeitung für räumliche geostatistische Analysen nutzen wollen, zumindest Kenntnisse der Pakete wie MapTools und speziell sp.

##polyg=vector
##numpoints=number 10
##output=output vector
##sp=group
pts=spsample(polyg,numpoints,type="random")
output=SpatialPointsDataFrame(pts, as.data.frame(pts))

Die ersten Zeilen, die mit einem doppelten Python Kommentarzeichen (##) beginnen teilen QGIS die Eingaben des Algorithmus, der in der Datei beschrieben wird und die Ausgaben, die er erzeugen wird, mit. Sie arbeiten mit genau der gleichen Syntax wie den Verarbeitung Scripts, die wir bereits gesehen haben, also werden Sie hier nicht noch einmal beschrieben.

Wenn Sie einen Eingabeparameter definieren, verwendet QGIS diese Informationen für zwei Dinge: Erstellung der Benutzeroberfläche, um die Benutzer nach Eingaben von Parameters zu fragen und die Schaffung einer entsprechenden R Variable, die später als Eingabe für die R-Befehle verwendet werden.

In dem obigen Beispiel erklären wir die Eingabe vom Typ Vektor mit dem Namen polyg. Bei der Ausführung des Algorithmus wird durch QGIS R geöffnet und der Layer, der durch den Benutzer ausgewählt wurde, in einer Variablen polyg abgelegt. Der Name des Parameters ist also auch der Name der Variablen, die wir in R für den Zugriff auf den Wert des Parameters nutzen (vermeiden Sie, reservierte R Begriffe als Parameter zu verwenden).

Räumliche Elemente wie Vektor- und Rasterlayer werden mit den readOGR() und brick() Befehlen eingelesen (sie brauchen sich nicht darum kümmern diese Befehle Ihrer Beschreibungsdatei hinzuzufügen - das macht QGIS) und sie werden als Spatial*DataFrame Objekte gespeichert. Tabellenfelder werden als Strings, die den Namen des ausgewählten Feldes beinhalten, gespeichert.

Tabellen werden anhand des read.csv() Befehls geöffnet. Wenn ein Anwender eine Tabelle eingibt, die nicht im CSV Format ist, wird diese vor dem Importieren in R konvertiert.

Zusätzlich können Rasterdateien mit Hilfe des readGDAL() Befehls anstelle von brick() eingelesen werden indem ##usereadgdal benutzt wird.

Wenn Sie ein fortgeschrittener Anwender sind und nicht wollen, dass QGIS ein Objekt, das den Layer repräsentiert, erstellt, können Sie den ##passfilename Tag benutzen um anzuzeigen, dass Sie anstelledessen einen String mit dem Dateinamen bevorzugen. In diesem Fall ist es an Ihnen, die Datei vor dem Durchführen von Operationen mit Daten, die es beinhaltet, zu öffnen.

Mit den oben genannten Informationen können wir jetzt die erste Zeile unseres ersten Beispiel Scripts verstehen (dabei startet die erste Zeile nicht mit einem Python Kommentar).

pts=spsample(polyg,numpoints,type="random")

Die Variable Polygon enthält bereits ein SpatialPolygonsDataFrame Objekt, damit kann es verwendet werden, um das spsample Verfahren aufzurufen, ebenso wie die NumPoints, die die Anzahl der Punkte zeigt, die zum Gitter hinzugefügt werden sollen.

Da wir eine Ausgabe vom Typ Vektor definiert haben mit dem Namen``out``, müssen wir nun eine Variable namens out erstellen und Spatial*DATAframe Objekt dafür erstellen (in diesem Fall ein SpatialPointsDataFrame). Sie können einen beliebigen Namen für Ihre Zwischenvariablen verwenden. Stellen Sie nur sicher, dass die Variable Ihres Endergebnisses den gleichen Namen hat, den Sie zuvor definiert haben und dass sie einen geeigneten Wert enthält.

In diesem Fall muss das von der spsample Methode erhaltene Ergebnis ausdrücklich in ein SpatialPointsDataFrame Objekt konvertiert werden, da es ein Objekt der Klasse ppp ist, welches keine geeignete Klasse ist um an QGIS zurückgegeben zu werden.

Wenn Ihr Algorithmus Rasterlayer erstellt, hängt die Art und Weise wie Sie gespeichert werden davon ab ob Sie die #dontuserasterpackage Option verwendet haben. Wenn Sie sie verwendet haben werden die Layer anhand der writeGDAL() Methode gespeichert. Wenn nicht wir die writeRaster() Methode aus dem raster Paket benutzt.

Wenn Sie die #passfilename Option verwendet haben, werden Ausgaben anhand des raster Paketes erstellt (mit writeRaster()), trotzdessen es nicht für Eingaben verwendet wird.

Wenn Ihr Algorithmus keinen Layer erzeugt sondern stattdessen ein Textergebnis in der Konsole, müssen Sie angeben, dass die Konsole gezeigt wird, nachdem die Ausführung beendet ist. Um das zu tun starten Sie die Kommandozeilen, die die Ergebnisse produzieren, die Sie mit dem > (größer) Zeichen drucken wollen. Die Ausgabe aller anderen Zeilen wird nicht gezeigt. Zum Beispiel ist hier die Beschreibungsdatei eines Algorithmus, der einen Test auf Normalverteilung mit einem vorhandenen Feld (Spalte) eines Vektorlayerattributes durchführt:

##layer=vector
##field=field layer
##nortest=group
library(nortest)
>lillie.test(layer[[field]])

Die Ausgabe der letzten Zeile wird gedruckt, die Ausgabe der ersten aber nicht (und auch nicht die Ausgaben von anderen Kommandozeilen, die automatisch von QGIS hinzugefügt werden).

Wenn Ihr Algorithmus eine Grafiken erstellt (mit der plot()-Methode), fügen Sie die folgende Zeile ein:

##showplots

Dies bewirkt, dass QGIS alle grafischen Ausgaben von R in eine temporäre Datei, die geöffnet wird nachdem die Ausführung von R beendet wurde, umleitet.

Sowohl grafische als auch Konsolenergebnisse werden im Verarbeitung Ergebnisanzeige gezeigt.

Für weitere Informationen schauen Sie sich bitte die Skript-Dateien an, die Verarbeitung bereits enthält. Die meisten von ihnen sind ziemlich einfach und werden wesentlich dazu beitragen, wie Sie Ihre eigenen erstellen.

Bemerkung

rgdal and maptools Bibliotheken werden standardmäßig geladen, Sie müssen also nicht die entsprechenden library() Befehle hinzufügen (Sie müssen nur sicherstellen, dass diese zwei Pakete in Ihrer R-Distribution installiert sind). Jedoch müssen andere zusätzliche Bibliotheken, die Sie vielleicht brauchen, explizit geladen werden. Geben Sie einfach die notwendigen Befehle am Anfang Ihres Scripts ein. Auch müssen Sie sicherstellen, dass die entsprechenden Pakete in der R-Distribution, die von QGIS genutzt wird, installiert sind. Die Verarbeiten Umgebung kümmert sich nicht um Paketinstallationen. Wenn Sie ein Skript ausführen, das ein Paket erfordert, das nicht installiert ist, wird die Ausführung fehlschlagen und die Verarbeitung wird versuchen, zu ermitteln welche Pakete fehlen. Sie müssen diese Bibliotheken manuell installieren bevor sie den Algorithmus ausführen können.

GRASS

Die Konfiguration von GRASS ist nicht viel anders als die Konfiguration von SAGA. Zuerst muss der Pfad zu dem Ordner GRASS definiert werden, aber nur, wenn Sie Windows verwenden. Zusätzlich gibt es einen Shell-Interpreter (in der Regel: msys.exe, den Sie in den meisten GRASS für Windows-Distributionen finden) der definiert werden muss, genauso wie der Pfad dorthin.

Standardmäßig versucht die Verarbeiten Umgebung seine GRASS Verbindung so zu kofigurieren, dass die GRASS-Distribution, die mit QGIS geliefert wird, benutzt werden kann. Dies sollte ohne Probleme in den meisten Systemen funktionieren, aber wenn Probleme auftauchen, müssen Sie vielleicht die GRASS Verbindung manuell konfigurieren. Auch wenn Sie eine andere GRASS Installation benutzen wollen, können Sie diese Einstellung ändern und auf den Ordner , wo die andere Version installiert ist, verweisen. Damit die Algorithmen korrekt funktionieren wird GRASS 6.4. benötigt.

Wenn Sie Linux verwenden, müssen Sie nur noch sicherstellen, dass GRASS richtig installiert ist, und dass es problemlos von einer Konsole ausgeführt werden kann.

GRASS Algorithmen verwenden eine Region für die Berechnungen. Diese Region kann manuell definiert werden unter Verwendung von Werten ähnlich denen, die in der SAGA Konfiguration stehen oder automatisch, wobei die minimale Ausdehnung aller Eingangslayer verwendet werden, wenn der Algorithmus ausgeführt wird. Wenn dies das Verhalten ist, das Sie bevorzugen, können Sie es über die Option Verwende min abdecken Region in den GRASS Konfigurationsparametern definieren.

Der letzte Parameter, der konfiguriert werden muss, bezieht sich auf die Mapset. Eine Mapset wird benötigt um GRASS benutzen zu können und die Verarbeiten Umgebung erstellt eine temporäre für jede Ausführung. Sie müssen angeben, ob die Daten, mit denen Sie arbeiten Geografische (lat/lon) Koordinaten oder projezierte verwenden.

GDAL

Ist keine zusätzliche Konfiguration erforderlich, um GDAL Algorithmen laufen zu lassen. Da es bereits in QGIS integriert ist, können die Algorithmen ihre Konfiguration davon ableiten.

Orfeo Toolbox

Orfeo Toolbox (OTB) Algorithmen können von QGIS aus ausgeführt werden wenn Sie OTB auf Ihrem System installiert haben und Sie QGIS richtig konfiguriert haben, so dass es alle notwendigen Dateien finden kann (Kommandozeilentools und Bibliotheken).

Wie im Fall von SAGA sind OTB Binärpakete im Installationspaket für Windows enthalten, sie sind aber nicht enthalten wenn Sie Linux benutzen, also müssen Sie die Software selber downloaden und installieren. Bitte überprüfen Sie die OTB Webseite für weitere Informationen.

Starten Sie QGIS nachdem OTB installiert wurde, öffnen Sie den Verarbeitungsoptionen Dialog und konfigurieren Sie den OTB Algorithmus Provider. Im Orfeo Toolbox (Image analysis) Block finden Sie alle für OTB relevanten Einstellungen. Stellen Sie zuerst sicher, dass die Algorithmen aktiviert sind.

Konfigurieren Sie dann den Pfad zu dem Ordner wo die ORB Kommandozeilentools und -bibliotheken installiert sind:

  • nix Normalerweise verweist der OTB applications folder zu /usr/lib/otb/applications und der OTB command line tools folder zu /usr/bin.

  • win Wenn Sie den OSGeo4WInstaller benutzen, installieren Sie das otb-bin Paket und geben Sie C:\OSGeo4W\apps\orfeotoolbox\applications als OTB applications folder und C:\OSGeo4W\bin as OTB command line tools folder ein. Diese Werte sollten standardmäßig konfiguriert werden, aber wenn Sie eine abweichende OTB Installation durchgeführt haben, konfigurieren Sie sie auf die entsprechenden Werte in Ihrem System.

TauDEM

Um diesen Provider zu verwenden müssen Sie TauDEM Kommandozeilentools installieren.

Windows

Bitte besuchen Sie die TauDEM homepage für Installationhinweise und vorkompilierte Binärpakete für 32-bit und 64-bit Systeme. WICHTIG: Sie benötigen die ausführbaren Dateien von TauDEM 5.0.6. Version 5.2 wird derzeit nicht unterstützt.

Linux

Es gibt keine Pakete für die meisten Linux Ditributionen, Sie sollten TauDEM also selber kompilieren. Da TauDEM MPICH2 verwendet, installieren Sie dieses zuerst und verwenden Sie dabei ihren bevorzugten Paketmanager. Alternativ dazu funktioniert TauDEM gut mit Open MPI, Sie können es also anstelle von MPICH2 verwenden.

Laden Sie TauDEM 5.0.6 source code und extrahieren Sie die Datein in einen gewissen Ordner.

Öffnen Sie die linearpart.h Datei, und nach der Zeile

#include "mpi.h"

fügen Sie einen neue Zeile ein mit

#include <stdint.h>

dadurch bekommen Sie

#include "mpi.h"
#include <stdint.h>

Speichern Sie die Änderungen und schließen Sie die Datei. Öffnen Sie jetzt tiffIO.h, finden Sie die Zeile #include "stdint.h" und ersetzen Sie die Anführungszeichen (""`) mit ``<> so dass Sie jetzt folgendes erhalten

#include <stdint.h>

Speichern Sie die Änderungen und schließen Sie die Datei. Erstellen Sie ein Build-Verzeichnis und machen Sie ein cd dort hin.

mkdir build
cd build

Konfigurieren Sie Ihr build mit dem Befehl

CXX=mpicxx cmake -DCMAKE_INSTALL_PREFIX=/usr/local ..

und dann kompilieren

make

Schließlich, um TauDEM in /usr/local/bin zu installieren, geben Sie ein

sudo make install