Regola contrasto, luminosità e gamma dell'immagine in C#

Contrasto), luminosità e gamma sono attributi popolari utilizzati per ottimizzare le immagini. Valori diversi di questi attributi sono impostati per controllare e migliorare l’aspetto delle immagini. In questo articolo, ti mostreremo come regolare il contrasto, la luminosità e la gamma di un’immagine a livello di codice in C#. Puoi utilizzarlo per implementare funzionalità di modifica delle immagini all’interno delle tue applicazioni .NET.

API C# per regolare il contrasto, la luminosità e la gamma dell’immagine

Aspose.Imaging for .NET è un’API di elaborazione delle immagini potente e ricca di funzionalità per piattaforme .NET/.NET Standard. Supporta la manipolazione di un’ampia gamma di formati di immagine senza scrivere codice complesso. Utilizzeremo questa API per regolare il contrasto, la luminosità e la gamma delle immagini in C#. Puoi scaricare l’API o installarla nelle tue applicazioni .NET usando NuGet.

PM> Install-Package Aspose.Imaging

Regola il contrasto di un’immagine in C#

Il contrasto è definito come la differenza di intensità dei pixel. Il suo valore viene regolato per rendere gli oggetti in un’immagine più visibili e distinguibili. Con un contrasto elevato, ogni oggetto nell’immagine appare molto chiaro, proprio come le fotografie scattate alla luce del sole. Considerando che, con un basso contrasto, difficilmente si distinguono gli oggetti proprio come nella nebbia.

Diamo un’occhiata a come regolare il contrasto di un’immagine in C# usando Aspose.Imaging per .NET.

Nell’esempio di codice seguente viene illustrato come regolare il contrasto di un’immagine in C#.

// Carica un'immagine in un'istanza di Image
using (Image image = Image.Load("image.png"))
{
    // Trasmetti all'immagine raster
    RasterImage rasterImage = (RasterImage)image;

    // Cache RasterImage per prestazioni migliori
    if (!rasterImage.IsCached)
    {
        rasterImage.CacheData();
    }

    // Regola il contrasto
    rasterImage.AdjustContrast(30);             

    // Salva immagine
    image.Save("image-updated-contrast.png");
}

Quello che segue è il confronto delle immagini in ingresso e in uscita dopo l’aumento del valore di contrasto.

Regola il contrasto delle immagini in C#

Regola il contrasto dell’immagine

Regola la luminosità di un’immagine in C#

L’attributo di luminosità di solito controlla la visibilità degli oggetti in un’immagine. Il suo valore viene regolato per aumentare o diminuire l’oscurità. Di seguito sono riportati i passaggi per modificare la luminosità di un’immagine in C#.

L’esempio di codice seguente mostra come regolare la luminosità di un’immagine in C#.

// Carica un'immagine in un'istanza di Image
using (Image image = Image.Load("image.png"))
{
    // Trasmetti all'immagine raster
    RasterImage rasterImage = (RasterImage)image;

    // Cache RasterImage per prestazioni migliori
    if (!rasterImage.IsCached)
    {
        rasterImage.CacheData();
    }

    // Regola la luminosità
    rasterImage.AdjustBrightness(70);

    // Salva immagine
    image.Save("image-updated-bightness.png");
}

Quello che segue è il confronto delle immagini in ingresso e in uscita dopo aver regolato la luminosità.

Regola la luminosità delle immagini in C#

Regola la luminosità dell’immagine

Modifica la gamma di un’immagine in C#

L’attributo gamma viene utilizzato per modificare il rapporto tra i colori rosso, verde e blu in un’immagine. Inoltre, modifica anche la luminosità dell’immagine. Di seguito sono riportati i passaggi per modificare il valore gamma di un’immagine in C#.

L’esempio di codice seguente mostra come regolare la gamma di un’immagine in C#.

// Carica un'immagine in un'istanza di Image
using (Image image = Image.Load("image.png"))
{
    // Trasmetti all'immagine raster
    RasterImage rasterImage = (RasterImage)image;

    // Cache RasterImage per prestazioni migliori
    if (!rasterImage.IsCached)
    {
        rasterImage.CacheData();
    }

    // Regola la gamma
    rasterImage.AdjustGamma(2.2f, 2.2f, 2.2f);

    // Salva immagine
    image.Save("image-updated-gamma.png");
}

Quello che segue è il confronto delle immagini in ingresso e in uscita dopo aver regolato il valore gamma.

Regola la gamma di immagini in C#

Regola la gamma dell’immagine

Ottieni una licenza API gratuita

Puoi ottenere una licenza temporanea gratuita per utilizzare Aspose.Imaging per .NET senza limitazioni di valutazione.

Conclusione

In questo articolo hai imparato come regolare il contrasto, la luminosità e la gamma delle immagini in C#. Inoltre, gli esempi di codice hanno dimostrato come appare un’immagine dopo aver modificato il contrasto, la luminosità e la gamma. Nel caso in cui desideri esplorare di più sull’API di elaborazione delle immagini .NET, visita la documentazione. Inoltre, scarica gli esempi completi di codice sorgente dell’API da GitHub. Se hai domande o domande, contattaci sul nostro forum.

Guarda anche