Bild in Graustufen umwandeln C#

In verschiedenen Fällen müssen Sie möglicherweise Farbbilder in Graustufen oder Schwarzweiß konvertieren, z. B. bei der Bildverarbeitung usw. Daher erfahren Sie in diesem Artikel, wie Sie ein Bild mit C# in Graustufen konvertieren. Darüber hinaus wird der Artikel die Grauskalierung und Binarisierung der Bilder explizit behandeln.

C# API zum Konvertieren von Bildern in Graustufen

Um RGB-Farbbilder in Graustufen umzuwandeln, verwenden wir Aspose.Imaging for .NET. Es ist eine leistungsstarke Bildverarbeitungs-API, mit der Sie gängige Bildformate nahtlos bearbeiten können. Sie können die API entweder herunterladen oder sie mit NuGet installieren.

PM> Install-Package Aspose.Imaging

Konvertieren Sie ein Bild in C# in Graustufen

Im Folgenden werden die Schritte zum Konvertieren eines Farbbilds in Graustufen in C# beschrieben.

Das folgende Codebeispiel zeigt, wie Sie ein Bild mit C# in Graustufen konvertieren.

// Laden Sie ein Bild in eine Instanz der Image Klasse
using (Image image = Image.Load("aspose.jpg"))
{
    // Wandeln Sie das Bild in RasterCachedImage um und prüfen Sie, ob das Bild zwischengespeichert ist
    RasterCachedImage rasterCachedImage = (RasterCachedImage)image;
    if (!rasterCachedImage.IsCached)
    {
        // Bild zwischenspeichern, falls noch nicht zwischengespeichert
        rasterCachedImage.CacheData();
    }

    // Wandeln Sie das Bild in seine Graustufendarstellung um
    rasterCachedImage.Grayscale();
    
    // Speichern Sie das Bild
    rasterCachedImage.Save("grayscaled.jpg");
}

Eingabebild

Das Folgende ist ein Beispielbild, das in diesem Artikel verwendet wird.

Bild in Graustufen C#

In Graustufen konvertiert

Das Folgende ist das Bild nach der Umwandlung in Graustufen.

Graustufenbild

Konvertieren Sie Bilder mit Binarisierung in Schwarzweiß

Bei der Binarisierung kann jedes Pixel in einem Bild nur zwei mögliche Werte haben; 0 oder 1. Dabei bedeutet 0 das Fehlen und 1 das Vorhandensein der Farbe. Aspose.Imaging unterstützt zwei Binarisierungsmethoden, dh Binarisierung mit festem und Binarisierung mit Otsu-Schwellenwert.

Binarisierung mit festem Schwellenwert in C#

Im Folgenden sind die Schritte zum Durchführen der Binarisierung eines Bildes unter Verwendung eines festen Schwellenwerts aufgeführt.

Der folgende C# Code wendet die Binarisierung auf ein Bild an und konvertiert es in Schwarzweiß.

// Laden Sie ein Bild in eine Instanz der Image Klasse
using (Image image = Image.Load("aspose.jpg"))
{
    // Wandeln Sie das Bild in RasterCachedImage um und prüfen Sie, ob das Bild zwischengespeichert ist
    RasterCachedImage rasterCachedImage = (RasterCachedImage)image;
    if (!rasterCachedImage.IsCached)
    {
        // Bild zwischenspeichern, falls nicht bereits zwischengespeichert
        rasterCachedImage.CacheData();
    }

    // Wandeln Sie das Bild in seine binäre Darstellung um
    rasterCachedImage.BinarizeFixed(100);
    
    // Speichern Sie das Bild
    rasterCachedImage.Save("black and white.jpg");
}

Binarisierung mit Otsu Threshold in C#

Im Folgenden sind die Schritte zum Konvertieren eines Bildes in Schwarzweiß mit dem Otsu-Schwellenwert aufgeführt.

Das folgende Codebeispiel zeigt, wie Sie ein Bild mit dem Otsu-Schwellenwert mithilfe von C# in Schwarzweiß konvertieren.

// Laden Sie ein Bild in eine Instanz der Image Klasse
using (Image image = Image.Load("aspose.jpg"))
{
    // Wandeln Sie das Bild in RasterCachedImage um und prüfen Sie, ob das Bild zwischengespeichert ist
    RasterCachedImage rasterCachedImage = (RasterCachedImage)image;
    if (!rasterCachedImage.IsCached)
    {
        // Bild zwischenspeichern, falls noch nicht zwischengespeichert
        rasterCachedImage.CacheData();
    }

    // Wandeln Sie das Bild in seine binäre Darstellung um
    rasterCachedImage.BinarizeOtsu();
    
    // Speichern Sie das Bild
    rasterCachedImage.Save("black and white.jpg");
}

Holen Sie sich eine kostenlose API Lizenz

Sie können eine kostenlose temporäre Lizenz erhalten, um die API ohne Evaluierungseinschränkungen zu verwenden.

Fazit

In diesem Artikel haben Sie gelernt, wie Sie ein Bild mit C# in Graustufen und Schwarzweiß konvertieren. Außerdem haben Sie gesehen, wie Sie die Binarisierung auf die Bilder mit festem oder Otsu-Schwellenwert anwenden. Darüber hinaus können Sie mithilfe von Dokumentation mehr über die C# Bildverarbeitungs-API erfahren. Außerdem können Sie uns Ihre Fragen über unser Forum mitteilen.

Siehe auch