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

Trong quá trình xử lý và chỉnh sửa hình ảnh, độ sángđộ tương phản được thao tác để nâng cao chất lượng hình ảnh của hình ảnh. Ngoài ra, các thông số này cho phép bạn tinh chỉnh hình ảnh bằng cách giảm phơi sáng quá mức. Mặt khác, thông số gamma cũng được sử dụng để kiểm soát độ sáng của hình ảnh. Trong khi xử lý hình ảnh theo chương trình, bạn có thể phải xử lý các tham số này. Do đó, trong bài viết này, chúng tôi sẽ chỉ cho bạn cách điều chỉnh độ sáng, độ tương phản và gamma của hình ảnh trong Python.

Thư viện Python để điều chỉnh độ tương phản, độ sáng và Gamma của hình ảnh

Để điều chỉnh độ tương phản, độ sáng và gamma của hình ảnh, chúng tôi sẽ sử dụng Aspose.Imaging for Python. Đây là một thư viện xử lý hình ảnh mạnh mẽ nhưng dễ sử dụng, cho phép nhà phát triển Python thao tác với hình ảnh một cách dễ dàng. Để sử dụng thư viện, bạn có thể tải xuống hoặc cài đặt nó bằng lệnh sau.

> pip install aspose-imaging-python-net 

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

Độ tương phản đề cập đến mức độ khác nhau của màu sắc hoặc độ sáng trong một hình ảnh. Điều chỉnh độ tương phản làm cho các đối tượng trong ảnh rõ ràng hơn. Độ tương phản cao có nghĩa là hình ảnh sắc nét và rõ ràng hơn, tương tự như ảnh chụp dưới ánh sáng mặt trời. Trong khi đó, độ tương phản thấp khiến bạn khó nhìn và phân biệt các vật thể, giống như khi trời có sương mù bên ngoài.

Bây giờ hãy xem cách điều chỉnh độ tương phản của hình ảnh bằng Python.

  • Đầu tiên, tải hình ảnh bằng phương thức Image.load().
  • Sau đó, truyền đối tượng sang loại RasterImage.
  • Sau đó, cache hình ảnh nếu nó không sử dụng phương thức RasterImage.cachedata().
  • Điều chỉnh độ tương phản trong phạm vi [-100, 100] bằng phương pháp RasterImage.adjustcontrast().
  • Cuối cùng, lưu hình ảnh thu được bằng phương thức RasterImage.save().

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

import aspose.pycore as aspycore
from aspose.imaging import RasterImage, Image
from aspose.imaging.fileformats.tiff.enums import TiffExpectedFormat, TiffPhotometrics
from aspose.imaging.imageoptions import TiffOptions
import os


if 'TEMPLATE_DIR' in os.environ:
	templates_folder = os.environ['TEMPLATE_DIR']
else:
	templates_folder = r"C:\Users\USER\Downloads\templates"

delete_output = 'SAVE_OUTPUT' not in os.environ
data_dir = templates_folder
# Tải một hình ảnh trong một phiên bản của Hình ảnh
with Image.load(os.path.join(data_dir, "template.jpg")) as image:
	# Truyền đối tượng của Image sang RasterImage
	raster_image = aspycore.as_of(image, RasterImage)
	# Kiểm tra xem RasterImage có được lưu vào bộ nhớ cache hay không và Cache RasterImage để có hiệu suất tốt hơn
	if not raster_image.is_cached:
		raster_image.cache_data()

	# Điều chỉnh độ tương phản
	raster_image.adjust_contrast(10)
	# Tạo một phiên bản TiffOptions cho hình ảnh kết quả, Đặt các thuộc tính khác nhau cho đối tượng của TiffOptions và Lưu hình ảnh kết quả thành định dạng TIFF
	tiff_options = TiffOptions(TiffExpectedFormat.DEFAULT)
	tiff_options.bits_per_sample = [8, 8, 8]
	tiff_options.photometric = TiffPhotometrics.RGB
	raster_image.save(os.path.join(data_dir, "result.tiff"), tiff_options)

if delete_output:
	os.remove(os.path.join(data_dir, "result.tiff"))

Ảnh chụp màn hình bên dưới hiển thị hình ảnh trước và sau khi điều chỉnh độ tương phản.

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

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

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

Độ sáng được sử dụng để tăng hoặc giảm độ tối trong hình ảnh để chúng ta có thể điều chỉnh mức độ hiển thị của các đối tượng. Sau đây là các bước để sửa đổi độ sáng của hình ảnh trong Python.

  • Đầu tiên, tải hình ảnh bằng phương thức Image.load().
  • Sau đó, truyền đối tượng sang loại RasterImage.
  • Sau đó, cache hình ảnh nếu nó không sử dụng phương thức RasterImage.cachedata().
  • Điều chỉnh độ sáng của hình ảnh bằng phương pháp RasterImage.adjustbrightness().
  • Cuối cùng, lưu hình ảnh đã sửa đổi bằng phương thức RasterImage.save().

Mẫu mã sau đây cho biết cách điều chỉnh độ sáng của hình ảnh trong Python.

import aspose.pycore as aspycore
from aspose.imaging import RasterImage, Image
from aspose.imaging.fileformats.tiff.enums import TiffExpectedFormat, TiffPhotometrics
from aspose.imaging.imageoptions import TiffOptions
import os


if 'TEMPLATE_DIR' in os.environ:
	templates_folder = os.environ['TEMPLATE_DIR']
else:
	templates_folder = r"C:\Users\USER\Downloads\templates"

delete_output = 'SAVE_OUTPUT' not in os.environ
data_dir = templates_folder
# Tải một hình ảnh trong một phiên bản của Hình ảnh
with Image.load(os.path.join(data_dir, "template.jpg")) as image:
	# Truyền đối tượng của Image sang RasterImage
	raster_image = aspycore.as_of(image, RasterImage)
	# Kiểm tra xem RasterImage có được lưu vào bộ nhớ cache hay không và Cache RasterImage để có hiệu suất tốt hơn
	if not raster_image.is_cached:
		raster_image.cache_data()

	# Điều chỉnh độ sáng
	raster_image.adjust_brightness(70)
	# Tạo một thể hiện của TiffOptions cho hình ảnh kết quả, Đặt các thuộc tính khác nhau cho đối tượng của TiffOptions và Lưu hình ảnh kết quả
	tiff_options = TiffOptions(TiffExpectedFormat.DEFAULT)
	tiff_options.bits_per_sample = [8, 8, 8]
	tiff_options.photometric = TiffPhotometrics.RGB
	raster_image.save(os.path.join(data_dir, "result.tiff"), tiff_options)

if delete_output:
	os.remove(os.path.join(data_dir, "result.tiff"))

Dưới đây là so sánh hình ảnh đầu vào và đầu ra sau khi sửa đổi giá trị độ sáng.

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

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

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

Gamma đề cập đến thuộc tính kiểm soát tỷ lệ màu RGB trong hình ảnh. Cùng với đó, nó cũng sửa đổi độ sáng của hình ảnh. Vì vậy, hãy xem cách điều chỉnh tham số gamma của hình ảnh bằng Python.

  • Đầu tiên, tải hình ảnh bằng phương thức Image.load().
  • Sau đó, truyền đối tượng sang loại RasterImage.
  • Sau đó, cache hình ảnh nếu nó không sử dụng phương thức RasterImage.cachedata().
  • Sửa đổi giá trị gamma bằng phương pháp RasterImage.adjustgamma().
  • Cuối cùng, lưu hình ảnh đã cập nhật bằng phương thức RasterImage.save().

Mẫu mã sau đây cho biết cách điều chỉnh giá trị gamma của hình ảnh trong Python.

import aspose.pycore as aspycore
from aspose.imaging import RasterImage, Image
from aspose.imaging.fileformats.tiff.enums import TiffExpectedFormat, TiffPhotometrics
from aspose.imaging.imageoptions import TiffOptions
import os


if 'TEMPLATE_DIR' in os.environ:
	templates_folder = os.environ['TEMPLATE_DIR']
else:
	templates_folder = r"C:\Users\USER\Downloads\templates"

delete_output = 'SAVE_OUTPUT' not in os.environ
data_dir = templates_folder
# Tải một hình ảnh trong một phiên bản của Hình ảnh
with Image.load(os.path.join(data_dir, "template.jpg")) as image:
	# Truyền đối tượng của Image sang RasterImage
	raster_image = aspycore.as_of(image, RasterImage)
	# Kiểm tra xem RasterImage có được lưu vào bộ nhớ cache hay không và Cache RasterImage để có hiệu suất tốt hơn
	if not raster_image.is_cached:
		raster_image.cache_data()

	# Điều chỉnh độ tương phản
	raster_image.adjust_gamma(10)
	# Tạo một phiên bản TiffOptions cho hình ảnh kết quả, Đặt các thuộc tính khác nhau cho đối tượng của TiffOptions và Lưu hình ảnh kết quả thành định dạng TIFF
	tiff_options = TiffOptions(TiffExpectedFormat.DEFAULT)
	tiff_options.bits_per_sample = [8, 8, 8]
	tiff_options.photometric = TiffPhotometrics.RGB
	raster_image.save(os.path.join(data_dir, "result.tiff"), tiff_options)

if delete_output:
	os.remove(os.path.join(data_dir, "result.tiff"))

Hình ảnh dưới đây cho thấy sự so sánh của hình ảnh đầu vào và đầu ra sau khi sửa đổi giá trị gamma.

Điều chỉnh Gamma của hình ảnh trong Python

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

Giấy phép Miễn phí để Điều chỉnh Độ tương phản, Độ sáng và Gamma của Hình ảnh

Bạn có thể điều chỉnh độ tương phản, độ sáng và gamma của hình ảnh mà không bị giới hạn đánh giá bằng cách nhận giấy phép tạm thời miễn phí.

Trình chỉnh sửa ảnh trực tuyến miễn phí

Bạn có thể sử dụng công cụ chỉnh sửa hình ảnh dựa trên web miễn phí của chúng tôi để sửa đổi hình ảnh trực tuyến. Trình chỉnh sửa hình ảnh này được cung cấp bởi Aspose.Imaging for Python và không yêu cầu bạn tạo tài khoản.

Phần kết luận

Bài viết này trình bày cách điều chỉnh độ tương phản, độ sáng và giá trị gamma trong hình ảnh bằng Python. Với sự trợ giúp của các bước và mẫu mã, chúng tôi đã trình bày cách sửa đổi các tham số này trong một hình ảnh. Ngoài ra, chúng tôi đã mô tả đầu ra bằng hình ảnh. Chúng tôi cũng đã cung cấp cho bạn một công cụ chỉnh sửa hình ảnh miễn phí dựa trên Aspose.Imaging dành cho Python và nó hoàn toàn miễn phí.

Trong trường hợp bạn muốn khám phá thêm về thư viện xử lý ảnh Python, hãy truy cập tài liệu. 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