Kontrast), parlaklık ve gama, görüntüleri ayarlamak için kullanılan popüler özelliklerdir. Bu niteliklerin farklı değerleri, görüntülerin görünümünü kontrol etmek ve geliştirmek için ayarlanır. Bu yazıda, bir görüntünün kontrastını, parlaklığını ve gammasını programlı olarak C# ile nasıl ayarlayacağınızı göstereceğiz. Bunu, .NET uygulamalarınızdan görüntü düzenleme yeteneklerini uygulamak için kullanabilirsiniz.
- C# Görüntü Düzenleme API’sı
- C#’ta Bir Görüntünün Kontrastını Ayarlama
- C#’ta Görüntünün Parlaklığını Ayarlama
- C#’ta Bir Görüntünün Gammasını Değiştirme
Görüntü Kontrastını, Parlaklığını ve Gammayı Ayarlamak için C# API
Aspose.Imaging for .NET, .NET/.NET Standard platformları için güçlü ve zengin özelliklere sahip bir görüntü işleme API’sidir. Karmaşık kod yazmadan çok çeşitli görüntü formatlarının işlenmesini destekler. C#’ta görüntülerin kontrastını, parlaklığını ve gammasını ayarlamak için bu API’yi kullanacağız. API’yi indirebilir veya NuGet kullanarak .NET uygulamalarınıza yükleyebilirsiniz.
PM> Install-Package Aspose.Imaging
C#’ta Bir Görüntünün Kontrastını Ayarlama
Kontrast, piksel yoğunluğundaki fark olarak tanımlanır. Değeri, görüntüdeki nesneleri daha görünür ve ayırt edilebilir hale getirmek için ayarlanır. Yüksek kontrast ile, görüntüdeki her nesne, tıpkı güneş ışığında çekilmiş fotoğraflar gibi çok net görünür. Oysa düşük kontrast ile tıpkı sisli havalarda olduğu gibi nesneleri zor ayırt edersiniz.
Aspose.Imaging for .NET kullanarak C# dilinde bir görüntünün kontrastını nasıl ayarlayacağımıza bir göz atalım.
- İlk olarak, Image sınıfını kullanarak görüntüyü yükleyin.
- Ardından, nesneyi RasterImage tipine dönüştürün.
- RasterImage.CacheData() yöntemini kullanmıyorsa görüntüyü önbelleğe alın.
- [-100, 100] aralığında RasterImage.AdjustContrast(float) yöntemini kullanarak kontrastı ayarlayın.
- Son olarak, ortaya çıkan görüntüyü RasterImage.Save(string) yöntemini kullanarak kaydedin.
Aşağıdaki kod örneği, C# dilinde bir görüntünün kontrastının nasıl ayarlanacağını gösterir.
// Görüntü örneğine bir görüntü yükleme
using (Image image = Image.Load("image.png"))
{
// Raster görüntüye yayınla
RasterImage rasterImage = (RasterImage)image;
// Daha iyi performans için RasterImage'ı önbelleğe alın
if (!rasterImage.IsCached)
{
rasterImage.CacheData();
}
// Kontrastı ayarla
rasterImage.AdjustContrast(30);
// Resmi Kaydet
image.Save("image-updated-contrast.png");
}
Kontrast değeri artırıldıktan sonra giriş ve çıkış görüntülerinin karşılaştırması aşağıdadır.
C#’ta Görüntünün Parlaklığını Ayarlama
Parlaklık niteliği genellikle bir görüntüdeki nesnelerin görünürlüğünü kontrol eder. Değeri, koyuluğu artırmak veya azaltmak için ayarlanır. Aşağıda, C# dilinde bir görüntünün parlaklığını değiştirme adımları yer almaktadır.
- İlk olarak, Image sınıfını kullanarak görüntüyü yükleyin.
- Nesneyi RasterImage tipine yayınlayın.
- RasterImage.CacheData() yöntemini kullanmıyorsa görüntüyü önbelleğe alın.
- RasterImage.AdjustBrightness(float) yöntemini kullanarak görüntünün parlaklığını ayarlayın.
- Son olarak, ortaya çıkan görüntüyü RasterImage.Save(string) yöntemini kullanarak kaydedin.
Aşağıdaki kod örneği, C# dilinde bir görüntünün parlaklığının nasıl ayarlanacağını gösterir.
// Görüntü örneğine bir görüntü yükleme
using (Image image = Image.Load("image.png"))
{
// Raster görüntüye yayınla
RasterImage rasterImage = (RasterImage)image;
// Daha iyi performans için RasterImage'ı önbelleğe alın
if (!rasterImage.IsCached)
{
rasterImage.CacheData();
}
// parlaklığı ayarla
rasterImage.AdjustBrightness(70);
// Resmi Kaydet
image.Save("image-updated-bightness.png");
}
Aşağıda, parlaklığı ayarladıktan sonra giriş ve çıkış görüntülerinin karşılaştırması yer almaktadır.
C#’ta Bir Görüntünün Gammasını Değiştirme
Gama özelliği, bir görüntüdeki kırmızı, yeşil ve mavi renklerin oranını değiştirmek için kullanılır. Ayrıca, görüntünün parlaklığını da değiştirir. Aşağıda, C# dilinde bir görüntünün gama değerini değiştirme adımları yer almaktadır.
- İlk olarak, Image sınıfını kullanarak görüntüyü yükleyin.
- Nesneyi RasterImage tipine yayınlayın.
- RasterImage.CacheData() yöntemini kullanmıyorsa görüntüyü önbelleğe alın.
- RasterImage.AdjustGamma(float, float, float) yöntemini kullanarak görüntünün gamasını değiştirin.
- Son olarak, ortaya çıkan görüntüyü RasterImage.Save(string) yöntemini kullanarak kaydedin.
Aşağıdaki kod örneği, C# dilinde bir görüntünün gamasının nasıl ayarlanacağını gösterir.
// Görüntü örneğine bir görüntü yükleme
using (Image image = Image.Load("image.png"))
{
// Raster görüntüye yayınla
RasterImage rasterImage = (RasterImage)image;
// Daha iyi performans için RasterImage'ı önbelleğe alın
if (!rasterImage.IsCached)
{
rasterImage.CacheData();
}
// gama ayarla
rasterImage.AdjustGamma(2.2f, 2.2f, 2.2f);
// Resmi Kaydet
image.Save("image-updated-gamma.png");
}
Gama değerini ayarladıktan sonra giriş ve çıkış görüntülerinin karşılaştırması aşağıdadır.
Ücretsiz API Lisansı Alın
Aspose.Imaging for .NET’i değerlendirme sınırlamaları olmaksızın kullanmak için ücretsiz bir geçici lisans alabilirsiniz.
Çözüm
Bu makalede, C#’ta görüntülerin kontrastını, parlaklığını ve gammasını nasıl ayarlayacağınızı öğrendiniz. Ayrıca, kod örnekleri kontrast, parlaklık ve gama değiştirildikten sonra bir görüntünün nasıl göründüğünü göstermiştir. .NET görüntü işleme API’si hakkında daha fazlasını keşfetmek isterseniz belgeleri ziyaret edin. Ayrıca, GitHub’ten API’nin tüm kaynak kodu örneklerini indirin. Herhangi bir sorunuz veya sorunuz varsa, forumumuzdan bize ulaşın.