Комментарии 72
Спасибо, познавательно. Но наверное не стоить упоминать про "совсем лениво", потому что в таких вьюверах графики как XnView пакетная обработка графики делается на много проще, и если уж человеку действительно будет лень, он воспользуется именно ими. :)
+1
Э... Так это нужно его ещё установить, а перед установкой знать, что он может. :) Предпочитаю держать на компе как можно меньше разнообразного софта. Один векторный редактор, один растровый, один (штатный) просмотровщик и т.д. Так и в голове просторнее (больше места для творчества), и легче найти общий язык с клиентами, у которых на компе только стандартный виндовый просмотровщик.
В общем, заметка не про то, в чём лучше делать пакетную обработку, а как её сделать именно в Гимпе.
В общем, заметка не про то, в чём лучше делать пакетную обработку, а как её сделать именно в Гимпе.
+1
Если использовать ImageMagick - лидера консольной пакетной обработки графических файлов, то программу можно сократить до 6 понятных строчек.
+1
Сила scriptfu не в простых операциях, вроде масштабирования, а в сложных.
Понятность параметров ImageMagick не стоит преувеличивать. Конечно, читаемость намного выше, чем у лиспа, но документация не очень полная, и, порой, можно наткнуться на неожиданные эффекты, вроде картинки за пределами границ изображения после -crop.
Понятность параметров ImageMagick не стоит преувеличивать. Конечно, читаемость намного выше, чем у лиспа, но документация не очень полная, и, порой, можно наткнуться на неожиданные эффекты, вроде картинки за пределами границ изображения после -crop.
+1
в большинстве случаев можно даже до одной строчки сократить, но вот насчет понятности - не всегда верно.
Всё-таки в IM всё ещё есть немалая доля шаманства (из-за каши в документации и интерпретации параметров). Я плотно использую IM в немаленьком проекте уже три года и до сих пор не перестаю удивляться некоторым вещам. Или неожиданым сюрпризам после, казалось бы, минорных обновлений.
Всё-таки в IM всё ещё есть немалая доля шаманства (из-за каши в документации и интерпретации параметров). Я плотно использую IM в немаленьком проекте уже три года и до сих пор не перестаю удивляться некоторым вещам. Или неожиданым сюрпризам после, казалось бы, минорных обновлений.
+1
На самом деле вопрос только в том, кто чему научился, и хорошо знает. Для массового ресайза я тоже использую ImageMagick, а для особо извращенных задач, типа скачать с goole maps карту Москвы, кусочками 256x256 и склеить из них 9 мегабайтный jpeg - php-cli с gd2.so
+1
Ну именно для данного примера быстрее и удобнее (раза в 2-3 короче) будет написать обычный скрипт на Питоне.
+2
В Гимпе, не так давно замечал Python-Fu, правда изучить его так и не взялся…
А в общем, эти сценарии нужны больше не для пакетной обработки изорбажений, а для выполнения многошаговых/сложных операций, являющихся тривиальными…
Кстате, многие сложные фильтры из стандартного набора гимпа — просто script-fu сценарии, построенные на других, более простых фильтрах.
А в общем, эти сценарии нужны больше не для пакетной обработки изорбажений, а для выполнения многошаговых/сложных операций, являющихся тривиальными…
Кстате, многие сложные фильтры из стандартного набора гимпа — просто script-fu сценарии, построенные на других, более простых фильтрах.
0
Или на Ruby :)
+1
В Гимпе под Винду Питон нужно самостоятельно устанавливать. И примеров на Script-Fu гораздо больше. В общем, для новичка проще Script-Fu. Если только этот новичёк не работает постоянно с Питоном. :)
0
XnView тоже для пакетной обработки подходит.
там опций дофига.
там опций дофига.
+1
Спасибо, постоянно сталкиваюсь с подобной проблемой.
P.S. Подскажите пожалуйста какой нибудь вьюер под линукс в котором есть пакетная обработка картинок.
P.S. Подскажите пожалуйста какой нибудь вьюер под линукс в котором есть пакетная обработка картинок.
0
Гимп со скриптами.
=)
А по делу, да многие... XnView,GwenView... К чему душа больше лежит.
=)
А по делу, да многие... XnView,GwenView... К чему душа больше лежит.
0
А вот, например, чудный плагин nautilus-image-converter. Из описания:
Adds a Resize Images... menu item to the context menu of all images. This opens a dialog where you set the desired image size and file name. A click on Resize finally resizes the image(s) using ImageMagick s convert tool.
Adds a Resize Images... menu item to the context menu of all images. This opens a dialog where you set the desired image size and file name. A click on Resize finally resizes the image(s) using ImageMagick s convert tool.
+1
Кошмар, это же LISP.
0
Юзаю IrfanView. Никаких проблем. Для Gimp'a писать скрипты... отличная идея "стартапа"?
"Вспоминаем про замечательные средства автоматизации в замечательном и бесплатном редакторе GIMP." - действительно, вспоминаем. Спасибо.
"Вспоминаем про замечательные средства автоматизации в замечательном и бесплатном редакторе GIMP." - действительно, вспоминаем. Спасибо.
-1
Погодите, а зачем LISP? Там же python-fu есть. На нём намного проще и привычнее.
0
Он не «из коробки», к сожалению. Да и проще и привычнее, это если вы на Питоне пишете. Я ни с тем ни с тем не работал, поэтому смотрел на доступность и наличие примеров.
Было бы здорово, если бы кто-то и про Python-Fu написал.
Было бы здорово, если бы кто-то и про Python-Fu написал.
0
Python-Fu как раз из коробки. Более того, если Вы поспрашиваете разработчиков гимпа, они скажут, что было бы неплохо сделать Петон основным сценарным языком программы.
0
Аааррр! Злой и страшный лисп придёт ночью и съест тебя откусит твои последние скобочки.
0
Кто же так скобки в лиспе форматирует? Вот так надо:
(define (batch-resize pattern size quality)
(let* ((filelist (cadr (file-glob pattern 1)))
(len (if (string? size)
(string-length size)
0))
(rate (if (and (> len 0) (char=? #\% (string-ref size (- len 1))))
(/ (string->number (substring size 0 (- len 1))) 100)
0))
(size (if (> rate 0)
0
(if (> len 0) (string->number size) size))))
(while (not (null? filelist))
(let* ((filename (car filelist))
(image (car (gimp-file-load RUN-NONINTERACTIVE filename filename)))
(drawable (car (gimp-image-get-active-layer image)))
(old-width (car (gimp-image-width image)))
(old-height (car (gimp-image-height image)))
(width (if (> rate 0)
(* rate old-width)
(if (> old-width old-height)
size
(* size (/ old-width old-height)))))
(height (if (> rate 0)
(* rate old-height)
(if (> old-width old-height)
(* size (/ old-height old-width)) size))))
(gimp-image-scale image width height)
(file-jpeg-save RUN-NONINTERACTIVE image drawable filename filename
quality 0 1 1 "" 2 1 0 0)
(gimp-image-delete image))
(set! filelist (cdr filelist)))))
+3
Да уж, простая такая пакетная обработка... Вспоминаем, что программы фотообработки создаются для фотографов, а не для программистов, и вспоминаем, как просто пакетная обработка реализована в ФШ и делаем выводы.
-3
Ну и какие же мы делаем выводы?
Выводы могут быть только такими:
1) топик неправильно назван больше подходит "Введение в script-fu";
2) пример неудачный, ведь возможности script-fu куда более мощные.
Выводы могут быть только такими:
1) топик неправильно назван больше подходит "Введение в script-fu";
2) пример неудачный, ведь возможности script-fu куда более мощные.
+1
Разница в стоимости тоже существенная
+1
Полезная тулза, но для юзеров проще выложить на ту же пикасу и не заморачиваться. Сам так делаю, хоть и програмер.
0
Вот поэтому дизайнеры предпочитают другие программы и ОС.
0
Нет. Не по этому. Их просто учат во всех без исключения школах/вузах Photoshop'у. Когда я показал, что могу делать в GIMP на python-fu, одной знакомой дизайнеру она меня заставила этот GIMP сначала поставить ей на Windows, потом она сообщила, что в Windows он выглядит некрасиво, и заставила ставить ей Linux. Я честно её отговаривал :) не получилось на свою голову. Сейчас ещё python'у учить :)
Может быть, GIMP сложнее освоить, чем Photoshop. Но он действительно очень мощный. Особенно, когда дело доходит до обработки мелких деталей, вы на мышке убьётесь это делать. А на python-fu, обычно, пара строчек кода :) В итоге, девушка берёт за работу, как Photoshop-дизайнер, но за компьютером сидит гораздо меньше. Правда, я сижу чуть больше :)...
Может быть, GIMP сложнее освоить, чем Photoshop. Но он действительно очень мощный. Особенно, когда дело доходит до обработки мелких деталей, вы на мышке убьётесь это делать. А на python-fu, обычно, пара строчек кода :) В итоге, девушка берёт за работу, как Photoshop-дизайнер, но за компьютером сидит гораздо меньше. Правда, я сижу чуть больше :)...
+1
_Профессиональных_ дизайнеров нет смысла учить Гимпу: у него не хватает пока функционала. Для домашнего использования иногда вполне ничего.
+2
Ну. Я не разбираюсь же... Меня просто попросили научить, значит, функционала хватило :) А чего именно не хватает? Лично у меня такое ощущение, что в библиотеке плагинов и скриптов для GIMP есть всё, что можно только пожелать. Хотя, опять же, я вообще не дизайнер, может, чего и не понимаю.
0
Для начала не хватает 16 bit, Lab color. Остальные недостатки легко находятся через Гугл.
0
В Gimp есть много функционала которого нет в Photoshop.
Это утверждение верно. И оно останется верным если переставить Gimp и Photoshop местами. В Гимпе нет поддержки CMYK, в Фотошопе нет скриптового языка.
Это утверждение верно. И оно останется верным если переставить Gimp и Photoshop местами. В Гимпе нет поддержки CMYK, в Фотошопе нет скриптового языка.
0
Самое смешное, что статистическое большинство в ответ на вопрос, зачем они используют лаб, начинает руками изображать зигзаги каналов a* и b*. И невдомёк им, грешным, что для этого совсем не нужен фотошоп или гимп с лабом. Для этого всего лишь нужен нормальный конвертер RAW.
0
Ерунду какую-то вы написали. Если бы всё только занакчивалось увеличением насыщенности, которую вы описали... Вот расскажите как в вашем гипотетическом конверторе увеличить ч/б контраст, не трогая цветового?
0
Кроме смеха, именно повышением насыщенности для очень многих дело и кончается. Конвертер - не гипотетический, а совершенно реальный. Более того, упомянутый в топеге :)
0
Мы же вроде говорили о профессиональном использовании?
Если кому-то хватает только повышения контраста, пусть откроет для себя новый пункт "Vibrance" в ФШ конверторе: он как раз отвечает за что-то подобное.
А вообще Lab вещь мощная, умные дядьки вроде Моргулиса даже книжки целые пишут об этом, которые тут же становятся бестселлерами и классикой. А вы про насыщенность...
Если кому-то хватает только повышения контраста, пусть откроет для себя новый пункт "Vibrance" в ФШ конверторе: он как раз отвечает за что-то подобное.
А вообще Lab вещь мощная, умные дядьки вроде Моргулиса даже книжки целые пишут об этом, которые тут же становятся бестселлерами и классикой. А вы про насыщенность...
0
Профессионалами сейчас называет немного не тех и немного не за то.
0
Зато _талантливым_ дизайнерам пофиг в чем работать. Фотошоп, гимп и прочее всего-лищь многофункциональные инструменты. Проверено на дизайнерах.
+1
_Талантливый_ дизайнер может и на бумаге рисовать, а потом сканировать. Только вот зачем? ФШ стоит не на столько много, чтобы отказываться от него при профессиональном использовании. Он дорог только для домашних пользователей: отсутствие гибкой политики лицензирования у Адоб - имхо единственный значительный минус ФШ.
0
Вот довод тот-же, вывод противоположный :)
Одно дело, когда изображение готовится для типографии, тогда ФШ. Но в случае вэб-дизайна Gimp превосходит Ps по возможностям, особенно во времена "Веб 2.0" (я не понимаю как этот термин некоторые проецируют на графику, но для обозначения стиля сойдет). Другое дело что интерфейс объективно не удобен и большинство кадров обучено фотошопу - на переучивании теряется больше денег чем стоит фотошоп.
Одно дело, когда изображение готовится для типографии, тогда ФШ. Но в случае вэб-дизайна Gimp превосходит Ps по возможностям, особенно во времена "Веб 2.0" (я не понимаю как этот термин некоторые проецируют на графику, но для обозначения стиля сойдет). Другое дело что интерфейс объективно не удобен и большинство кадров обучено фотошопу - на переучивании теряется больше денег чем стоит фотошоп.
0
Теории заговора, конечно, интересны, ну уж больно сильно энтропийны, поэтому должны использоваться только в крайних случаях.
Я не спорю, что скриптами писать - эффективно, но просто это другая работа, не дизайнерская. На ваш пример есть куча других контрпримеров, например: "я эту конфетку ни на что не променяю", говорит мне знакомый, так скажем - художник.
Я не спорю, что скриптами писать - эффективно, но просто это другая работа, не дизайнерская. На ваш пример есть куча других контрпримеров, например: "я эту конфетку ни на что не променяю", говорит мне знакомый, так скажем - художник.
0
Ну. На что можно ответить так: 1. А он пробовал что-нибудь другое, кроме win/mac? 2. Дизайнеры разные бывют и разными работами занимаются. Вот конкретно этой девушке понравился GIMP и скрипты. Ни на что большее я не претендую :) Просто привёл пример того, что дизайнеры, иногда и под GNOME переезжают, потому что им там эффективнее живётся.
0
хм, объедините мне точно панораму в 6400px по ширине из 5 разных фотогрфий и отрисуйте дополнительно объекты, замените в каждой пятой часте панорамы облака, погоду, и время суток. И все с помощью пары строчек кода. В реальности дизайнерам никогда не нужно что-то писать руками.
p.s. В фотошопе намного приятнее и быстрее работать под MacOS X
p.s. В фотошопе намного приятнее и быстрее работать под MacOS X
-1
Фотошоп, как и любой другой редактор такого рода для сборки панорам субоптимален. Так что пример не в тему :)
0
Ну. Облака я менял - ничего сложного. С остальным не сталкивался... Ну будет не пара строчек. Будет пара десятков. Это всё-равно быстрее, imho, чем мышкой напряжённо кликать. Плюс сценарии сохраняются на будущее.
0
спасибо, поржал =)
-1
Когда я показал, что могу делать в GIMP на python-fu, одной знакомой дизайнеру она меня заставила этот GIMP сначала поставить ей на Windows, потом она сообщила, что в Windows он выглядит некрасиво, и заставила ставить ей Linux. Я честно её отговаривал :) не получилось на свою голову. Сейчас ещё python'у учить :)
кажется мне, не в Гипме и Линуксе дело тут, просто она хочет чтобы ты уделил ей внимание
0
>Может быть, GIMP сложнее освоить, чем Photoshop. Но он действительно очень мощный.
По-честному всё это называется так: для осознания мощности GIMP'а надо выучить язык программирования. Отличный путь для дизайнера. Я бы посмотрел на рабочего, которому дадут мешок деталей вместо перфоратора со словами:"это очень мощный инструмент, надо только поискать в библиотеках чертежей как собирать нужное устройство."
В вашем примере у девушки, работающей в GIMP'е, есть выделенный программист для скриптов. С таким подходом, винда+фотошоп как минимум дешевле.
По-честному всё это называется так: для осознания мощности GIMP'а надо выучить язык программирования. Отличный путь для дизайнера. Я бы посмотрел на рабочего, которому дадут мешок деталей вместо перфоратора со словами:"это очень мощный инструмент, надо только поискать в библиотеках чертежей как собирать нужное устройство."
В вашем примере у девушки, работающей в GIMP'е, есть выделенный программист для скриптов. С таким подходом, винда+фотошоп как минимум дешевле.
0
((((Lisp это) конечно) хорошо), ((но bash), python и imagemagic привычнее))
0
Спасибо, в мемориз.
А по теме могу добавить, что дело не в том удобно или нет, а в том, что Линуксоиды сидят на Гимпе чаще всего, и для них это отличное решение, ну это мое личное имхо.
А по теме могу добавить, что дело не в том удобно или нет, а в том, что Линуксоиды сидят на Гимпе чаще всего, и для них это отличное решение, ну это мое личное имхо.
+1
По-моему в фотошопе с помощью Action все-таки намного удобнее, нагляднее, и писать ничего не нужно.
0
Было бы интересно увидеть сравнение производительности.
Одни и те же пакетные операции на GIMP и IM.
В идеале для случая параллельной работы над многими файлами. (Размечтался.)
Одни и те же пакетные операции на GIMP и IM.
В идеале для случая параллельной работы над многими файлами. (Размечтался.)
0
Script-Fu отличная возможность, но если надо пакетом выполнить обработку NNN изображений — также можно использовать пакетный плагин для GIMP — BIMP (Batch Image Manipulation), скачать BIMP можно с сайта GIMP
0
Что за вёрстка у Хабра дурацкая!
У меня строчка заканчивается вот так:
(/ (string->number (substring size 0 (- len 1))) 1
Сто раз перечитал и полчаса думал зачем делить на единицу!
У меня строчка заканчивается вот так:
(/ (string->number (substring size 0 (- len 1))) 1
Сто раз перечитал и полчаса думал зачем делить на единицу!
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Пакетная обработка изображений в GIMP