Jump to content

ВИПС (программное обеспечение)

Стабильная версия
8.15.2 [1]  Отредактируйте это в Викиданных / 14 марта 2024 г .; 4 месяца назад ( 14 марта 2024 г. )
Репозиторий
Написано в С , ГТК+
Операционная система Microsoft Windows , MacOS , Linux
Тип обработка изображений
Лицензия Меньшая стандартная общественная лицензия GNU
Стандартная общественная лицензия GNU
Веб-сайт libvips .github .что /libvips /

VIPS — это с открытым исходным кодом пакет программного обеспечения для обработки изображений . [2] [3] Он особенно хорош при работе с большими изображениями, работает с многоядерными процессорами , работает с цветом, научным анализом и общими исследованиями и разработками. Он был разработан и является продуктом нескольких европейских исследовательских проектов (VASARI, MARC, ACOHIR, Viseum), которые в основном касались искусства изображений, [4] но это потребовало нового подхода к обработке изображений.

По сравнению с большинством библиотек обработки изображений VIPS требует мало оперативной памяти и работает быстро, особенно на машинах с более чем одним процессором . В первую очередь это связано с его архитектурой, которая автоматически распараллеливает рабочие процессы обработки изображений. [5]

Программное обеспечение состоит из двух основных частей: libvips — библиотека обработки изображений и nip2 графический интерфейс пользователя . Графический интерфейс призван стать чем-то средним между Photoshop и Excel . Он не предназначен для таких задач, как ретуширование фотографий, но более полезен для многих других задач обработки изображений, для которых используются такие программы, как Photoshop. Оба работают в Linux , Unix , Windows и Apple macOS (10.2 и более поздних версиях). [6]

VIPS — стандартный пакет для многих дистрибутивов Linux , включая Debian , Fedora , Mint и Ubuntu . [7] [8] [9] [10]

Проектирование программного обеспечения

[ редактировать ]

Большая часть libVIPS написана на C , с привязками, доступными для Python , Ruby и некоторых других языков.

VIPS обрабатывает изображения небольшими порциями (прямоугольники или группы линий), а группы операций автоматически выполняются отдельными потоками. Это делает обработку параллельной, поскольку современные системы запускают потоки на разных ядрах. Это также означает, что промежуточные изображения имеют небольшой размер и могут легко храниться в оперативной памяти . Именно так изображения размером в несколько ГБ можно эффективно обрабатывать на машинах. [11] Он также использует наименьший тип хранилища для значений, поэтому типичное изображение RGB будет использовать три однобайтовых значения, но после арифметических операций они масштабируются, чтобы избежать ошибок, до 16 и 32-битных значений. Проектирование, ориентированное на спрос, означает, что если для вычисления необходимого требуется только определенная часть входных изображений, вычисляются только необходимые части. Множество архитектурных элементов придают VIPS скорость. [12] включая отсутствие блокировок и возможность перекрывать ввод и вывод. Большинство изображений начинаются с трех байтов на пиксель (RGB), но при обработке VIPS увеличивает размер каждого элемента до 16, 32 или 64 бит, если это необходимо, чтобы избежать ошибок обрезки/округления. Это также способствует скорости и низкому использованию оперативной памяти. Его дизайн, ориентированный на потребности, означает, что, например, очень большое промежуточное изображение может быть не полностью рассчитано, если для конечного результата требуется лишь небольшая его часть.

ВАЗАРИ [14] Это финансируемый ЕС исследовательский проект по созданию системы, способной измерять долгосрочное изменение цвета в картинах старых мастеров. Предыдущие системы производили серию точечных измерений областей, которые, как предполагалось, могли ухудшиться - конечно, это означало, что изменения в частях картины, которые не были измерены, были упущены. VASARI стремился исправить это с помощью изображений: он будет использовать камеру для измерения цвета и просто записывать всю картину.

У проекта были партнеры в Германии, Франции, Италии и Великобритании. Кирк Мартинес из Биркбек-колледжа и Дэвид Сондерс из Национальной галереи Лондона отвечали за создание лондонского сканера. Кирк нанял Никоса Дессиприса, который был сокурсником в группе обработки изображений Эссексского университета, а Дэвид нанял Джона Капитта, который только что защитил докторскую диссертацию по теоретической информатике в Кентском университете.

В рамках проекта планировалось отображать картины размером примерно 1 х 1 м с разрешением примерно до 20 пикселей на миллиметр, поскольку наименьшие интересные детали в картине составляют около 0,1 мм. Требовалось несколько цветных полос (было решено использовать семь), поскольку целью было измерение спектров отражения, а не просто цвета. Последнее требование заключалось в 16-битных данных. Объединив эти требования, вы получите размер изображения около 1 ГБ на цветовой канал. Подходящую библиотеку обработки изображений, которая могла бы обрабатывать необходимый размер данных, найти не удалось, поэтому была разработана специальная. Машины того времени были очень скромными по сегодняшним меркам: рабочая станция Sun стоила 40 000 фунтов стерлингов, имела 64 МБ оперативной памяти и работала на частоте 25 МГц, так что это было довольно сложной задачей.

Во время работы над докторской диссертацией Кирк разработал простые, но быстрые библиотеки C, которые работали с «хранилищами кадров» с отображением в памяти для обработки видео. Кирк и Никос в поисках вдохновения обратились к HIPS , но обнаружили, что трубы слишком неэффективны. Таким образом, VIPS основывался на их опыте работы с этим программным обеспечением, а также с ранним программным обеспечением для обработки изображений Unix, которое они разработали. Ранний код VIPS использовал для ввода файлы, отображенные в памяти (тогда это была захватывающая новинка, которая была быстрее, чем файловый ввод-вывод) и записывал данные по строкам сканирования за раз. В Национальной галерее Джон Капитт написал графический интерфейс под названием «vf» в SunView, графической среде Sun. Первая версия просто отображала изображение на экране рабочей станции и позволяла его панорамировать и масштабировать. В следующей версии был добавлен простой язык выражений и можно было вводить такие символы, как «+ 12», чтобы сделать изображение ярче. Он был переименован в «ip» для обработки изображений. Именно благодаря этим ранним экспериментам были созданы основы libVIPS.

VASARI завершился в 1993 году, но последующий европейский проект под названием MARC позволил добиться дальнейшего развития. Целью проекта было использование методов визуализации, разработанных в VASARI, для создания колориметрической камеры и использования ее для печати художественного каталога. Никос ушел, и Джон взял на себя разработку библиотеки VIPS, графического интерфейса и программного обеспечения камеры. Sun только что выпустила свою первую двухпроцессорную рабочую станцию, поэтому VIPS получила поддержку SMP. Дальнейшей целью было сократить время, затрачиваемое на ввод-вывод диска, поэтому в то же время была добавлена ​​возможность «связывать» операторов вместе без необходимости промежуточного хранилища. ip был переписан для использования набора инструментов пользовательского интерфейса Motif и получил полностью редактируемую историю.

В 1997 году Кирк Мартинес переехал в Саутгемптонский университет, поэтому разработка и использование продолжались в других проектах (включая Viseum, [15] АКОХИР [16] и Артист [17] ), а также VIPS и IP, разработанные в соответствии с их потребностями. Программное обеспечение было перенесено с Sun на Linux в конце 90-х, а ip — с Motif на GTK+ , став nip. VIPS получил поддержку файлов размером более 2 ГБ и до 64 процессоров. nip был снова переписан для GTK+-2.0 и стал тем nip2, который мы знаем сегодня.

В 2005 году Джон Капитт перешел из Национальной галереи в Имперский колледж, чтобы работать над медицинской визуализацией, а VIPS и nip2 приобрели множество функций, работая там. Недавними дополнениями стали поддержка изображений Analyse, DICOM3, FITS, Matlab и Radiance, генерация кода во время выполнения и начало перехода на основу GObject . Именно изобретательность и навыки программирования Джона сделали libVips таким успешным сегодня. [18]

Пользователи

[ редактировать ]

libVIPS в настоящее время используется в MediaWiki и, следовательно, в самой Википедии в расширении VipsScaler. Это ускоряет и расширяет возможности обработки изображений по сравнению с ранее использовавшимся программным обеспечением и, следовательно, экономит процессорное время на загруженных системах. По тем же причинам его используют Booking.com, Amazon, The New York Times, fda.gov, Homefinder и Idealista среди более чем тысячи компаний. [ нужна ссылка ] Популярный модуль Sharp Node.js и Gatsby используют libVIPS, поэтому использующие их веб-сайты полагаются на libVIPS. Amazon Web Services рекомендует Sharp/VIPS в своих рекомендациях. [19] Многие архивы изображений используют IIPimage, чтобы обеспечить просмотр изображений в очень высоком разрешении в Интернете, и они обычно подготавливаются с использованием libVIPS.

Лицензия

[ редактировать ]

libvips распространяется по лицензии LGPL , а nip2 — по лицензии GPL .

  1. ^ «Выпуск 8.15.2» . 14 марта 2024 г. Проверено 26 марта 2024 г.
  2. ^ Мартинес, К. и Купитт, Дж. (2005) VIPS — тщательно настроенная архитектура программного обеспечения для обработки изображений. В материалах Международной конференции IEEE по обработке изображений 2, стр. 574-577, Генуя.
  3. ^ Купитт, Дж. и Мартинес, К. (1996) VIPS: Система обработки изображений для больших изображений, Proc. СПИЭ, том. 2663, стр. 19--28 полная статья
  4. ^ Купитт Дж. и Мартинес К. (1994) Обработка изображений для музеев. В: стр. 133–147, Джон Уайли. ISBN   0-471-93941-2
  5. ^ «Скорость и использование памяти · libvips/Libvips Wiki» . Гитхаб .
  6. ^ Купитт, Дж., Бубис, А., Джонс, Х. (2007) Автоматизация анализа изображений с помощью VIPS, Стендовая презентация, Мемориальные лекции Хаунсфилда по медицинской визуализации
  7. ^ Пакет Debian VIPS http://packages.qa.debian.org/v/vips.html
  8. ^ Пакет Ubuntu VIPS http://packages.ubuntu.com/wily/libvips-tools
  9. ^ Fedora https://apps.fedoraproject.org/packages/nip2 .
  10. ^ Как http://community.linuxmint.com/software/view/nip2
  11. ^ «Как это работает — VipsWiki» . www.vips.ecs.soton.ac.uk . Архивировано из оригинала 23 марта 2010 г.
  12. ^ «Почему libvips работает быстро?» . Гитхаб . Проверено 4 марта 2021 г.
  13. ^ «История VIPS · libvips/Libvips Wiki» . Гитхаб .
  14. ^ «Проект ВАЗАРИ» .
  15. ^ «Проект ВИЗЕУМ» . Архивировано из оригинала 20 октября 2006 г. Проверено 6 февраля 2012 г.
  16. ^ «Используйте сайты и приложения для онлайн-знакомств» .
  17. ^ «Как начать блог | Создать свой сайт» .
  18. ^ «Соавторы libvips/Libvips» . Гитхаб .
  19. ^ «Изменение размера изображений с помощью Amazon CloudFront и Lambda@Edge» . оу блог . Амазонка. 20 февраля 2018 года . Проверено 4 марта 2021 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: de3a3642cbe85df5381eca1379229450__1721897280
URL1:https://arc.ask3.ru/arc/aa/de/50/de3a3642cbe85df5381eca1379229450.html
Заголовок, (Title) документа по адресу, URL1:
VIPS (software) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)