Dostosuj kontrast, jasność i gamma obrazu w Python

Podczas przetwarzania i edycji obrazu parametry jasność i kontrast są modyfikowane w celu poprawy wizualnej jakości obrazów. Ponadto parametry te pozwalają na precyzyjne dostrojenie zdjęć poprzez zmniejszenie prześwietlenia. Z drugiej strony parametr gamma służy również do sterowania jasnością obrazu. Podczas programowego przetwarzania obrazów możesz mieć do czynienia z tymi parametrami. Dlatego w tym artykule pokażemy, jak dostosować jasność, kontrast i gamma obrazu w Python.

Biblioteka Python do regulacji kontrastu, jasności i gammy obrazu

Aby dostosować kontrast, jasność i gamma obrazu, użyjemy Aspose.Imaging for Python. Jest to potężna, ale łatwa w użyciu biblioteka do przetwarzania obrazów, która pozwala programistom Python bez wysiłku manipulować obrazami. Aby skorzystać z biblioteki, możesz pobrać lub zainstalować ją za pomocą następującego polecenia.

> pip install aspose-imaging-python-net 

Dostosuj kontrast obrazu w Python

Kontrast odnosi się do tego, jak różne są kolory lub poziomy jasności obrazu. Regulacja kontrastu sprawia, że obiekty na obrazie są wyraźniejsze. Wysoki kontrast oznacza ostrzejszy i wyraźniejszy obraz, podobnie jak zdjęcia wykonane w pełnym słońcu. Natomiast niski kontrast utrudnia dostrzeżenie i rozróżnienie obiektów, tak jak wtedy, gdy na zewnątrz panuje mgła.

Zobaczmy teraz, jak dostosować kontrast obrazu za pomocą Python.

  • Najpierw załaduj obraz za pomocą metody Image.load().
  • Następnie rzuć obiekt na typ RasterImage.
  • Następnie buforuj obraz, jeśli nie używa metody RasterImage.cachedata().
  • Dopasuj kontrast w zakresie [-100, 100] metodą RasterImage.adjustcontrast().
  • Na koniec zapisz wynikowy obraz za pomocą metody RasterImage.save().

Poniższy przykład kodu pokazuje, jak dostosować kontrast obrazu w języku 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
# Załaduj obraz w instancji Image
with Image.load(os.path.join(data_dir, "template.jpg")) as image:
	# Rzuć obiekt Image na RasterImage
	raster_image = aspycore.as_of(image, RasterImage)
	# Sprawdź, czy RasterImage jest buforowany i buforuj RasterImage, aby uzyskać lepszą wydajność
	if not raster_image.is_cached:
		raster_image.cache_data()

	# Dostosuj kontrast
	raster_image.adjust_contrast(10)
	# Utwórz instancję TiffOptions dla wynikowego obrazu, ustaw różne właściwości dla obiektu TiffOptions i zapisz wynikowy obraz w formacie 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"))

Poniższy zrzut ekranu pokazuje obraz przed i po dostosowaniu kontrastu.

Dostosuj kontrast obrazów w Python

Dostosuj kontrast obrazu

Dostosuj jasność obrazu w Python

Jasność służy do zwiększania lub zmniejszania ciemności obrazu, dzięki czemu możemy dostosować widoczność obiektów. Poniżej przedstawiono kroki, aby zmodyfikować jasność obrazu w Python.

  • Najpierw załaduj obraz za pomocą metody Image.load().
  • Następnie rzuć obiekt na typ RasterImage.
  • Następnie buforuj obraz, jeśli nie używa metody RasterImage.cachedata().
  • Dostosuj jasność obrazu za pomocą metody RasterImage.adjustbrightness().
  • Na koniec zapisz zmodyfikowany obraz za pomocą metody RasterImage.save().

Poniższy przykładowy kod pokazuje, jak dostosować jasność obrazu w języku 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
# Załaduj obraz w instancji Image
with Image.load(os.path.join(data_dir, "template.jpg")) as image:
	# Rzuć obiekt Image na RasterImage
	raster_image = aspycore.as_of(image, RasterImage)
	# Sprawdź, czy RasterImage jest buforowany i buforuj RasterImage, aby uzyskać lepszą wydajność
	if not raster_image.is_cached:
		raster_image.cache_data()

	# Dostosuj jasność
	raster_image.adjust_brightness(70)
	# Utwórz instancję TiffOptions dla wynikowego obrazu, ustaw różne właściwości dla obiektu TiffOptions i zapisz wynikowy obraz
	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"))

Oto porównanie obrazów wejściowych i wyjściowych po zmodyfikowaniu wartości jasności.

Dostosuj jasność obrazów w Python

Dostosuj jasność obrazu

Zmodyfikuj gamma obrazu w Python

Gamma odnosi się do atrybutu, który kontroluje stosunek kolorów RGB w obrazie. Wraz z tym modyfikuje również jasność obrazu. Zobaczmy więc, jak dostosować parametr gamma obrazu za pomocą Python.

  • Najpierw załaduj obraz za pomocą metody Image.load().
  • Następnie rzuć obiekt na typ RasterImage.
  • Następnie buforuj obraz, jeśli nie używa metody RasterImage.cachedata().
  • Zmodyfikuj wartość gamma za pomocą metody RasterImage.adjustgamma().
  • Na koniec zapisz zaktualizowany obraz za pomocą metody RasterImage.save().

Poniższy przykładowy kod pokazuje, jak dostosować wartość gamma obrazu w języku 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
# Załaduj obraz w instancji Image
with Image.load(os.path.join(data_dir, "template.jpg")) as image:
	# Rzuć obiekt Image na RasterImage
	raster_image = aspycore.as_of(image, RasterImage)
	# Sprawdź, czy RasterImage jest buforowany i buforuj RasterImage, aby uzyskać lepszą wydajność
	if not raster_image.is_cached:
		raster_image.cache_data()

	# Dostosuj kontrast
	raster_image.adjust_gamma(10)
	# Utwórz instancję TiffOptions dla wynikowego obrazu, ustaw różne właściwości dla obiektu TiffOptions i zapisz wynikowy obraz w formacie 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"))

Poniższy obraz przedstawia porównanie obrazów wejściowych i wyjściowych po zmodyfikowaniu wartości gamma.

Dostosuj gamma obrazów w Python

Dostosuj gamma obrazu

Darmowa licencja na regulację kontrastu, jasności i gamma obrazu

Możesz dostosować kontrast, jasność i gamma swoich obrazów bez ograniczeń oceny, uzyskując bezpłatną licencję tymczasową.

Darmowy edytor obrazów online

Możesz użyć naszego bezpłatnego internetowego narzędzia do edycji obrazu, aby zmodyfikować swoje obrazy online. Ten edytor obrazów jest obsługiwany przez Aspose.Imaging for Python i nie wymaga tworzenia konta.

Wniosek

W tym artykule pokazano, jak dostosować kontrast, jasność i wartości gamma w obrazie za pomocą języka Python. Za pomocą kroków i przykładów kodu pokazaliśmy, jak zmodyfikować te parametry w obrazie. Ponadto przedstawiliśmy dane wyjściowe za pomocą obrazów. Udostępniliśmy Ci również bezpłatne narzędzie do edycji obrazu, które jest oparte na Aspose.Imaging for Python i jest całkowicie bezpłatne.

Jeśli chcesz dowiedzieć się więcej o bibliotece przetwarzania obrazów w Python, odwiedź dokumentację. Jeśli masz jakieś pytania lub wątpliwości, skontaktuj się z nami na naszym forum.

Zobacz też