Найти - Пользователи
Полная версия: Работа с Image
Начало » Python для экспертов » Работа с Image
1 2
Sunny
Люди, очень нужна помощь.
Мне нужно загрузить изображение(оттенки серого), перевести его в двумерный массив, обработать его и присвоить изображению и вывести результат. Никак не могу найти правильное решение. Плизз, может кто сталкивался с таким.
pythonwin
в PIL можно так сделать, но правда как можно присвоить изображению масив не знаю
Sunny
насчёт PIL я знаю, но вот только мне необходимо провести обработку контуров на изображении, а PIL мне информацию о них не выдаст, поэтому нужно перевести в массив чисел
Андрей Светлов
Можно загрузить через PIL, перегнать в raw через tostring, затянуть это в numpy.ndarray, сделать что нужно, выгнать опять в raw и занянуть снова в PIL.Image. Сохранить.
Можно сделать из PIL.Image PIL.ImageDraw и работать попиксельно.
Первый способ - лучше
pythonwin
Андрей Светлов
Можно загрузить через PIL, перегнать в raw через tostring, затянуть это в numpy.ndarray, сделать что нужно, выгнать опять в raw и занянуть снова в PIL.Image.
1) думаю ударит по качетву рисунка, хотя не уверен
2) + сильно ударит по ОЗУ, т.к. tostring для рисунка (jpg) в 1,5Мб дает строку в 40Мб
Александр Кошелев
pythonwin
2) + сильно ударит по ОЗУ, т.к. tostring для рисунка (jpg) в 1,5Мб дает строку в 40Мб
это уже не проблемы питона, а самого jpg(хорошо сжимает)
ZAN
Довольно несложно перегнать в массив файл в формате bmp, по большому счету - это и есть массив, только с заголовком. Только есть ли смысл работать с ним в чистом питоне, без си расширений - трудно сказать. Подозреваю, что поставленную задачу проще будет решать в gimp при помощи питоновского плагина.
pythonwin
Daevaorn
это уже не проблемы питона, а самого jpg(хорошо сжимает)
bmp из jpg файла = 1,5Мб будет примерно 10-15Мб, т.е. меньше в 3-4 раза чем возвращает tostring
bialix
tostring возвращает чистые байты. поэтому результат tostring должен быть даже меньше чем bmp.
очевидно вы сохраняете в bmp с включенной rle-компрессией
Андрей Светлов
Мы говорим о форматах файлов или об обработке картинки?
Если грузишь jpeg - он все равно разворачивается в памяти в чистый raw.
О потере качества: если это тот же jpeg - качество теряется на каждом преобразовании.
Если серый tiff (а у Sunny, похоже, этот случай) - потери не будет.

P.S. Ох уж эти вебовщики, знания о картинке ограничиваются способом сделать ее в минимальном размере на диске!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB