Non Maximum Suppression (Image Analyst)

Mit der Image Analyst-Lizenz verfügbar.

Zusammenfassung

Identifiziert doppelte Features in der Ausgabe des Werkzeugs Objekte mit Deep Learning ermitteln in einem Nachbearbeitungsschritt und erstellt eine neue Ausgabe ohne doppelte Features. Das Werkzeug Objekte mit Deep Learning ermitteln kann mehr als einen Rahmen oder mehr als ein Polygon für dasselbe Objekt zurückgeben, insbesondere als Nebeneffekt der Kachelung. Wenn sich zwei Features stärker überlappen, als gemäß einem gegebenen maximalen Verhältnis zulässig, wird das Feature mit dem niedrigeren Konfidenzwert entfernt.

Verwendung

  • Mit diesem Werkzeug wird der "Nicht-Maxima-Unterdrückung"-Algorithmus implementiert, um doppelte Objekte zu löschen, die vom Werkzeug Objekte mit Deep Learning ermitteln erstellt wurden.

  • Die Feature-Class muss ein Konfidenzfeld mit einem Konfidenzwert für jedes Feature aufweisen.

  • Wenn die Feature-Class mehr als eine Objektklasse enthält – z. B. Bäume, Autos oder Gebäude – muss sie auch ein Feld mit entweder einem Klassenwert oder einem Klassennamen enthalten.

  • Wenn zwei sich überlappende Features ein größeres Überlappungsverhältnis aufweisen, als in Maximale Überlappungsrate angegeben, wird das Feature mit dem niedrigeren Konfidenzwert entfernt.

  • Das Werkzeug prüft zunächst die Feature-Class für jede Objektklasse separat und markiert zu entfernende doppelte Features mit dem niedrigeren Konfidenzwert. Dann prüft es alle Features und vergleicht die Features verschiedener Objektklassen. Die Ausgabe ist eine neue Feature-Class, bei der die erkannten doppelten Features entfernt wurden.

Parameter

BeschriftungErläuterungDatentyp
Eingabe-Feature-Class

Die Eingabe-Feature-Class oder der Eingabe-Feature-Layer mit überlappenden oder doppelten Features.

Feature Class; Feature Layer
Feld für die Konfidenzpunktzahl

Das Feld in der Feature-Class, das die Konfidenzpunktzahlen enthält, die von der Objekterkennungsmethode als Ausgabe verwendet werden.

Field
Ausgabe-Feature-Class

Die Ausgabe-Feature-Class, aus der die doppelten Features entfernt wurden.

Feature Class
Klassenwertefeld
(optional)

Das Klassenwertefeld in der Eingabe-Feature-Class. Wenn dieses Feld nicht festgelegt wird, verwendet das Werkzeug die Standard-Klassenwertefelder Classvalue und Value. Wenn diese Felder nicht vorhanden sind, werden alle Features wie eine Objektklasse behandelt.

Field
Max. Überlappungsrate
(optional)

Die maximale Überlappungsrate für zwei überlappende Features. Diese ist definiert als das Verhältnis von Überschneidungsfläche zu Vereinigungsfläche. Die Standardeinstellung ist 0.

Double

NonMaximumSuppression(in_featureclass, confidence_score_field, out_featureclass, {class_value_field}, {max_overlap_ratio})
NameErläuterungDatentyp
in_featureclass

Die Eingabe-Feature-Class oder der Eingabe-Feature-Layer mit überlappenden oder doppelten Features.

Feature Class; Feature Layer
confidence_score_field

Das Feld in der Feature-Class, das die Konfidenzpunktzahlen enthält, die von der Objekterkennungsmethode als Ausgabe verwendet werden.

Field
out_featureclass

Die Ausgabe-Feature-Class, aus der die doppelten Features entfernt wurden.

Feature Class
class_value_field
(optional)

Das Klassenwertefeld in der Eingabe-Feature-Class. Wenn dieses Feld nicht festgelegt wird, verwendet das Werkzeug die Standard-Klassenwertefelder Classvalue und Value. Wenn diese Felder nicht vorhanden sind, werden alle Features wie eine Objektklasse behandelt.

Field
max_overlap_ratio
(optional)

Die maximale Überlappungsrate für zwei überlappende Features. Diese ist definiert als das Verhältnis von Überschneidungsfläche zu Vereinigungsfläche. Die Standardeinstellung ist 0.

Double

Codebeispiel

NonMaximumSuppression – Beispiel 1 (Python-Fenster)

Doppelte Objekte werden mit dem Werkzeug NonMaximumSupression aus der Ausgabe entfernt.

# Import system modules
import arcpy
from arcpy.ia import *

# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")

NonMaximumSuppression("Detectcars1", "Confidence", r"c:\Classification.gdb\tf_detectobjects_cars_", "Class", 0.3)
NonMaximumSuppression – Beispiel 2 (eigenständiges Skript)

Doppelte Objekte werden mit dem Werkzeug NonMaximumSupression aus der Ausgabe entfernt.

# Import system modules
import arcpy
from arcpy.ia import *

"""
Usage: NonMaximumSuppression(in_features,confidence_score_field, 
out_features, {class_value_field}, {max_overlap_ratio})
"""

# Set local variables
in_features = "c:/classifydata/Trees.tif"
confidence_score_field = "Confidence"
out_features = "c:/detectobjects/trees.shp"
class_value_field = "Classvalue"
max_overlap_ratio = 0.2


# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")

# Execute 
NonMaximumSuppression(in_features,confidence_score_field, out_features, 
class_value_field, max_overlap_ratio)

Lizenzinformationen

  • Basic: Erfordert Image Analyst
  • Standard: Erfordert Image Analyst
  • Advanced: Erfordert Image Analyst

Verwandte Themen