Jak dostosować jasność obrazu za pomocą Pillow?
Dec 24, 2025
Zostaw wiadomość
Dostosowywanie jasności obrazu to podstawowa operacja przetwarzania obrazu, przydatna do poprawiania atrakcyjności wizualnej, korygowania problemów z oświetleniem lub przygotowywania obrazów do określonych zastosowań. Pillow, potężna biblioteka Pythona, oferuje skuteczny sposób wykonania tego zadania. Jako dostawca poduszek jesteśmy dobrze zaznajomieni z tajnikami tej biblioteki i cieszymy się, że możemy podzielić się z Tobą, jak dostosować jasność obrazu za jej pomocą.
Pierwsze kroki z poduszką
Zanim zagłębimy się w proces regulacji jasności, musisz zainstalować Pillow w swoim środowisku Python. Jeśli jeszcze tego nie zrobiłeś, możesz zainstalować go za pomocąpypeć, menedżer pakietów Pythona. Otwórz terminal lub wiersz poleceń i uruchom następujące polecenie:
pip zainstaluj poduszkę
Po zainstalowaniu możesz zaimportować bibliotekę do skryptu Pythona w następujący sposób:
z obrazu importu PIL, ImageEnhance
TheObrazmoduł jest sercem Pillow, używanym do otwierania, manipulowania i zapisywania różnych formatów plików graficznych. TheUlepszenie obrazuModuł udostępnia różne klasy do dostosowywania właściwości obrazu, takich jak jasność, kontrast, kolor i ostrość.


Czytanie obrazu
Aby rozpocząć pracę z obrazem, musimy najpierw wczytać go do naszego programu w Pythonie. Załóżmy, że masz obraz o nazwieprzykład.jpgw swoim katalogu roboczym. Możesz go otworzyć za pomocąObraz.open()metodę w następujący sposób:
obraz = Obraz.open('przykład.jpg')
Ta linia kodu tworzy plikObrazobiekt reprezentujący otwarty obraz. Można wówczas wykonać na tym obiekcie różne operacje, m.in. regulację jasności.
Regulacja jasności obrazu
TheImageEnhance.Jasnośćklasa jest specjalnie zaprojektowana do dostosowywania jasności obrazu. Ta klasa wymagaObrazobiekt jako argument i zwraca obiekt poprawiający jasność. Następnie możesz użyćzwiększyć()metoda tego obiektu wzmacniacza w celu dostosowania poziomu jasności.
Thezwiększyć()metoda przyjmuje pojedynczy argument, liczbę zmiennoprzecinkową reprezentującą współczynnik, według którego należy dostosować jasność. Wartość 1,0 oznacza oryginalną jasność, wartość mniejsza niż 1,0 spowoduje przyciemnienie obrazu, a wartość większa niż 1,0 spowoduje rozjaśnienie obrazu.
Oto przykładowy fragment kodu pokazujący, jak zwiększyć jasność obrazu o współczynnik 1,5:
wzmacniacz = ImageEnhance.Brightness(obraz) rozjaśniony_image = wzmacniacz.enhance(1.5)
W powyższym kodzie najpierw tworzymy plikJasnośćulepsz obiekt, używając oryginałuobraz. Następnie nazywamyzwiększyć()metodę o współczynniku 1,5 w celu rozjaśnienia obrazu. Wynik zapisywany jest w plikurozjaśniony_obrazzmienny.
Jeśli chcesz przyciemnić obraz, możesz użyć współczynnika mniejszego niż 1,0. Na przykład:
dimmer_enhancer = ImageEnhance.Brightness(image) dimmed_image = dimmer_enhancer.enhance(0.5)
W takim przypadku jasność obrazu zostaje zmniejszona do połowy pierwotnego poziomu.
Zapisywanie zmodyfikowanego obrazu
Po dostosowaniu jasności prawdopodobnie będziesz chciał zapisać zmodyfikowany obraz. Możesz skorzystać zratować()metodaObrazsprzeciwić się temu. Theratować()Metoda przyjmuje jako argumenty nazwę pliku i format pliku (opcjonalnie). Na przykład, aby zapisać rozjaśniony obraz jako plik JPEG o nazwierozjaśniony_przykład.jpg, możesz użyć następującego kodu:
rozjaśniony_obraz.save('rozjaśniony_przykład.jpg', 'JPEG')
Spowoduje to zapisanie rozjaśnionego obrazu w formacie JPEG pod określoną nazwą w katalogu roboczym.
Praktyczne scenariusze regulacji jasności obrazu
- Edycja fotografii: W fotografii regulacja jasności jest częstym etapem przetwarzania końcowego. Zdjęcie wykonane w warunkach słabego oświetlenia może być zbyt ciemne, a zwiększenie jego jasności może poprawić widoczność szczegółów. jakoPoduszka z pianki memorydostawcę, rozumiemy znaczenie prezentacji wysokiej jakości wizualizacji naszych produktów. Rozjaśnienie zdjęć produktów może sprawić, że będą one bardziej atrakcyjne dla potencjalnych klientów.
- Sztuka i projektowanie: Artyści i projektanci często muszą dostroić jasność obrazów, aby dopasować je do ogólnej estetyki swoich projektów. Niezależnie od tego, czy jest to obraz cyfrowy, czy projekt graficzny, odpowiednia regulacja jasności może wydobyć zamierzony nastrój dzieła sztuki.
- Skanowanie dokumentów: Podczas skanowania dokumentów nierównomierne oświetlenie może spowodować, że części dokumentu będą zbyt ciemne lub zbyt jasne. Dostosowanie jasności może poprawić czytelność zeskanowanego tekstu.
Zaawansowane rozważania
- Przetwarzanie wsadowe: Jeśli masz dużą liczbę obrazów do przetworzenia, możesz użyć pętli, aby dostosować jasność wielu obrazów. Na przykład:
import os z PIL import Image, ImageEnhance image_folder = 'images' folder_wyjściowy = 'rozjaśnione_obrazy' jeśli nie os.path.exists(folder_wyjściowy): os.makedirs(folder_wyjściowy) dla nazwy pliku w os.listdir(folder_obrazu): if nazwapliku.endswith(('.jpg', '.png')): ścieżka_obrazu = os.path.join(folder_obrazu, nazwa pliku) image = Image.open(ścieżka_obrazu) Enhancer = ImageEnhance.Brightness(obraz) rozjaśniony_image = Enhancer.enhance(1.2) ścieżka_wyjściowa = os.path.join(folder_wyjściowy, nazwa pliku) rozjaśniony_image.save(ścieżka_wyjściowa)
Ten kod przechodzi przez wszystkie obrazy JPEG i PNG w plikuobrazyfolderze, rozjaśnia je 1,2-krotnie i zapisuje zmodyfikowane obrazy w formacierozjaśnione_obrazyfalcówka.
- Obsługa błędów: Podczas pracy z obrazami należy koniecznie uwzględnić potencjalne błędy, takie jak nieodnalezienie pliku lub nieobsługiwane formaty plików. Możesz użyć
spróbuj - z wyjątkiembloki, aby z wdziękiem wychwycić i obsłużyć te błędy. Na przykład:
spróbuj: image = Image.open('nonexistent_image.jpg') Enhancer = ImageEnhance.Brightness(image) Brightened_image = Enhancer.enhance(1.3) Brightened_image.save('new_image.jpg') z wyjątkiem FileNotFoundError: print("Nie znaleziono określonego pliku obrazu.") z wyjątkiem wyjątku jako e: print(f"Wystąpił błąd: {e}")
Wniosek
Dostosowywanie jasności obrazu za pomocą Pillow to prosty i skuteczny proces, który może znacznie poprawić jakość zdjęć. Niezależnie od tego, czy jesteś fotografem, artystą czy właścicielem firmy, który chce ulepszyć zdjęcia produktów, Pillow zapewnia potrzebne narzędzia.
jakoPoduszka domowadostawcą, nie tylko oferujemy wysokiej jakości poduszki, ale także rozumiemy znaczenie cyfrowego przetwarzania obrazu na dzisiejszym rynku. Jeśli masz jakiekolwiek wymagania związane z poduszką, niezależnie od tego, czy dotyczą zadań związanych z przetwarzaniem obrazu, czy zakupem poduszek, z przyjemnością porozmawiamy z Tobą. Skontaktuj się z nami, aby omówić swoje potrzeby i poznać możliwości.
Referencje
- Oficjalna dokumentacja Python Imaging Library (poduszka).
- Samouczki i zasoby online dotyczące języka Python i przetwarzania obrazów
