πŸ” Как ΡƒΠ·Π½Π°Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ изобраТСния с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Python? 🐍

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ изобраТСния Π² Python, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Pillow. Π’ΠΎΡ‚ простой ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π°:


from PIL import Image

image_path = "ΠΏΡƒΡ‚ΡŒ_ΠΊ_ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΡŽ.jpg"
image = Image.open(image_path)
width, height = image.size

print(f"Π¨ΠΈΡ€ΠΈΠ½Π° изобраТСния: {width} пиксСлСй")
print(f"Высота изобраТСния: {height} пиксСлСй")

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Как ΡƒΠ·Π½Π°Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ изобраТСния Π² Python

Часто Π½Π°ΠΌ трСбуСтся ΡƒΠ·Π½Π°Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ изобраТСния Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ дальнСйшиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. Π’ языкС Python сущСствуСт нСсколько способов ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ изобраТСния. Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½ΠΈΡ….

1. Π‘ использованиСм Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Pillow

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Pillow являСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ популярных инструмСнтов для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с изобраТСниями Π² Python. Она прСдоставляСт ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ способ для получСния Ρ€Π°Π·ΠΌΠ΅Ρ€Π° изобраТСния.


from PIL import Image

# ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅
image = Image.open('path/to/image.jpg')

# ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ€ изобраТСния
width, height = image.size

print(f'Π¨ΠΈΡ€ΠΈΠ½Π°: {width} пиксСлСй')
print(f'Высота: {height} пиксСлСй')
    

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ open ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Pillow для открытия изобраТСния ΠΏΠΎ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡƒ ΠΏΡƒΡ‚ΠΈ. Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ size, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ изобраТСния Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° (width, height). ΠœΡ‹ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ ΡˆΠΈΡ€ΠΈΠ½Ρƒ ΠΈ высоту изобраТСния Π½Π° экран.

2. Π‘ использованиСм Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ OpenCV

Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° популярная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π² Python - это OpenCV. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этой Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΌΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ изобраТСния.


import cv2

# Π§Ρ‚Π΅Π½ΠΈΠ΅ изобраТСния
image = cv2.imread('path/to/image.jpg')

# ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° изобраТСния
height, width, _ = image.shape

print(f'Π¨ΠΈΡ€ΠΈΠ½Π°: {width} пиксСлСй')
print(f'Высота: {height} пиксСлСй')
    

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ imread ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ OpenCV для чтСния изобраТСния. Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ shape, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ изобраТСния Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° (height, width, channels). ΠœΡ‹ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ ΡˆΠΈΡ€ΠΈΠ½Ρƒ ΠΈ высоту изобраТСния Π½Π° экран.

3. Π‘ использованиСм модуля os

Если Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ быстро ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»Π° изобраТСния Π±Π΅Π· Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ всСго изобраТСния Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ os.


import os

# ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Ρ„Π°ΠΉΠ»Π°
size_bytes = os.path.getsize('path/to/image.jpg')

# ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π² ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡ‚Ρ‹
size_kb = size_bytes / 1024

print(f'Π Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»Π°: {size_kb} ΠšΠ‘')
    

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ getsize ΠΈΠ· модуля os, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»Π° изобраТСния Π² Π±Π°ΠΉΡ‚Π°Ρ…. ΠœΡ‹ Π·Π°Ρ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π² ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡ‚Ρ‹ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ Π΅Π³ΠΎ Π½Π° экран.

Π’Ρ‹Π²ΠΎΠ΄

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ вас Π΅ΡΡ‚ΡŒ нСсколько способов ΡƒΠ·Π½Π°Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ изобраТСния Π² Python. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Pillow ΠΈΠ»ΠΈ OpenCV для получСния Ρ€Π°Π·ΠΌΠ΅Ρ€Π° изобраТСния, ΠΈΠ»ΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ os для быстрого получСния Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Ρ„Π°ΠΉΠ»Π°. Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ подходящий способ Π² зависимости ΠΎΡ‚ Π²Π°ΡˆΠΈΡ… потрСбностСй ΠΈ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

Как ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Python ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ изобраТСния?

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для измСнСния Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Ρ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΉ Π½Π° Python

Π ΠΠ‘ΠžΠ’Π Π‘ Π˜Π—ΠžΠ‘Π ΠΠ–Π•ΠΠ˜Π―ΠœΠ˜ | PYTHON | PILLOW (PIL)

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

πŸš€ Как Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ скрипт Python Π½Π° хостингС Reg ru 🐍

Как ввСсти ΠΊΠΎΡ€Π΅Π½ΡŒ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ стСпСни Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅: простой способ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… πŸš€

Как ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ Python Π½Π° Ubuntu: ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ совСты ΠΈ инструкции

πŸ” Как ΡƒΠ·Π½Π°Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ изобраТСния с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Python? 🐍

Как ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² Python: простоС руководство с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ

πŸ” Junior Python Developer: Π§Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π½Π°Ρ‚ΡŒ ΠΈ ΠΊΠ°ΠΊ успСх Π½Π°ΠΉΡ‚ΠΈ πŸ”

πŸ”§ Как ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ строку Π² txt Ρ„Π°ΠΉΠ»Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Python