Im vorherigen Blogbeitrag haben wir gezeigt, wie man den Unschärfeeffekt zu den Bildern hinzufügt. Heute zeigen wir Ihnen, wie Sie Median und Wienerfilter anwenden, die häufig zum Entrauschen und Glätten von Bildern verwendet werden. Sehen wir uns also an, wie Median und Wiener-Filer programmgesteuert in Java auf ein Bild angewendet werden.
- Java-API zum Anwenden von Median und Wiener bildfiltern
- Wenden Sie den Medianfilter auf ein Bild in Java an
- Wenden Sie den Gauss-Wiener-Filter auf ein Bild an
- Motion-Wiener-Filterung eines Bildes
Java-API zum Anwenden von Median und Wiener bildfiltern – kostenloser Download
Um die Median und Wiener-Filter auf Bilder anzuwenden, verwenden wir Aspose.Imaging for Java. Es ist eine leistungsstarke Bildbearbeitungs-API, um die Bilder aus den Java-Anwendungen heraus zu manipulieren. Sie können die API entweder herunterladen oder sie mit den folgenden Maven-Konfigurationen installieren.
<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>22.9</version>
</dependency>
Wenden Sie den Medianfilter auf ein Bild in Java an
Der Medianfilter ist eine nichtlineare digitale Filtertechnik, die eine beliebte Methode zum Entrauschen von Bildern ist. Im Folgenden sind die Schritte zum Anwenden eines Medianfilters auf ein Bild in Java aufgeführt.
- Laden Sie zuerst das Bild mit der Methode Image.load().
- Wandeln Sie das Bild dann in den Typ RasterImage um.
- Erstellen Sie eine Instanz der Klasse MedianFilterOptions und initialisieren Sie sie mit der Größe des Rechtecks.
- Wenden Sie den Medianfilter mit der Methode RasterImage.filter(Rectangle, MedianFilterOptions) an.
- Speichern Sie schließlich das resultierende Bild mit der Methode RasterImage.save().
Das folgende Codebeispiel zeigt, wie Sie einen Medianfilter auf ein Bild in Java anwenden.
// Laden Sie das verrauschte Bild
Image image = Image.load("jack.jpg");
// Cast das Bild in RasterImage
RasterImage rasterImage = (RasterImage) image;
if (rasterImage == null) {
return;
}
// Erstellen Sie eine Instanz der MedianFilterOptions Klasse und legen Sie die Größe fest.
MedianFilterOptions options = new MedianFilterOptions(4);
// Wenden Sie den MedianFilterOptions-Filter auf das RasterImage Objekt an.
rasterImage.filter(image.getBounds(), options);
// Speichern Sie das resultierende Bild
image.save("Jac_median_denoise.jpg");
Unten sehen Sie das Bild vor und nach der Anwendung des Medianfilters.
Wenden Sie den Gauss-Wiener-Filter auf ein Bild in Java an
Gauss Wiener ist eine weitere häufig verwendete Methode zur Bildkorrektur durch Minimierung von additivem Rauschen und Unschärfe. Im Folgenden finden Sie die Schritte zum Anwenden des Gauss-Wiener-Filters auf ein Bild in Java.
- Laden Sie zuerst das Bild mit der Methode Image.load().
- Wandeln Sie das Bild dann in den Typ RasterImage um.
- Erstellen Sie eine Instanz der Klasse GaussWienerFilterOptions und initialisieren Sie sie mit der Radiusgröße und dem Glättungswert.
- (Optional) Um ein Graustufenbild zu erhalten, verwenden Sie die Methode GaussWienerFilterOptions.setGrayscale(true).
- Wenden Sie den Gauss-Wiener-Filter mit der Methode RasterImage.filter(Rectangle, GaussWienerFilterOptions) an.
- Speichern Sie schließlich das resultierende Bild mit der Methode RasterImage.save().
Das folgende Codebeispiel zeigt, wie ein gauss wiener-Filter auf ein Bild in Java angewendet wird.
// Laden Sie das Bild
Image image = Image.load("jack.jpg");
// Cast das Bild in RasterImage
RasterImage rasterImage = (RasterImage) image;
if (rasterImage == null) {
return;
}
// Erstellen Sie eine Instanz der Klasse GaussWienerFilterOptions und legen Sie die Radiusgröße und den Glättungswert fest.
GaussWienerFilterOptions options = new GaussWienerFilterOptions(12, 3);
options.setGrayscale(true);
// Wenden Sie den GaußWienerFilterOptions-Filter auf das RasterImage Objekt an.
rasterImage.filter(image.getBounds(), options);
// Speichern Sie das resultierende Bild
image.save("Jac_gauss_weiner.jpg");
Unten sehen Sie das Bild vor und nach dem Anwenden des Gauss-Wiener-Filters mit der Graustufenoption.
Das Folgende ist das Bild vor und nach dem Anwenden des Gauss-Wiener-Filters ohne Graustufen.
Wenden Sie den Motion-Wiener-Filter auf ein Bild in Java an
Der Bewegungs-Wiener-Filter wird verwendet, um die Unschärfe eines Bildes zu entfernen, das aufgrund der sich bewegenden Objekte erzeugt wird. Im Folgenden finden Sie die Schritte zum Anwenden des Bewegungs-Wiener-Filters auf ein Bild in Java.
- Laden Sie zuerst das Bild mit der Methode Image.load().
- Wandeln Sie das Bild dann in den Typ RasterImage um.
- Erstellen Sie eine Instanz der Klasse MotionWienerFilterOptions und initialisieren Sie sie mit Länge, Glättungswert und Winkel.
- Wenden Sie den Bewegungs-Wiener-Filter mit der Methode RasterImage.filter(Rectangle, MotionWienerFilterOptions) an.
- Speichern Sie schließlich das resultierende Bild mit der Methode RasterImage.save().
Das folgende Codebeispiel zeigt, wie Sie einen Bewegungs-Wiener-Filter auf ein Bild in Java anwenden.
// Laden Sie das Bild
Image image = Image.load("jack.jpg");
// Cast das Bild in RasterImage
RasterImage rasterImage = (RasterImage) image;
if (rasterImage == null) {
return;
}
// Erstellen Sie eine Instanz der MotionWienerFilterOptions Klasse und legen Sie die Länge, den Glättungswert und den Winkel fest.
MotionWienerFilterOptions options = new MotionWienerFilterOptions(10, 2, 10);
//options.setGrayscale(true);
// Wenden Sie den MotionWienerFilterOptions-Filter auf das RasterImage Objekt an.
rasterImage.filter(image.getBounds(), options);
// Speichern Sie das resultierende Bild
image.save("Jac_motion_weiner.jpg");
Java Median und Wiener Image Filtering API – Holen Sie sich eine kostenlose Lizenz
Sie können eine kostenlose temporäre Lizenz erhalten und ohne Bewertungseinschränkungen Median und Wiener-Filter auf Bilder anwenden.
Fazit
In diesem Artikel haben Sie gelernt, wie Sie Median und Wiener-Filter auf Bilder in Java anwenden. Darüber hinaus haben wir behandelt, wie Sie das Rauschen von sich bewegenden Objekten in einem Bild reduzieren können. Sie können diese Funktionen problemlos in Ihre Java-Anwendung verwenden, um Bildbearbeitungsfunktionen zu integrieren.
Weiterlesen
Weitere Informationen zur Java bildverarbeitungs-API finden Sie unter Dokumentation. Außerdem können Sie uns Ihre Fragen über unser Forum mitteilen.