Ich arbeite mit einem Rastersatz, der Landwerte darstellt, und möchte automatisch Polygone mit zufälliger Form, aber mit einer bestimmten Größe und / oder einem bestimmten Landwert erstellen, wobei ein Schwerpunkt jedes Polygons angegeben wird. Der Schwerpunktpunkt fungiert als anfängliche Rasterzelle (ein Pixel, das als Startzelle bezeichnet wird), die zu diesem bestimmten Polygon gehört, und dann fügt ein Algorithmus zum Wachsen der Region Pixel um ein Schwerpunktpixel hinzu, bis die Größe und / oder der Landwert eingeschränkt sind eines Polygons wird erfüllt.
Hat jemand eine Idee zu einem bestehenden Algorithmus für das Wachstum von Regionen? oder zumindest mit welcher Klasse von ArcObjects oder Interfaces kann ich arbeiten, um den Wert jedes Pixels zu lesen, ein neues Polygon zu erstellen, indem ich ihm neue Pixel hinzufüge?
Ich hoffe, dass das oben Gesagte Sinn macht und mir jemand helfen kann.
Bearbeiten
Grundsätzlich beabsichtige ich, mithilfe eines genetischen Algorithmus (GA) automatisch Polygone mit regelmäßigen Formen und einer Reihe von Einschränkungen wie Größe, Landwert usw. zu erstellen. Aber zuerst muss ich eine Reihe von zufälligen Lösungen erstellen, um die GA zu versorgen. So zum Beispiel auf einem Landblock, der von Straßen umschlossen ist, habe ich bereits 4 Schwerpunktpunkte gesagt. Jeder Schwerpunktpunkt repräsentiert die ungefähre Position jedes neuen Grundstücks. Zusätzlich ist jedem Schwerpunkt Attribute jedes Pakets zugeordnet, dh Größe und Grundstückswert. Daher möchte ich mit jedem Schwerpunkt als Startpunkt des Algorithmus zum Wachsen der Region beginnen, um eine zufällige Form für jedes Paket basierend auf jedem Schwerpunkt zu erstellen.
Ich hoffe, dass das oben Gesagte Sinn macht. Ich freue mich darauf, wie ich diesen Algorithmus zum Wachsen der Region erstellen kann oder ob es bereits einen in VBA und ArcObjects gibt.
quelle
Antworten:
Eine Kostenentfernungsanalyse ist ein Ansatz: Klassifizieren Sie das Raster basierend auf dem Landwert ab dem Startpunkt. Wenn Sie dieses Ergebnis als Schwellenwert festlegen, erhalten Sie den kumulierten Kostenbereich als Raster. Übersetzen Sie einfach dieses klassifizierte Raster in ein Polygon, und Sie sollten Ihr Ergebnis erhalten. Abhängig von den Besonderheiten Ihrer Arbeit können Sie möglicherweise die Kostenzuordnungsfunktion mit Ihren Startpositionen und Ihrem Landwert-Raster verwenden, um die gewünschte Ausgabe zu erzielen.
quelle
Wenn Sie bereit sind, Optionen außerhalb von ArcGIS zu untersuchen, enthält das Open Source / kostenlose SAGA GIS einen Algorithmus zum Wachstum von Regionen, der in diesem Dokument beschrieben wird: http://downloads.sourceforge.net/saga-gis/gga115_03.pdf
http://www.saga-gis.org
quelle
Sie können die gdal_fillnodata ausprobieren .
quelle