ИзображениеМагия
![]() | |
![]() Скриншот дисплея с меню | |
Оригинальный автор(ы) | Джон Кристи |
---|---|
Разработчик(и) | ООО «ИмиджМаджик Студия» |
Первоначальный выпуск | 1 августа 1990 г [1] |
Стабильная версия | 7.1.1.35 [2] ![]() |
Репозиторий | |
Написано в | С |
Операционная система | Кросс-платформенный |
Тип | Манипулирование изображениями |
Лицензия | ИзображениеМагия [3] |
Веб-сайт | имиджмагия |
Автор | ООО «ИмиджМаджик Студия» |
---|---|
SPDX идентификатор | ИзображениеМагия [4] |
Совместимость с Debian FSG | Да |
Совместимость с лицензией GPL | Да |
Связывание из кода с другой лицензией | Да |
Веб-сайт | имиджмагия |
ImageMagick , вызываемый из командной строки как magick
, является бесплатным и с открытым исходным кодом [3] кроссплатформенный пакет программного обеспечения для отображения, создания, преобразования, изменения и редактирования растровых изображений . ImageMagick был создан Джоном Кристи в 1987 году, он может читать и записывать более 200 форматов файлов изображений . Он широко используется в приложениях с открытым исходным кодом.
История
[ редактировать ]ImageMagick был создан в 1987 году Джоном Кристи во время работы в DuPont для преобразования 24-битных изображений (16 миллионов цветов) в 8-битные изображения (256 цветов), чтобы их можно было отображать на большинстве экранов того времени. Он был выпущен бесплатно в 1990 году, когда DuPont согласилась передать авторские права компании ImageMagick Studio LLC , которая до сих пор является организацией, сопровождающей проект. [5] [6] [7]
В мае 2016 года сообщалось, что ImageMagick имеет уязвимость, благодаря которой злоумышленник может выполнить произвольный код на серверах, использующих приложение для редактирования загружаемых пользователем изображений. [8] Исследователи безопасности из Cloudflare наблюдали использование уязвимости при активных попытках взлома. [9] Ошибка безопасности возникла из-за того, что ImageMagick вызывал внутренние инструменты без предварительной проверки на отсутствие в именах путей и файлов неправильных команд оболочки. [10] Уязвимость не затронула дистрибутивы ImageMagick, включавшие правильно настроенную политику безопасности . [ нужна ссылка ]
Особенности и возможности
[ редактировать ]Программное обеспечение в основном состоит из ряда утилит интерфейса командной строки для управления изображениями. ImageMagick не имеет надежного графического пользовательского интерфейса для редактирования изображений, как Adobe Photoshop и GIMP , но включает в себя – для Unix-подобных операционных систем – базовый собственный X Window графический интерфейс (называемый IMDisplay) для рендеринга и управления изображениями, а также библиотеки API для многих языки программирования. Программа использует магические числа для определения форматов файлов изображений .
Ряд программ, таких как Drupal , MediaWiki , phpBB и vBulletin , могут использовать ImageMagick для создания миниатюр изображений , если они установлены. ImageMagick также используется другими программами, такими как LyX , для преобразования изображений.
ImageMagick имеет полностью интегрированную Perl привязку под названием PerlMagick. [11] а также многие другие: G2F( Ada ), MagickCore( C ), MagickWand(C), ChMagick(Ch), ImageMagickObject( COM+ ), Magick++( C++ ), JMagick( Java ), L-Magick( Lisp ), NMagick( Neko / Haxe ), MagickNet ( .NET ), PascalMagick ( Pascal ), MagickWand для PHP ( PHP ), IMagick (PHP), PythonMagick ( Python ), RMagick ( Ruby ) и TclMagick ( Tcl/Tk ).
Преобразование формата файла
[ редактировать ]Одной из основных и тщательно реализованных функций ImageMagick является его способность эффективно и точно конвертировать изображения между различными форматами файлов (он использует команду convert
чтобы добиться этого).
Квантование цвета
[ редактировать ]Количество цветов в изображении можно уменьшить до произвольного числа путем взвешивания наиболее заметных значений цвета, присутствующих среди пикселей изображения.
Связанной возможностью является художественный эффект постеризации , который также уменьшает количество цветов, представленных в изображении. Разница между этим и стандартным квантованием цвета заключается в том, что в то время как при стандартном квантовании окончательная палитра выбирается на основе взвешивания выраженности существующих цветов в изображении, постеризация создает палитру цветов, плавно распределенную по спектру, представленному в изображении. В то время как при стандартном квантовании цвета все окончательные значения цвета являются теми, которые были в исходном изображении, значения цвета в постеризованном изображении могут отсутствовать в исходном изображении, но находятся между исходными значениями цвета.
Дизеринг
[ редактировать ]Предусмотрен точный контроль сглаживания , возникающего во время изменения цвета и теней, включая возможность создания сглаживания полутонов .
Жидкое масштабирование
[ редактировать ]В 2008 году была добавлена поддержка жидкого масштабирования . [12] Эта функция позволяет, например, масштабировать изображения 4:3 в изображения 16:9 без искажения изображения.
Художественные эффекты
[ редактировать ]ImageMagick включает в себя множество фильтров и функций, предназначенных для создания художественных эффектов:
- Преобразование угольного эскиза
- Постеризация
OpenCL
[ редактировать ]ImageMagick может использовать OpenCL для использования ускоренной видеокарты ( GPU ) для обработки. [13]
Глубокий цвет
[ редактировать ]Версия Q8 поддерживает до 8 бит на пиксель (8-битная градация серого , 24- или 32-битный цвет RGB ). Версия Q16 поддерживает компоненты с разрешением до 16 бит на пиксель (16-битные оттенки серого, до 48- или 64-битные цвета RGB).
Другой
[ редактировать ]Ниже приведены некоторые другие функции ImageMagick:
- Преобразование формата : конвертируйте изображение из одного формата в другой (например, PNG в JPEG ).
- Преобразование: изменение размера, поворот, обрезка, переворот или обрезка изображения. (Применяет их без потери генерации к файлам JPEG, где это возможно.)
- Прозрачность: делает части изображения невидимыми.
- Рисование: добавление фигур или текста к изображению.
- Украсить: добавьте к изображению рамку или рамку.
- Специальные эффекты: размытие, повышение резкости, пороговое значение или оттенок изображения.
- Анимация: собрать анимационный файл GIF из последовательности изображений.
- Текст и комментарии: вставляйте в изображение описательный или художественный текст.
- Идентификация изображения: опишите формат и атрибуты изображения.
- Композитное: наложение одного изображения на другое.
- Монтаж: сопоставление миниатюр изображений на холсте изображения.
- Обобщенное искажение пикселей: корректируйте или вызывайте искажения изображения, включая перспективу.
- Морфология фигур: извлекайте особенности, описывайте формы и распознавайте закономерности на изображениях.
- Поддержка кинофильмов: чтение и запись распространенных форматов изображений, используемых при работе с цифровыми фильмами.
- Калькулятор изображения: примените математическое выражение к изображению или каналам изображения.
- Дискретное преобразование Фурье : реализует прямое и обратное ДПФ.
- Управление цветом: точное управление цветом с помощью цветовых профилей или вместо встроенного гамма-сжатия или расширения в соответствии с требованиями цветового пространства.
- Изображения с расширенным динамическим диапазоном: точно отображают широкий диапазон уровней интенсивности реальных сцен: от самого яркого прямого солнечного света до самых глубоких и темных теней.
- Зашифруйте или дешифруйте изображение: преобразуйте обычные изображения в непонятную тарабарщину и обратно.
- Поддержка виртуальных пикселей: удобный доступ к пикселям за пределами области изображения.
- Поддержка больших изображений: чтение, обработка или запись изображений мега-, гига- или терапиксельного размера.
- Поддержка потоков выполнения: ImageMagick является поточно-ориентированным , и большинство внутренних алгоритмов выполняются параллельно, чтобы воспользоваться преимуществами ускорения, предлагаемыми многоядерными процессорными чипами.
- Гетерогенная распределенная обработка: некоторые алгоритмы поддерживают OpenCL, чтобы воспользоваться преимуществами ускорения, обеспечиваемыми согласованным выполнением на гетерогенных платформах, состоящих из центральных, графических и других процессоров.
- Распределенный кэш пикселей: выгрузите промежуточное хранилище пикселей на один или несколько удаленных серверов.
Распределение
[ редактировать ]ImageMagick является кроссплатформенным и работает на Microsoft Windows и Unix-подобных системах, включая Linux , macOS , iOS , Android , Solaris , Haiku и FreeBSD . проекта Исходный код может быть скомпилирован для других систем, включая AmigaOS 4.0 и MorphOS . Он был запущен под управлением IRIX . [14]
Сопутствующее программное обеспечение
[ редактировать ]GraphicsMagick — это ответвление ImageMagick 5.5.2, созданное в 2002 году, в котором подчеркивается стабильность между выпусками API программирования и параметров командной строки. GraphicsMagick возникла в результате непримиримых разногласий в группе разработчиков. [15]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ «История» . ИзображениеMagick . Архивировано из оригинала 14 марта 2018 года . Проверено 18 марта 2018 г.
Доктору Пенсаку пришлось убедить высшее руководство DuPont. ... В любом случае, ImageMagick не был бы доступен сегодня, если бы DuPont не передала авторские права ImageMagick Studio LLC. ImageMagick был опубликован в группе usenet comp.archives 1 августа 1990 года.
- ^ «7.1.1-35» . Проверено 16 июля 2024 г.
- ^ Jump up to: а б с «ImageMagick: Лицензия» . ИзображениеMagick . Архивировано из оригинала 26 октября 2016 года . Проверено 26 октября 2016 г.
- ^ «Лицензия ImageMagick» . spdx.org .
- ^ «ImageMagick: История» . www.imagemagick.org . Студия ImageMagick. Архивировано из оригинала 29 октября 2016 года . Проверено 18 октября 2016 г.
- ^ Хайдарбегович, Нермин (12 февраля 2019 г.). «ImageMagick: управление графикой из командной строки?» . whoishostingthis.com . Архивировано из оригинала 29 сентября 2020 года . Проверено 18 августа 2020 г.
- ^ «ИмиджМагик» . www.computerhope.com . 27 февраля 2019 г. . Проверено 18 августа 2020 г.
- ^ «Эксплойты вышли из-под контроля: хакеры нацелены на критическую ошибку обработки изображений» . Арс Техника. 2016. Архивировано из оригинала 25 сентября 2016 года . Проверено 26 сентября 2016 г.
- ^ «Внутри ImageTragick: реальные полезные данные, используемые для взлома веб-сайтов» . CloudFlare. 2016. Архивировано из оригинала 1 октября 2016 года . Проверено 26 сентября 2016 г.
- ^ Уильямс, Крис (4 мая 2016 г.). «Эксплойты для взлома серверов для ImageMagick настолько тривиальны, что вы будете кричать» . Регистр . Архивировано из оригинала 23 декабря 2017 года . Проверено 22 декабря 2017 г.
- ^ ООО «ИмиджМаджик Студия». «PerlMagick, Perl API @ ImageMagick» . imagemagick.org . Архивировано из оригинала 10 мая 2017 года . Проверено 22 мая 2017 г.
- ^ «Журнал изменений ImageMagick» . Архивировано из оригинала 6 июня 2016 года . Проверено 29 июля 2021 г.
- ^ «ImageMagick: Архитектура» . Архивировано из оригинала 1 июня 2016 года . Проверено 6 января 2010 г.
- ^ «API Magick++: установите Magick++» . imagemagick.org . Архивировано из оригинала 8 мая 2017 года . Проверено 22 мая 2017 г.
- ^ «Представляем проект GraphicsMagick» . Список рассылки разработчиков ImageMagick. 15 марта 2003 г.
Дальнейшее чтение
[ редактировать ]- Монтабоне, Себастьян (2010). Начало цифровой обработки изображений: использование бесплатных инструментов для фотографов . Апресс. ISBN 978-1-4302-2841-7 .
Внешние ссылки
[ редактировать ]
- Официальный сайт
- Политика безопасности ImageMagick – Политика безопасности ImageMagick – лучшие практики настоятельно рекомендуют вам настроить политику безопасности, которая соответствует вашей локальной среде.
- Примеры IM – Примеры использования CLI – предоставляют множество небольших примеров, демонстрирующих его широкий спектр возможностей.
- Сценарии ImageMagick Фреда — предоставляет множество сценариев оболочки, использующих ImageMagick для выполнения более сложных задач.
- Как автоматизировать структурное тестирование PDF с помощью ImageMagick — демонстрирует функции преобразования, сравнения и сопоставления ImageMagick.
- программное обеспечение 1990 года
- Программное обеспечение командной строки
- Бесплатное графическое программное обеспечение
- Бесплатные редакторы растровой графики
- Бесплатное программное обеспечение, написанное на C.
- Графические библиотеки
- Графическое программное обеспечение
- Программное обеспечение IRIX
- Бесплатная программа для создания скриншотов