Contraste), brillo y gamma son atributos populares que se utilizan para ajustar las imágenes. Se establecen diferentes valores de estos atributos para controlar y mejorar la apariencia de las imágenes. En este artículo, le mostraremos cómo ajustar el contraste, el brillo y la gamma de una imagen mediante programación en C#. Puede utilizar esto para implementar capacidades de edición de imágenes desde sus aplicaciones .NET.
- API de edición de imágenes de C#
- Ajustar el contraste de una imagen en C#
- Ajustar el brillo de una imagen en C#
- Modificar gamma de una imagen en C#
API de C# para ajustar el contraste, el brillo y la gamma de la imagen
Aspose.Imaging for .NET es una API de procesamiento de imágenes potente y rica en funciones para las plataformas .NET/.NET Standard. Admite la manipulación de una amplia gama de formatos de imagen sin escribir código complejo. Usaremos esta API para ajustar el contraste, el brillo y la gamma de las imágenes en C#. Puede descargar la API o instalarla en sus aplicaciones .NET usando NuGet.
PM> Install-Package Aspose.Imaging
Ajustar el contraste de una imagen en C#
El contraste se define como la diferencia en la intensidad de los píxeles. Su valor se ajusta para hacer que los objetos de una imagen sean más visibles y distinguibles. Con alto contraste, todos los objetos de la imagen se ven muy claros como las fotografías tomadas a la luz del sol. Mientras que, con bajo contraste, apenas se distinguen los objetos como en la niebla.
Veamos cómo ajustar el contraste de una imagen en C# usando Aspose.Imaging for .NET.
- Primero, cargue la imagen usando la clase Image.
- Luego, convierta el objeto al tipo RasterImage.
- Caché de imagen si no está usando el método RasterImage.CacheData().
- Ajuste el contraste en el rango [-100, 100] usando el método RasterImage.AdjustContrast(float).
- Finalmente, guarde la imagen resultante usando el método RasterImage.Save(string).
El siguiente ejemplo de código muestra cómo ajustar el contraste de una imagen en C#.
// Cargue una imagen en una instancia de Imagen
using (Image image = Image.Load("image.png"))
{
// Transmitir a imagen ráster
RasterImage rasterImage = (RasterImage)image;
// Cache RasterImage para un mejor rendimiento
if (!rasterImage.IsCached)
{
rasterImage.CacheData();
}
// Ajustar el contraste
rasterImage.AdjustContrast(30);
// Guardar imagen
image.Save("image-updated-contrast.png");
}
La siguiente es la comparación de las imágenes de entrada y salida después de aumentar el valor de contraste.
Ajustar el brillo de una imagen en C#
El atributo de brillo generalmente controla la visibilidad de los objetos en una imagen. Su valor se ajusta para aumentar o disminuir la oscuridad. Los siguientes son los pasos para modificar el brillo de una imagen en C#.
- Primero, cargue la imagen usando la clase Image.
- Transmitir objeto al tipo RasterImage.
- Caché de imagen si no está usando el método RasterImage.CacheData().
- Ajuste el brillo de la imagen usando el método RasterImage.AdjustBrightness(float).
- Finalmente, guarde la imagen resultante usando el método RasterImage.Save(string).
El siguiente ejemplo de código muestra cómo ajustar el brillo de una imagen en C#.
// Cargue una imagen en una instancia de Imagen
using (Image image = Image.Load("image.png"))
{
// Transmitir a imagen ráster
RasterImage rasterImage = (RasterImage)image;
// Cache RasterImage para un mejor rendimiento
if (!rasterImage.IsCached)
{
rasterImage.CacheData();
}
// Ajustar el brillo
rasterImage.AdjustBrightness(70);
// Guardar imagen
image.Save("image-updated-bightness.png");
}
La siguiente es la comparación de las imágenes de entrada y salida después de ajustar el brillo.
Modificar gamma de una imagen en C#
El atributo gamma se utiliza para modificar la proporción de colores rojo, verde y azul en una imagen. Además, también modifica el brillo de la imagen. Los siguientes son los pasos para cambiar el valor gamma de una imagen en C#.
- Primero, cargue la imagen usando la clase Image.
- Transmitir objeto al tipo RasterImage.
- Caché de imagen si no está usando el método RasterImage.CacheData().
- Cambie el gamma de la imagen usando el método RasterImage.AdjustGamma(float, float, float).
- Finalmente, guarde la imagen resultante usando el método RasterImage.Save(string).
El siguiente ejemplo de código muestra cómo ajustar la gamma de una imagen en C#.
// Cargue una imagen en una instancia de Imagen
using (Image image = Image.Load("image.png"))
{
// Transmitir a imagen ráster
RasterImage rasterImage = (RasterImage)image;
// Cache RasterImage para un mejor rendimiento
if (!rasterImage.IsCached)
{
rasterImage.CacheData();
}
// Ajustar gama
rasterImage.AdjustGamma(2.2f, 2.2f, 2.2f);
// Guardar imagen
image.Save("image-updated-gamma.png");
}
La siguiente es la comparación de las imágenes de entrada y salida después de ajustar el valor gamma.
Obtenga una licencia de API gratuita
Puede obtener una licencia temporal gratuita para usar Aspose.Imaging for .NET sin limitaciones de evaluación.
Conclusión
En este artículo, ha aprendido a ajustar el contraste, el brillo y la gamma de las imágenes en C#. Además, las muestras de código han demostrado cómo se ve una imagen después de modificar el contraste, el brillo y la gamma. En caso de que desee explorar más sobre la API de procesamiento de imágenes de .NET, visite documentación. Además, descargue las muestras completas del código fuente de la API desde GitHub. Si tiene alguna pregunta o consulta, contáctenos en nuestro foro.