Kontrast), Helligkeit und Gamma sind beliebte Attribute, die zum Optimieren von Bildern verwendet werden. Verschiedene Werte dieser Attribute werden eingestellt, um das Erscheinungsbild der Bilder zu steuern und zu verbessern. In diesem Artikel zeigen wir Ihnen, wie Sie Kontrast, Helligkeit und Gamma eines Bilds programmgesteuert in C# anpassen. Sie können dies verwenden, um Bildbearbeitungsfunktionen in Ihren .NET Anwendungen zu implementieren.
- C# Bildbearbeitungs-API
- Kontrast eines Bildes in C# anpassen
- Anpassen der Helligkeit eines Bildes in C#
- Gamma eines Bildes in C# ändern
C# API zum Anpassen von Bildkontrast, Helligkeit und Gamma
Aspose.Imaging for .NET ist eine leistungsstarke und funktionsreiche Bildverarbeitungs-API für .NET/.NET Standard-Plattformen. Es unterstützt die Bearbeitung einer Vielzahl von Bildformaten, ohne komplexen Code schreiben zu müssen. Wir werden diese API verwenden, um Kontrast, Helligkeit und Gamma von Bildern in C# anzupassen. Sie können die API herunterladen oder sie mit NuGet in Ihren .NET Anwendungen installieren.
PM> Install-Package Aspose.Imaging
Kontrast eines Bildes in C# anpassen
Der Kontrast ist definiert als der Unterschied in der Pixelintensität. Sein Wert wird angepasst, um die Objekte in einem Bild besser sichtbar und unterscheidbar zu machen. Mit hohem Kontrast sieht jedes Objekt im Bild sehr klar aus, genau wie auf Fotos, die im Sonnenlicht aufgenommen wurden. Wohingegen Sie bei niedrigem Kontrast die Objekte kaum unterscheiden können, genau wie bei Nebelwetter.
Sehen wir uns an, wie Sie den Kontrast eines Bildes in C# mit Aspose.Imaging for .NET anpassen.
- Laden Sie zuerst das Bild mit der Klasse Image.
- Wandeln Sie dann das Objekt in den Typ RasterImage um.
- Bild zwischenspeichern, wenn es die Methode RasterImage.CacheData() nicht verwendet.
- Passen Sie den Kontrast im Bereich [-100, 100] mit der methode RasterImage.AdjustContrast(float) an.
- Speichern Sie schließlich das resultierende Bild mit der methode RasterImage.Save(string).
Das folgende Codebeispiel zeigt, wie der Kontrast eines Bildes in C# angepasst wird.
// Laden Sie ein Bild in eine Instanz von Image
using (Image image = Image.Load("image.png"))
{
// In Rasterbild umwandeln
RasterImage rasterImage = (RasterImage)image;
// Zwischenspeichern Sie RasterImage für eine bessere Leistung
if (!rasterImage.IsCached)
{
rasterImage.CacheData();
}
// Kontrast anpassen
rasterImage.AdjustContrast(30);
// Bild speichern
image.Save("image-updated-contrast.png");
}
Das Folgende ist der Vergleich von Eingabe und Ausgabebildern nach Erhöhung des Kontrastwerts.
Anpassen der Helligkeit eines Bildes in C#
Das Helligkeitsattribut steuert normalerweise die Sichtbarkeit der Objekte in einem Bild. Sein Wert wird angepasst, um die Dunkelheit zu erhöhen oder zu verringern. Im Folgenden finden Sie die Schritte zum Ändern der Helligkeit eines Bilds in C#.
- Laden Sie zuerst das Bild mit der Klasse Image.
- Wandeln Sie das Objekt in den Typ RasterImage um.
- Bild zwischenspeichern, wenn es die Methode RasterImage.CacheData() nicht verwendet.
- Passen Sie die Helligkeit des Bildes mit der methode RasterImage.AdjustBrightness(float) an.
- Speichern Sie abschließend das resultierende Bild mit der methode RasterImage.Save(string).
Das folgende Codebeispiel zeigt, wie Sie die Helligkeit eines Bilds in C# anpassen.
// Laden Sie ein Bild in eine Instanz von Image
using (Image image = Image.Load("image.png"))
{
// In Rasterbild umwandeln
RasterImage rasterImage = (RasterImage)image;
// Zwischenspeichern Sie RasterImage für eine bessere Leistung
if (!rasterImage.IsCached)
{
rasterImage.CacheData();
}
// Passen Sie die Helligkeit an
rasterImage.AdjustBrightness(70);
// Bild speichern
image.Save("image-updated-bightness.png");
}
Das Folgende ist der Vergleich von Eingabe und Ausgabebildern nach dem Anpassen der Helligkeit.
Gamma eines Bildes in C# ändern
Das Gamma-Attribut wird verwendet, um das Verhältnis von Rot, Grün und Blau in einem Bild zu ändern. Darüber hinaus ändert es auch die Helligkeit des Bildes. Im Folgenden finden Sie die Schritte zum Ändern des Gammawerts eines Bilds in C#.
- Laden Sie zuerst das Bild mit der Klasse Image.
- Wandeln Sie das Objekt in den Typ RasterImage um.
- Bild zwischenspeichern, wenn es die Methode RasterImage.CacheData() nicht verwendet.
- Ändern Sie den Gammawert des Bilds mit der methode RasterImage.AdjustGamma(float, float, float).
- Speichern Sie schließlich das resultierende Bild mit der methode RasterImage.Save(string).
Das folgende Codebeispiel zeigt, wie das Gamma eines Bilds in C# angepasst wird.
// Laden Sie ein Bild in eine Instanz von Image
using (Image image = Image.Load("image.png"))
{
// In Rasterbild umwandeln
RasterImage rasterImage = (RasterImage)image;
// Zwischenspeichern Sie RasterImage für eine bessere Leistung
if (!rasterImage.IsCached)
{
rasterImage.CacheData();
}
// Gamma anpassen
rasterImage.AdjustGamma(2.2f, 2.2f, 2.2f);
// Bild speichern
image.Save("image-updated-gamma.png");
}
Das Folgende ist der Vergleich von Eingabe und Ausgabebildern nach dem Anpassen des Gammawerts.
Holen Sie sich eine kostenlose API Lizenz
Sie können eine kostenlose temporäre Lizenz erhalten, um Aspose.Imaging for .NET ohne Evaluierungseinschränkungen zu verwenden.
Fazit
In diesem Artikel haben Sie gelernt, wie Sie Kontrast, Helligkeit und Gamma von Bildern in C# anpassen. Darüber hinaus haben die Codebeispiele gezeigt, wie ein Bild nach der Änderung von Kontrast, Helligkeit und Gamma aussieht. Falls Sie mehr über die .NET Bildverarbeitungs-API erfahren möchten, besuchen Sie Dokumentation. Laden Sie auch die vollständigen Quellcodebeispiele der API von GitHub herunter. Wenn Sie Fragen oder Anregungen haben, erreichen Sie uns in unserem Forum.