Воскресенье
05.05.2024, 23:59
| RSS
Главная
Меню сайта

Категории раздела
Madriva [3]
Ubuntu (KUbuntu, EdUbuntu, XUbuntu) [78]
SUSE [1]
Fedora Core [9]
ASPLinux [1]
Debian [16]
Gentoo [3]
Другие [167]

Мини-чат

Наш опрос
Оцените мой сайт
Всего ответов: 45

Статистика

Rambler's Top100Рейтинг@Mail.ru

Главная » 2012 » Февраль » 6 » ImageMagick: консольный пакет для обработки изображений
ImageMagick: консольный пакет для обработки изображений
08:11
ImageMagick — свободный (лицензия Apache 2.0) кроссплатформенный пакет программ для пакетной обработки изображений. Проще говоря, ImageMagick особо полезно использовать при обработке множества изображений общими методами. Пакет поддерживает большинство графических форматов, также его можно использовать совместно с языками программирования, например, для написания скриптов обработки изображений, что очень полезно.
В этой статье описана лишь малая часть возможностей ImageMagick, т.к мы хотим лишь познакомить читателя с этим пакетом и дать базовые навыки работы, которые часто нужны в повседневной жизни.

Установка
ImageMagick доступен в репозиториях большинства дистрибутивов. Просто устанавливаем пакет imagemagick через пакетный менеджер.
Для Deb:
apt-get install imagemagick

Для RPM:
yum install imagemagick


Утилиты пакета ImageMagick
Как уже упоминалось, ImageMagick — это не одна программа, а пакет утилит.
В его в состав входят:
animate Создание анимации из группы изображений;
compare Показывает различия между двумя изображениями;
composite Используется для наложение одного изображения на другое;
conjure Выполняет скрипты, написанные на собственном языке "Magick Scripting Language";
convert Используется для различных манипуляций с изображениями;
display Вывод изображения на экран (понятно по названию);
identify Позволяет узнать свойства изображения такие как разрешение, размер и тип;
import Создаёт скриншот;
mogrify Используется аналогично convert, но записывает все изменения в этот же файл.
stream Позволяет получать части от изображения;

Практическое применение некоторых возможностей пакета
Опишем некоторые приёмы обработки изображений при помощи ImageMagick.
Создание анимации
animate -delay значение -loop 0 *

Эта команда создаёт из всех файлов в данной папке анимацию. После выполнения результат работы будет показан в окне. Чтобы сохранить анимацию, раскройте меню, нажав левой кнопкой мыши в области окна вывода анимации, затем выберете Animate > Save и укажите имя файла и выберите желаемый формат.
Значение после аргумента -delay задаёт паузы между кадрами сотых секундах. Например, -delay 100 означает секундную задержку перед показом очередного кадра анимации.
Значение аргумента -loop указывает на то, сколько раз нужно повторить сначала анимацию. Значение -loop 0 задаёт неограниченное количество циклов повторения.
Различия между двумя изображениями
compare изображение1 изображение2 имя_результирующего_изображения

Изображения должны быть одинакового разрешения. Результатом работы программы, грубо говоря, станет изображение, где будет выделены цветом пиксели, которые различны в двух заданных изображениях.
Наложение одного изображения на другое
composite изображение1 изображение2 имя_результирующего_изображения

Накладывает изображение1 на изображение2, результатом работы станет изображение имя_результирующего_изображения.
Вывод изображения на экран
display имя_изображения

Выводит указанное изображение на экран. При нажатии на изображение октроется меню ImageMagick, где можно проводить операции с изображением как в обычном графическом редакторе, так что ImageMagick поддерживает не только текстовый интерфейс.
Информация об изображении
identify изображение1 [изображение 2 ... ]

Позволяет узнать тип, разрешение, глубину цвета, размер и другие параметры указанных изображений.
Создание скриншота
import имя_результирующего_изображения

При вызове программы необходимо мышкой указать прямоугольную область экрана. Результат будет сохранён в имя_результирующего_изображения.
Изменение разрешения изображения
convert -resize ШИРИНАxВЫСОТА изображение изменённое_изображение

Явно задаёт новое разрешение. Пропорциональность сохраняется, даже если введённые значения непропорциональны изначальному разрешению.
convert -resize количество_% изображение изменённое_изображение

Изменения разрешения относительно старого разрешения.
Пример использования:
convert -resize 50% *.png resized.png

Уменьшает разрешение всех изображений с расширением png в папке в два раза. Изменённые изображения будут называться resized-порядковый_номер.
Кадрирование изображения
convert -crop ШИРИНАxВЫСОТА+0+0 изображение имя_результирующего_изображения

Вырезает прямоугольник размера ШИРИНАxВЫСОТА из изображжения, начиная с крайнего левого угла. Чтобы сместить точку начала кадрирования нужно задавать координаты точки начала, например 100x100+50+50 — вырежет область размером 100x100 начиная с точки на изображения с координатами x=50 y=50 (эти координаты отсчитываются от крайнего левого угла).
Изменить глубину цвета
convert -depth значение_глубины изображение имя_результирующего_изображения

Склейка изображений в единое
convert * +append имя_результирующего_изображения

Из всех файлов в папке создаёт единое изображение, в котором содержаться все изображения из папки в ряд (опция +append означает добавить изображение в ряд с права).
Добавление цветной рамки вокруг изображения
convert -bordercolor имя_цвета -border размер_бордюра изображение имя_результирующего_изображения

Пример:
convert -bordercolor green -border 3x3

Поворот изображения
convert -rotate +/-градус изображение имя_результирующего_изображения

"+" указывает на направление по часовой стрелки, а "-" против часовой. ">" разрешает поворачивать только если ширина больше высоты, а "<" наоборот.
Пример:
convert -rotate +90

Источник:http://linuxnow.ru/view.php?id=102
Категория: Другие | Просмотров: 840 | Добавил: tol | Рейтинг: 0.0/0 |
Всего комментариев: 0
Имя *:
Email *:
Код *:
Форма входа

Поиск

Друзья сайта

  • Администрация

    Andry


    Tol


    Copyright MyCorp © 2024
    Хостинг от uCoz