Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 24, 2020 00:36:19

oDoDo
Зарегистрирован: 2020-05-05
Сообщения: 70
Репутация: +  0  -
Профиль   Отправить e-mail  

Как вытащить размер изображения?

Изображение лежит в папке, нужно сохранить ширину и высоту в разные переменные, как это сделать?

Офлайн

#2 Авг. 24, 2020 16:04:24

marvellik
Зарегистрирован: 2016-05-15
Сообщения: 639
Репутация: +  73  -
Профиль   Отправить e-mail  

Как вытащить размер изображения?

 from PIL import Image
im = Image.open("logo.jpg")
width, height = im.size

Офлайн

#3 Авг. 24, 2020 17:09:00

oDoDo
Зарегистрирован: 2020-05-05
Сообщения: 70
Репутация: +  0  -
Профиль   Отправить e-mail  

Как вытащить размер изображения?

Спасибо, а как брать картинки по очереди из папки и проделывать те же действия?

Офлайн

#4 Авг. 24, 2020 18:48:26

oDoDo
Зарегистрирован: 2020-05-05
Сообщения: 70
Репутация: +  0  -
Профиль   Отправить e-mail  

Как вытащить размер изображения?

Почему не сохраняет картинку в нужном размере? Где ошибка?

 from PIL import Image
 
image = Image.open('test.png')
image.show()
width, height = image.size
print(width)
print(height)
size = (width, height)
saved = "2.jpg"
image2 = Image.open('1.jpg')
image2.thumbnail(size)
image2.save(saved)
image2.show()

Офлайн

#5 Авг. 25, 2020 19:02:09

oDoDo
Зарегистрирован: 2020-05-05
Сообщения: 70
Репутация: +  0  -
Профиль   Отправить e-mail  

Как вытащить размер изображения?

Как менять разобрался.

 size = (width, height)
saved = "resize.jpg"
image2 = Image.open('1.jpg')
resized_img = image2.resize((width, height), Image.ANTIALIAS)
resized_img.save(saved)

А как по очереди обработать изображения в папке?
Как указать путь к папке > найти все изображения> создать список > обработать по списку

Офлайн

#6 Авг. 25, 2020 20:01:19

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

Как вытащить размер изображения?

https://www.tutorialspoint.com/python/os_walk.htm
https://www.tutorialspoint.com/python/os_listdir.htm
https://wiki.python.org/moin/ForLoop
зы ну еще можете попробывать мнгопоток или мультипроцесс использовать если объемы большие



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Отредактировано AD0DE412 (Авг. 25, 2020 20:10:16)

Офлайн

#7 Авг. 25, 2020 20:37:40

oDoDo
Зарегистрирован: 2020-05-05
Сообщения: 70
Репутация: +  0  -
Профиль   Отправить e-mail  

Как вытащить размер изображения?

AD0DE412
зы ну еще можете попробывать мнгопоток или мультипроцесс использовать если объемы большие
Спасибо, а можно как то это в 1 код соединить? Я очень долго разбираться буду

Офлайн

#8 Авг. 25, 2020 23:43:20

oDoDo
Зарегистрирован: 2020-05-05
Сообщения: 70
Репутация: +  0  -
Профиль   Отправить e-mail  

Как вытащить размер изображения?

Так с горем пополоам) отобразить получилось все подряд файлы на пути, а как сделать чтобы только картинки были?

 import os, sys
# Open a file
path = "C:/Users/"
dirs = os.listdir(path)
# This would print all the files and directories
for file in dirs:
   print (file)

Офлайн

#9 Авг. 26, 2020 00:49:48

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  252  -
Профиль   Отправить e-mail  

Как вытащить размер изображения?

В новом стиле смотрите glob в
https://docs.python.org/3/library/pathlib.html



Офлайн

#10 Авг. 26, 2020 01:09:33

oDoDo
Зарегистрирован: 2020-05-05
Сообщения: 70
Репутация: +  0  -
Профиль   Отправить e-mail  

Как вытащить размер изображения?

 from pathlib import Path
sorted(Path("C:/Users/").glob('*.jpg'))   
print (sorted)

Что то не получается

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version