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 edycji obrazów Python
- Dostosuj kontrast obrazu w Python
- Dostosuj jasność obrazu w Python
- Zmodyfikuj gamma obrazu w Python
- Darmowy edytor obrazów online
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 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.
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.
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.