Java-Zauberstab-Tool

Aspose.Imaging for Java ist eine leistungsstarke und vielseitige Bibliothek, die Entwicklern eine breite Palette an Funktionalitäten für die Arbeit mit Bildern bietet. Eine der Hauptfunktionen der Bibliothek ist das Zauberstab-Werkzeug, das eine präzise und effiziente Auswahl von Bereichen in einem Bild basierend auf Farbähnlichkeit ermöglicht. In diesem Blogbeitrag erfahren Sie, wie Sie das Zauberstab-Tool für ein Bild in Java verwenden.

Zauberstab-Werkzeug

Das Zauberstab-Werkzeug ist eine nützliche Funktion in Bildbearbeitungsprogrammen wie Adobe Photoshop. Es wird zum Auswählen von Bereichen mit ähnlichen Farben oder Tönen in einem Bild verwendet. Das Tool funktioniert, indem es auf einen bestimmten Punkt im Bild klickt und anhand einer Toleranzeinstellung automatisch zusammenhängende Bereiche mit ähnlichen Farb oder Tonwerten auswählt. Sehen wir uns an, wie wir das Magic Wand-Tool programmgesteuert in Java-Anwendungen verwenden können.

Zauberstab-Tool für Java

Wir werden das Magic Wand-Tool von Aspose.Imaging for Java verwenden – eine API, die es Entwicklern ermöglicht, mit verschiedenen Bildformaten in ihren Java-Anwendungen zu arbeiten. Es ermöglicht die Durchführung einer Vielzahl von Aufgaben im Zusammenhang mit der Bildverarbeitung und -manipulation, wie z. B. Bearbeitung, Konvertierung, Komprimierung und Farbanpassung.

Um Aspose.Imaging for Java zu installieren, verwenden Sie die folgenden Maven-Konfigurationen oder laden Sie die JAR-Datei herunter.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository> 

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-imaging</artifactId>
    <version>23.10</version>
    <classifier>jdk16</classifier>
</dependency>

Verwendung des Magic Wand Tools in Java

Mit der Klasse MagicWandTool können Sie Auswahl-, Vereinigungs-, Invertierungs und Subtraktionsoperationen für ein Bild ausführen. Wenn Sie einen bestimmten Farbbereich innerhalb eines Bildes auswählen, müssen Sie die X und Y-Koordinaten innerhalb des gewünschten Bereichs angeben. Das Zauberstab-Werkzeug wertet dann den Ton und die Farbe des ausgewählten Pixels im Vergleich zu seinen Nachbarpixeln aus. Wenn eine Ähnlichkeit erkannt wird, generiert das Tool eine Maske für den ausgewählten Bereich.

Mithilfe der Klasse MagicWandSettings können Sie die Toleranz festlegen. Ein höherer Toleranzwert bedeutet, dass ein breiterer Farbbereich in die Auswahl einbezogen wird, während ein niedrigerer Toleranzwert die Auswahl auf einen engeren Bereich ähnlicher Farben beschränkt.

Im Folgenden finden Sie die Schritte zur Verwendung des Magic Wand-Tools in Java.

  • Laden Sie zunächst das Bild als RasterImage mit der Methode Image.load.
  • Erstellen Sie dann eine Instanz der MagicWandSettings Klasse und initialisieren Sie sie mit X und Y-Referenzkoordinaten.
  • Erstellen Sie mit dem Zauberstab-Werkzeug eine neue Maske basierend auf dem Ton und der Farbe des Pixels mit der Methode MagicWandTool.select.
  • Verwenden Sie die gewünschten Zauberstabfunktionen auf dem Bild.
  • Rufen Sie die Methode apply() auf, um die Maske anzuwenden.
  • Speichern Sie abschließend das Bild mit der Methode Image.save().

Siehe Referenzen der in den obigen Schritten verwendeten Klassen und Methoden.

Der folgende Codeausschnitt zeigt, wie Sie das Zauberstab-Tool für ein Bild in Java verwenden.

import com.aspose.imaging.Image;
import com.aspose.imaging.RasterImage;
import com.aspose.imaging.magicwand.*;
import com.aspose.imaging.magicwand.imagemasks.*;

// Pfad der Eingabedaten abrufen
String templatesFolder = System.getenv("DATA_PATH");
// Ausgabepfad abrufen
String outputFolder = System.getenv("OUT_PATH");

if (templatesFolder == null)
   templatesFolder = "data";

if (outputFolder == null)
  outputFolder = "out";


try (RasterImage image = (RasterImage)Image.load(templatesFolder + "/template.png"))
{
	// Erstellen Sie eine neue Maske mit dem Zauberstab-Werkzeug basierend auf Ton und Farbe des Pixels {845, 128}
	MagicWandTool.select(image, new MagicWandSettings(10, 10))
		// Vereinigen Sie die vorhandene Maske mit der angegebenen Maske, die mit dem Zauberstab-Werkzeug erstellt wurde
		.union(new MagicWandSettings(30, 30))
		// Kehren Sie die vorhandene Maske um
		.invert()
		// Subtrahieren Sie die vom Zauberstab-Werkzeug erstellte angegebene Maske von der vorhandenen 
		.subtract(new MagicWandSettings(50, 50) {{ setThreshold(69); }})
		// Subtrahieren Sie nacheinander vier angegebene Rechteckmasken von der vorhandenen Maske
		.subtract(new RectangleMask(0, 0, 50, 50))
		// Federmaske mit angegebenen Einstellungen
		.getFeathered(new FeatheringSettings() {{ setSize(3); }})
		// Tragen Sie eine Maske auf das Bild auf
		.apply();
	image.save(outputFolder + "/result.png");
}

Holen Sie sich eine kostenlose Lizenz

Erhalten Sie eine kostenlose temporäre Lizenz und testen Sie das Java Magic Wand-Tool ohne Einschränkungen.

Abschluss

In diesem Blogbeitrag haben wir das Magic Wand-Tool in Java mithilfe einer leistungsstarken Bildverarbeitungsbibliothek untersucht, die es Entwicklern ermöglicht, eine Bildauswahl basierend auf Farbähnlichkeit durchzuführen. Wenn Sie die in dieser Anleitung beschriebenen Schritte befolgen, können Sie das Magic Wand-Tool nahtlos in Ihre Java-Anwendungen integrieren und eine Vielzahl von Möglichkeiten zur Bildmanipulation und -bearbeitung freischalten.

Aspose.Imaging for Java bietet umfassende Funktionen für die Arbeit mit Bildern. Weitere Informationen zur Bibliothek finden Sie in der Dokumentation. Sie können Ihre Fragen auch in unserem Forum posten.

Siehe auch