How to Automatically Mask Backgrounds in Agisoft Metashape

Wie man Hintergründe in Agisoft Metashape automatisch maskiert

Eine der effektivsten Möglichkeiten zur Verbesserung der Modellqualität und zur Reduzierung von Rauschen in Agisoft Metashape ist das Entfernen unerwünschter Hintergründe aus Bildern. Während die manuelle Maskierung mühsam ist, bietet Metashape leistungsstarke Optionen für die automatische Hintergrundmaskierung. Dieser Artikel erklärt die verfügbaren Methoden, schrittweise Arbeitsabläufe und wie Sie die Maskierung mit Python-Skripten automatisieren können.

Warum Hintergründe maskieren?

  • Reduzieren Sie Rekonstruktionsrauschen, das durch unübersichtliche oder irrelevante Hintergründe verursacht wird.
  • Verbessern Sie die Ausrichtungsgenauigkeit, insbesondere in kontrollierten Umgebungen
  • Beschleunigen Sie die Erzeugung einer dichten Wolke, indem Sie die Verarbeitung auf Schlüsselbereiche beschränken.

Methode 1: Maskierung des Hintergrunds aus dem Hintergrundbild verwenden

Wenn Sie ein Foto des Hintergrunds ohne das Objekt haben (z. B. ein Drehscheibenstudio oder einen leeren Hintergrund), kann Metashape den Hintergrund automatisch durch Vergleich subtrahieren.

  1. Wählen Sie alle Fotos aus, die maskiert werden müssen.
  2. Gehen Sie zu Tools → Import Masks.
  3. Wählen Sie als Methode „Aus dem Hintergrund“.
  4. Legen Sie den Pfad zum Hintergrundbild fest (gleiche Auflösung, gleiche Kamera).
  5. Wenden Sie die generierten Masken an und überprüfen Sie sie.

Diese Methode funktioniert am besten bei statischen Motiven, bei denen sich Beleuchtung und Perspektive nicht wesentlich ändern.

Methode 2: Farbbereich zum Maskieren verwenden

Wenn Ihr Hintergrund einheitlich ist (z.B. ein grüner Bildschirm oder weißes Papier), können Sie nach Farbe maskieren.

  1. Wählen Sie das/die Foto(s) aus.
  2. Verwenden Sie die Magic Wand Tool in der Symbolleiste Maskierung.
  3. Klicken Sie auf den Hintergrundbereich. Passen Sie die Toleranz nach Bedarf an.
  4. Klicken Sie auf Add Selection, um den Bereich in eine Maske zu verwandeln.
  5. Wenden Sie die Maske mit Tools → Apply Masks to All Cameras auf alle Fotos an.

Bei Batch-Workflows kann dieser Ansatz mühsam sein, wenn er nicht automatisiert wird (siehe Abschnitt Python unten).

Methode 3: Maskierung vom Modell verwenden

Wenn Sie bereits über ein grobes Modell verfügen, können Sie dieses verwenden, um Masken für die Originalbilder zu erstellen, indem Sie die 3D-Geometrie auf die Fotos projizieren:

  1. Erstellen Sie ein spärliches oder dichtes Modell.
  2. Gehen Sie zu Tools → Import Masks.
  3. Wählen Sie „Aus Modell“ und wählen Sie „Nur Schlüsselbereich behalten“.
  4. Metashape maskiert alle Bereiche, die nicht von der Modellprojektion abgedeckt werden.

Diese Methode ist besonders hilfreich, um fließende Hintergrundpunkte aus Modellen im Anfangsstadium zu entfernen.

Methode 4: Verwendung von Hintergrundmasken über Python Automation

Bei großen Projekten oder einheitlichen Studio-Setups können Sie mit Python-Skripten die Maskierung von Hunderten von Fotos automatisieren.

import Metashape

doc = Metashape.app.document
chunk = doc.chunk

background_path = "C:/background.jpg"

for camera in chunk.cameras:
    chunk.importMask(path=background_path,
                     source=Metashape.MaskSourceBackground,
                     operation=Metashape.MaskOperationReplacement,
                     cameras=[camera])

Dieses Skript importiert ein Hintergrundbild und erzeugt Masken für alle Kameras, die dieses Bild verwenden. Sie können es so anpassen, dass es auch mit farbbasierten Masken funktioniert.

Exportieren und Wiederverwenden von Masken

Sie können Zeit sparen, indem Sie Ihre Masken für zukünftige Projekte exportieren:

  • Gehen Sie zu File → Export Masks
  • Wählen Sie das Format: PNG, BMP, oder TIFF
  • In zukünftigen Sitzungen neu laden über Import Masks → From File

Bewährte Praktiken

  • Verwenden Sie eine gleichmäßige Beleuchtung, um falsche Maskenränder zu vermeiden.
  • Vermeiden Sie Schatten oder Reflexionen auf Hintergrundflächen
  • Verwenden Sie keine verlustbehaftet komprimierten Hintergrundbilder
  • Überprüfen Sie die Masken in der „Maskenansicht“ für jede Kamera

Einschränkungen bei der Maskierung

  • Masken sind auflösungsabhängig: eine leichte Verschiebung der Kameraposition kann die Maske zerstören.
  • Die Farbmaskierung ist bei strukturierten oder komplexen Hintergründen weniger effektiv.
  • Die Maskierung gilt nur für bestimmte Verarbeitungsschritte (z.B. dichte Wolke, Modell), nicht für die Erzeugung von Ankerpunkten

Anwendungsfälle für Hintergrundmaskierung

  • 3D-Scannen von Produkten mit Drehtellern
  • Digitalisierung von Museumsobjekten
  • Forschungsphotogrammetrie im Labor mit kontrollierter Beleuchtung
  • Entfernen von Bäumen oder Strukturen auf Luftbildern

Fazit

Die automatische Hintergrundmaskierung in Agisoft Metashape ermöglicht es Ihnen, Ihren Rekonstruktionsprozess zu rationalisieren, die Genauigkeit Ihrer Modelle zu verbessern und den Zeitaufwand für manuelle Bearbeitungen zu reduzieren. Ganz gleich, ob Sie mit kontrollierten Objektscans oder verrauschten Luftbilddatensätzen arbeiten, die Beherrschung der Maskierungswerkzeuge kann Ihre Ergebnisse erheblich verbessern. Nutzen Sie die integrierten Optionen oder automatisieren Sie mit Python, um Ihren Arbeitsablauf auf ein neues Niveau zu bringen.