Python jest znany ze swojej wszechstronności. W Pythonie możesz tworzyć rzeczywiste narzędzia użytkowe, które mogą uprościć i zautomatyzować niektóre zadania.

Dowiedz się, jak zbudować konwerter typów obrazów za pomocą kilku prostych wierszy kodu w języku Python. Niezależnie od tego, czy jest to pojedynczy plik obrazu, czy wszystkie pliki w katalogu, możesz łatwo konwertować między różnymi formatami.

Instalowanie wymaganych bibliotek

Musisz zainstalować Poduszka Biblioteka Pythona do budowy konwertera typu obrazu w Pythonie. Ta biblioteka rozszerza możliwości przetwarzania obrazu przez interpreter języka Python. Możesz stworzyć ogólne narzędzie do przetwarzania obrazu, używając kilku modułów tej biblioteki. Niektóre z najbardziej przydatnych to tzw Obraz, Plik graficzny, Filtr obrazu, I Stan obrazu moduły.

Uruchom następującą komendę w terminalu, aby zainstalować bibliotekę Pillow Python:

pypeć zainstalować poduszka

Po zainstalowaniu Pillow w systemie jesteś gotowy do pracy z obrazami.

Ładowanie i wyświetlanie właściwości obrazu

Najpierw musisz zaimportować plik Obraz moduł z PIL biblioteka, aby skonfigurować kod. Następnie musisz użyć Image.open() metodę ładowania obrazu i przypisania go do zmiennej. Po załadowaniu obrazu możesz go wyświetlić za pomocą pokazywać() metoda.

Kod konwertera formatu obrazu jest dostępny w formacie Repozytorium GitHub i jest darmowy do użytku na licencji MIT.

z PIL import Obraz
obraz = obraz. otwórz ('przykładowy obraz.jpg')
obraz.pokazywać()

Obraz przekazany jako parametr do otwarty() metoda otworzy się po wykonaniu kodu. To dobry pierwszy krok, jako sprawdzenie poprawności, aby upewnić się, że pomyślnie zainstalowałeś bibliotekę w swoim systemie.

Moduł Image udostępnia kilka innych właściwości, których można użyć, aby uzyskać więcej informacji o obrazie.

# Importowanie biblioteki
z PIL import Obraz

# Ładowanie obrazu
obraz = obraz. otwórz ('przykładowy obraz.jpg')

# Drukuje nazwę pliku
wydrukować("Nazwa pliku: ", obraz.nazwa pliku)

# Drukuje format pliku
# Np. PNG, JPG, GIF itp.
wydrukować("Format: ", format obrazu)

# Drukuje tryb pliku
# Np. RGB, RFBA, CMYK itp.
wydrukować("Tryb: ", tryb obrazu)

# Drukuje rozmiar jako krotkę szerokości i wysokości (w pikselach)
wydrukować("Rozmiar: ", rozmiar obrazu)

# Drukuje szerokość obrazu (w pikselach)
wydrukować("Szerokość: ", szerokość obrazu)

# Drukuje wysokość obrazu (w pikselach)
wydrukować("Wysokość: ", Wysokość obrazu)

# Zamykanie obrazu
obraz.zamknąć()

Powinieneś zobaczyć kilka znaczących danych bez błędów:

Jak przekonwertować format obrazu za pomocą Pythona

Możesz po prostu przekonwertować format pliku obrazu za pomocą ratować() metoda. Musisz tylko przekazać nowe Nazwa pliku i rozszerzenie jako parametr do ratować() metoda. The ratować() metoda automatycznie zidentyfikuje przekazane rozszerzenie, a następnie zapisze obraz w określonym formacie. Ale przed użyciem ratować() metody, może być konieczne określenie trybu obrazu (RGB, RGBA, CMYK, HSV itp.).

Według oficjalna dokumentacja poduszki, tryb obrazu to ciąg znaków, który określa typ i głębię piksela w obrazie. Biblioteka poduszek obsługuje 11 trybów, w tym następujące tryby standardowe:

RGB (3x8-bitowe piksele, prawdziwy kolor)

RGBA (4x8-bitowe piksele, prawdziwy kolor z maską przezroczystości)

CMYK (4x8-bitowe piksele, separacja kolorów)

HSV (3x8-bitowe piksele, odcień, nasycenie, wartość przestrzeni kolorów)

Jak przekonwertować obraz z PNG na JPG i JPG na PNG

Musisz przekazać ciąg nazwa pliku.jpg jako parametr do ratować() metoda konwersji plików graficznych w dowolnym formacie formatu (PNG, GIF, BMP, TIFF itp.) do formatu JPG. Musisz także podać tryb obrazu. Poniższy kod konwertuje obraz z Format PNG do formatu JPG:

# Importowanie biblioteki
z PIL import Obraz

# Ładowanie obrazu
obraz = obraz. otwórz ('próbka-obraz-png.png')

# Określanie trybu RGB obrazu
obraz = obraz.konwertuj('RGB')

# Konwersja obrazu z formatu PNG do formatu JPG
obraz.zapisz("przekonwertowany-jpg-obraz.jpg")
wydrukować("Pomyślnie przekonwertowano obraz!"

Stracisz przezroczystość obrazu, jeśli przekonwertujesz go do formatu JPG. Jeśli spróbujesz zachować przezroczystość za pomocą RGBA mode, Python zgłosi błąd.

Możesz przekonwertować obraz w dowolnym formacie do formatu PNG za pomocą ratować() metoda. Wystarczy przekazać obraz PNG jako parametr do pliku ratować() metoda. Poniższy kod konwertuje obraz z formatu JPG na format PNG:

# Importowanie biblioteki
z PIL import Obraz

# Ładowanie obrazu
obraz = obraz. otwórz ('próbka-jpg-obraz.jpg')

# Konwersja obrazu z JPG do formatu PNG
obraz.zapisz("przekonwertowany-obraz-png.png")
wydrukować("Pomyślnie przekonwertowano obraz!")

Konwersja obrazu do formatu PNG zachowuje przezroczystość. Na przykład, jeśli przekonwertujesz przezroczysty obraz GIF na obraz PNG, wynikiem nadal będzie przezroczysty obraz.

Jak przekonwertować obraz na dowolny inny format za pomocą Pythona

Podobnie jak w przypadku powyższych kroków, możesz przekonwertować obraz w dowolnym formacie na dowolny inny format za pomocą ratować() metoda. Wystarczy podać prawidłowe rozszerzenie obrazu (.webp, .png, .bmp itp.) ratować() metoda. Na przykład poniższy kod konwertuje obraz z formatu PNG na format WebP:

# Importowanie biblioteki
z PIL import Obraz

# Ładowanie obrazu
obraz = obraz. otwórz ('przykładowy-przezroczysty-obraz-png.png')

# Konwersja obrazu z formatu PNG do formatu WEBP
obraz.zapisz("przekonwertowany-obraz-webp.webp")
wydrukować("Pomyślnie przekonwertowano obraz!")

Obsługa błędów w przypadku brakujących plików obrazów

W przypadku, gdy kod nie może znaleźć obrazu wejściowego, zgłosi błąd. Możesz sobie z tym poradzić za pomocą Błąd pliku nie znalezionoWyjątek Pythona.

# Importowanie biblioteki
z PIL import Obraz

próbować:
# Ładowanie obrazu
obraz = obraz. otwórz ('błędna nazwa-pliku.jpg')

# Konwersja obrazu z JPG do formatu PNG
obraz.zapisz("przekonwertowany-obraz-png.png")
wydrukować("Pomyślnie przekonwertowano obraz!")

z wyjątkiem Błąd pliku, którego nie znaleziono:
wydrukować("nie't znajdź dostarczony obraz")

Konwersja wszystkich obrazów w katalogu do innego formatu

Jeśli w katalogu znajduje się kilka plików graficznych, które chcesz przekonwertować na inny format, możesz to łatwo zrobić za pomocą kilku linii kodu w Pythonie. Musisz zaimportować plik kula ziemska biblioteka do iteracji plików w bieżącym katalogu lub w danym folderze. Poniższy kod konwertuje wszystkie obrazy JPG w bieżącym katalogu do formatu PNG:

z PIL import Obraz
import kula ziemska

dla pliku w glob.glob("*.jpg"):
image = Image.open (plik)
obraz.zapisz (plik.zamień("jpg", "png"))

Jeśli chcesz przekonwertować inny zestaw plików, zmień parametr ciągu, który przekazujesz do glob() metoda.

Zbuduj GUI za pomocą Pythona

Biblioteki Pythona, takie jak Pillow, ułatwiają tworzenie narzędzi do obsługi obrazów w Pythonie. Możesz szybko wykonywać zadania za pomocą interfejsu wiersza poleceń, ale graficzny interfejs użytkownika jest niezbędny do stworzenia przyjaznego dla użytkownika doświadczenia. Możesz tworzyć bardziej wyspecjalizowane aplikacje GUI przy użyciu frameworków Pythona, takich jak Tkinter i wxPython.