Raster-Overlay mit Spatial Analyst und Model Build

Hallo Forum,

habe gerade ein Problem mit dem Spatial Analyst und dem Model Builder.
Ich soll eine etwas komplizierte Overlay-Verarbeitung mit Rasterdaten durchführen, und gedachte das mit dem Model Builder zu erledigen, um den Ablauf zu dokumentieren und wiederholbar zu gestalten. Leider komm ich mit beiden Instrumenten nicht ganz klar. Ich finde teils die richtigen Werkzeuge nicht, die Verarbeitung der Rasterdaten im Model Builder richtig nachzuvollziehen.

1. Wenn ich für bestimmte Verarbeitungen nur eine Auswahl aus dem Grid brauche, gehe ich in ArcMap folgendermaßen vor:
a) Öffnen der Attributtabelle des Grid, Auswahl bestimmter Einheiten nach Attribut.
b) Dann die Verarbeitung mit Spatial Analyst (hier z.B. euklidische Distanzoberfläche) Es werden nur die ausgewählten Rasterzellen in die Berechnung einbezogen.

Nun finde ich im Model Builder kein Werkzeug, das für Raster (analog zur Vorgehensweise bei Vektordaten) eine Auswahl nach Attributtabelle ermöglicht. Gibt’s so was für Rasterdaten?? Die Auswahl kann ich ohne Werkzeug im Model Builder nicht nachbauen, deshalb hab ich einen Umweg genommen über Reclassify: die gewünschten Einheiten erhielten den Wert 1, alle anderen NoData. Das funktioniert soweit gut, ich wüsste trotzdem gern, ob es ein Auswahl-Werkzeug für Rasterdaten gibt.

2. Das größte Problem ist die letzte Verschneidung.
Ich möchte zwei Raster mit unterschiedlicher Gewichtung überlagern. Grid1 soll 40% gewichtet werden, Grid2 mit 60%.
Im Model Builder schien mir Weighted Overlay das richtige Werkzeug zu sein. Allerdings bricht die Berechnung immer mit einer wenig spezifischen Fehlermeldung ab:
An error was encountered while executing spatial Weighted Overlay
Was könnte gemeint sein?

Wenn ich die beiden Raster in ArcMap direkt verarbeiten will, wähle ich im Spatial Analyst den Raster Calculator. Mit der Formel ([Grid1]*0,4)+([Grid2]*0,6) erhalte ich das gewünschte Ergebnis.
Aber ich weiss nicht, wie ich das im Model Builder reinbringen soll. Den Raster Calculator finde ich nicht unter den Spatial Analyst tools. Da gibt’s zwar das tool Math -> Sum, aber da kann ich den Gewichtungsfaktor nicht einbringen. Hat jemand eine Idee für mich??

Viele Grüße
Rena
Hallo Rena,

ich habe deine Aufgabenstellung gleich mal zum Selbsstudium genutzt und bin zum Ergebnis gekommen.

Lösung mit ModellBuilder:

1. Befehl "Extract by Attributes" (unter Spatial Analyst Tools/Extraction) sorgt für die Auswahl bestimmter Werte deines Grids mittels SQL-Statement -> ergibt tempGrid1

2. Befehl "Times" (unter Spatial Analyst Tools/Math) besorgt die Multiplikation mit dem gewünschten Faktor. Multipliziere tempGridA1 mit FaktorA -> ergibt tempGridA2

3. Das gleiche Prozedere für deine zweites Eingabegrid. Ergibt tempGridB2

4. Befehl "Plus" (unter Spatial Analyst Tools/Math) Addiere damit tempGridA2 und tempGridB2

5. Die Summe sollte dein gewünschtes Ergebnis darstellen.

Das Modell könnte dann folgendermaßen aussehen:


Viel Erfolg
Andreas
Hallo Andreas,
danke für deine Anregungen. Extract scheint das richtige Werkzeug zu sein.
Allerdings scheine ich hier eine besonders harte Nuss zu haben, denn – es funktioniert nicht.
Wenn ich das Werkzeug Extract dem Modell zufüge und mit dem Raster verbinde, wird der SQL- Ausdruck zur Auswahl nicht angenommen. Bsp: Value = 5. (Value ist ein Integer Zahlenfeld)
Das Werkzeug färbt sich bei Verbindung mit dem Datensatz auch nicht orange ein, wie das sonst der Fall ist (und in deinem Modell sichtbar).
Auch das Werkzeug Multiplizieren macht Schwierigkeiten: Ich möchte den Faktor 0,6 eintragen, aber der wird auf 0 zurückgesetzt. Wenn ich 0.6 eintrage, wird das nicht angenommen.
Irgendwie sieht das für mich aus, als wäre mit den Zahlenformaten was nicht in Ordnung. Das Ausgangsgrid enthält ein Feld Value (Integer) mit Zahlen von 1-9. Damit sollte man doch rechnen können, oder?
Was kann da los sein??

Ratlose Grüße
Rena
Hallo Rena,

wenn dein Eingabe-Grid ein IntegerGrid ist muss der Extraktbefehl eigentlich funktionieren. Was geht denn nicht bei Angeben des SQL-Ausdrucks? Vielleicht existiert der Wert nicht? Laß dir doch mal im SQL-Fenster die möglichen Werte auflisten, wenn dort die 5 erscheint muss auch der Ausdruck funktionieren. Wahrscheinlich färbt sich das Kästchen erst dann, wenn ein gültiger SQL-Ausdruck vorhanden ist.

Bei der Multiplikation mußt du einfach den Times-Befehl ins Modell ziehen, das Kästchen doppelklicken für den ersten Faktor dein Grid angeben und als zweiten Faktor den Zahlwert (also zum Bsp. 0,6) angeben. Es entsteht dann ein blaues Oval. Durch einen Doppelklick darauf kann man dann auch nochmals den Wert prüfen. In diesem Fall steht dort dann die 0,6.

Vielleich findet sich ja doch noch ein kleiner Flüchtigkeitsfehler in deinem Modell oder deinen Daten.

Viel Erfolg. Andreas
Hallo Andreas,
soweit ich das bislang feststellen konnte, färben sich die Werkzeuge um, sobald sie mit einem gültigen Datensatz verbunden werden und Parameter gesetzt wurden (soweit erforderlich). Wenn sie weiß bleiben, bedeutet das wohl, dass sie mit den Daten nicht arbeiten können.
zu SQL: Ich kann die die möglichen Werte nicht auflisten lassen (Schalter ist nicht aktiv), das ist es ja , was mich so stutzig macht.
Und zur Multiplikation: genau so bin ich vorgegangen, aber die Einträge 0,6 bzw. 0.6 werden wie beschrieben nicht angenommen.

Allerdings muss ich grad was einschränken: ich habe das Modell bislang auf ArcGIS 9.0 ausprobiert und dort die beschriebenen Fehlermeldungen erhalten. Eben hab ich es nochmal mit ArcGIS 9.1 versucht und -siehe da- Weighted Overlay hat zum ersten Mal funktioniert! Allerdings scheint mir das Ergebnis nicht das gewünschte zu sein (Ganzzahlen, ich erwarte aber Kommazahlen).
Das Modell war mit Reclassify gestrickt, Extract geht immer noch nicht, times hingegen funktioniert mit ArcGIS 9.1.
Mühsam ernährt sich das Eichhörnchen..
Grüße
Rena