Điều chỉnh độ tương phản, độ sáng và gamma của hình ảnh trong C#

Độ tương phản), độ sánggamma là các thuộc tính phổ biến được sử dụng để điều chỉnh hình ảnh. Các giá trị khác nhau của các thuộc tính này được đặt để kiểm soát và tăng cường sự xuất hiện của hình ảnh. Trong bài viết này, chúng tôi sẽ hướng dẫn bạn cách điều chỉnh độ tương phản, độ sáng và gamma của hình ảnh theo lập trình trong C#. Bạn có thể sử dụng điều này để triển khai khả năng chỉnh sửa hình ảnh từ bên trong các ứng dụng .NET của mình.

API C# để điều chỉnh độ tương phản, độ sáng và gamma của hình ảnh

Aspose.Imaging for .NET là một API xử lý hình ảnh mạnh mẽ và giàu tính năng dành cho các nền tảng .NET / .NET Standard. Nó hỗ trợ thao tác với một loạt các định dạng hình ảnh mà không cần viết mã phức tạp. Chúng tôi sẽ sử dụng API này để điều chỉnh độ tương phản, độ sáng và gamma của hình ảnh trong C#. Bạn có thể tải xuống API hoặc cài đặt nó vào các ứng dụng .NET của mình bằng NuGet.

PM> Install-Package Aspose.Imaging

Điều chỉnh độ tương phản của hình ảnh trong C#

Độ tương phản được định nghĩa là sự khác biệt về cường độ điểm ảnh. Giá trị của nó được điều chỉnh để làm cho các đối tượng trong hình ảnh hiển thị và dễ phân biệt hơn. Với độ tương phản cao, mọi vật thể trong ảnh trông rất rõ ràng giống như những bức ảnh được chụp dưới ánh sáng mặt trời. Trong khi đó, với độ tương phản thấp, bạn khó có thể phân biệt được các đối tượng giống như trong điều kiện thời tiết sương mù.

Hãy xem cách điều chỉnh độ tương phản của hình ảnh trong C# bằng Aspose.Imaging for .NET.

Mẫu mã sau đây cho thấy cách điều chỉnh độ tương phản của hình ảnh trong C#.

// Tải hình ảnh trong một phiên bản của Hình ảnh
using (Image image = Image.Load("image.png"))
{
    // Truyền sang hình ảnh raster
    RasterImage rasterImage = (RasterImage)image;

    // Cache RasterImage để có hiệu suất tốt hơn
    if (!rasterImage.IsCached)
    {
        rasterImage.CacheData();
    }

    // Điều chỉnh độ tương phản
    rasterImage.AdjustContrast(30);             

    // Lưu hình ảnh
    image.Save("image-updated-contrast.png");
}

Sau đây là so sánh hình ảnh đầu vào và đầu ra sau khi tăng giá trị tương phản.

Điều chỉnh độ tương phản của hình ảnh trong C#

Điều chỉnh độ tương phản hình ảnh

Điều chỉnh độ sáng của hình ảnh trong C#

Thuộc tính độ sáng thường kiểm soát khả năng hiển thị của các đối tượng trong hình ảnh. Giá trị của nó được điều chỉnh để tăng hoặc giảm độ tối. Sau đây là các bước để sửa đổi độ sáng của hình ảnh trong C#.

Mẫu mã sau đây cho thấy cách điều chỉnh độ sáng của hình ảnh trong C#.

// Tải hình ảnh trong một phiên bản của Hình ảnh
using (Image image = Image.Load("image.png"))
{
    // Truyền sang hình ảnh raster
    RasterImage rasterImage = (RasterImage)image;

    // Cache RasterImage để có hiệu suất tốt hơn
    if (!rasterImage.IsCached)
    {
        rasterImage.CacheData();
    }

    // Điều chỉnh độ sáng
    rasterImage.AdjustBrightness(70);

    // Lưu hình ảnh
    image.Save("image-updated-bightness.png");
}

Sau đây là bảng so sánh hình ảnh đầu vào và đầu ra sau khi điều chỉnh độ sáng.

Điều chỉnh độ sáng của hình ảnh trong C#

Điều chỉnh độ sáng hình ảnh

Sửa đổi Gamma của một hình ảnh trong C#

Thuộc tính gamma được sử dụng để sửa đổi tỷ lệ các màu đỏ, lục và lam trong hình ảnh. Hơn nữa, nó cũng điều chỉnh độ sáng của hình ảnh. Sau đây là các bước để thay đổi giá trị gamma của ảnh trong C#.

Mẫu mã sau đây cho thấy cách điều chỉnh gamma của hình ảnh trong C#.

// Tải hình ảnh trong một phiên bản của Hình ảnh
using (Image image = Image.Load("image.png"))
{
    // Truyền sang hình ảnh raster
    RasterImage rasterImage = (RasterImage)image;

    // Cache RasterImage để có hiệu suất tốt hơn
    if (!rasterImage.IsCached)
    {
        rasterImage.CacheData();
    }

    // Điều chỉnh gamma
    rasterImage.AdjustGamma(2.2f, 2.2f, 2.2f);

    // Lưu hình ảnh
    image.Save("image-updated-gamma.png");
}

Sau đây là so sánh hình ảnh đầu vào và đầu ra sau khi điều chỉnh giá trị gamma.

Điều chỉnh Gamma của Hình ảnh trong C#

Điều chỉnh Gamma Hình ảnh

Nhận giấy phép API miễn phí

Bạn có thể nhận giấy phép tạm thời miễn phí để sử dụng Aspose.Imaging for .NET mà không có giới hạn đánh giá.

Sự kết luận

Trong bài viết này, bạn đã học cách điều chỉnh độ tương phản, độ sáng và gamma của hình ảnh trong C#. Hơn nữa, các mẫu mã đã chứng minh hình ảnh trông như thế nào sau khi sửa đổi độ tương phản, độ sáng và gamma. Trong trường hợp bạn muốn khám phá thêm về API xử lý ảnh .NET, hãy truy cập tài liệu. Ngoài ra, hãy tải xuống các mẫu mã nguồn hoàn chỉnh của API từ GitHub. Nếu bạn có bất kỳ câu hỏi hoặc thắc mắc nào, hãy liên hệ với chúng tôi tại diễn đàn của chúng tôi.

Xem thêm