Wenden Sie Median und Wiener-Filter auf Bilder in C# an

Die Bildbearbeitung wird in verschiedenen Anwendungen verwendet, um Bilder für die weitere Verarbeitung zu manipulieren. Wir haben eine Reihe von Blogs geschrieben, z. B. Zuschneiden, Drehen, Verwischen usw., die für Sie nützlich sind, um Bildbearbeitungsfunktionen in Ihren Anwendungen zu implementieren. In diesem Artikel 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 C# auf ein Bild angewendet werden.

C# API zum Anwenden von Median und Wiener bildfiltern – kostenloser Download

Aspose.Imaging for .NET ist eine erstaunliche API zur Implementierung von Bildbearbeitungsfunktionen in .NET-Anwendungen. Wir werden diese API verwenden, um Median und Wiener-Filter auf Bilder anzuwenden. Sie können die API entweder herunterladen oder von NuGet installieren.

PM> Install-Package Aspose.Imaging

Wenden Sie den Medianfilter auf ein Bild in C# an

Der Medianfilter ist eine nichtlineare digitale Filtertechnik, die verwendet wird, um das Rauschen von Bildern zu reduzieren. Im Folgenden finden Sie die Schritte zum Anwenden eines Medianfilters auf ein Bild in C#.

Das folgende Codebeispiel zeigt, wie Sie in C# einen Medianfilter auf ein Bild anwenden.

// Laden Sie das verrauschte Bild 
using (Image image = Image.Load("jack.jpg"))
{
    // Gießen Sie das Bild in RasterImage
    RasterImage rasterImage = image as RasterImage;
    if (rasterImage == null)
    {
        return;
    }

    // Erstellen Sie eine Instanz der MedianFilterOptions Klasse und legen Sie die Größe fest
    MedianFilterOptions options = new MedianFilterOptions(4);
    
    // Filter anwenden und Bild speichern
    rasterImage.Filter(image.Bounds, options);
    image.Save("jack_median.jpg");
}

Unten sehen Sie das Bild vor und nach der Anwendung des Medianfilters.

Medianfilter auf Bild anwenden C#

Anwenden des Gauß-Wiener-Filters auf ein Bild in C#

Eine weitere häufig verwendete Methode zur Minimierung von additivem Rauschen und Unschärfe in den Bildern ist Gauss Wiener. Im Folgenden finden Sie die Schritte zum Anwenden des Gauß-Wiener-Filters auf ein Bild in C#.

Das folgende Codebeispiel zeigt, wie ein Gauß-Wiener-Filter auf ein Bild in C# angewendet wird.

// Laden Sie das verrauschte Bild 
using (Image image = Image.Load("jack.jpg"))
{
    // Gießen Sie das Bild in RasterImage
    RasterImage rasterImage = image as RasterImage;
    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.Grayscale = true;

    // Wenden Sie den MedianFilterOptions-Filter auf das RasterImage Objekt an und speichern Sie das resultierende Bild
    rasterImage.Filter(image.Bounds, options);
    image.Save("jack_guass.jpg");
}

Unten sehen Sie das Bild vor und nach dem Anwenden des Gauß-Wiener-Filters mit der Graustufenoption.

Wenden Sie den Gauß-Weiner-Filter auf die Bildgrauskalierung an

Das Folgende ist das Bild vor und nach der Anwendung des Gauß-Wiener-Filters ohne Grauskalierung.

Wenden Sie den Gauß-Weiner-Farbfilter auf das Bild an

Anwenden des Motion-Wiener-Filters auf ein Bild in C#

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 C#.

Das folgende Codebeispiel zeigt, wie Sie einen Bewegungs-Wiener-Filter auf ein Bild in C# anwenden.

// Laden Sie das verrauschte Bild 
using (Image image = Image.Load("jack.jpg"))
{
    // Gießen Sie das Bild in RasterImage
    RasterImage rasterImage = image as RasterImage;
    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(50, 9, 90);
    options.Grayscale = true;

    // Wenden Sie den MedianFilterOptions-Filter auf das RasterImage Objekt an und speichern Sie das resultierende Bild
    rasterImage.Filter(image.Bounds, options);
    image.Save("jack_MotionWiener.jpg");
}
Anwenden des Motion Weiner-Filters auf ein Bild in C#

C# 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 C# 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 Features ganz einfach in Ihrer C#-Anwendung verwenden, um Bildbearbeitungsfunktionen zu integrieren.

Weiterlesen

Weitere Informationen zur .NET bildverarbeitungs-API finden Sie unter Dokumentation. Außerdem können Sie uns Ihre Fragen über unser Forum mitteilen.

Siehe auch