Войти Зарегистрироваться
Авторизация на сайте

Ваш логин:

Ваш пароль:

Забыли пароль?

Навигация
Реклама
Архив новостей
Реклама
Календарь событий

В ХОЗЯЙСТВЕ ПРИГОДИТСЯ - Фигурная резьба Новый метод масштабирования изображений - 9 Ноября 2010 - Прохождение игр

Опубликовано: 28.08.2018

Подозреваю, что у каждого владельца цифрового фотоаппарата в архиве найдется несколько кадров с композицией в стиле «очень одинокий петух». Но в таком случае чаще всего можно кадрировать изображение — никаких существенных деталей при этом не потеряется. А вот если таких объектов два — в противоположных углах кадра, — то кадрирование не спасет.

Доктор Ариэль Шамир и Шай Авидан из Школы компьютерных искусств Эфи Арази представили на выставке SIGGRAPH новый алгоритм изменения размеров изображения. Он ищет в изображении вертикальные и горизонтальные «швы» пикселей с наименьшей энергией (т.е. контрастом или детализацией) и затем использует их для масштабирования без потери важной информации, такой как лица или другие детали. Эту технику можно использовать не только для уменьшения и увеличения, но и для удаления ненужных деталей.

Взгляните на монитор. А теперь — на экран КПК. Можно еще и на сотовый телефон посмотреть. Разнообразие современных форматов дисплеев предъявляет особые требования к цифровым изображениям. Дизайнерам приходится готовить изображения в нескольких вариантах, чтобы они всегда умещались на экране и при этом достойно выглядели при распечатке. Стандартное масштабирование (изменение линейных размеров, при котором происходит сжатие изображения по горизонтали, вертикали или в обоих измерениях одновременно) не слишком пригодно для этой цели, поскольку оно не принимает во внимание содержание изображения. Кадрирование также не всегда уместно, поскольку убирает лишние пиксели только с периферии рисунка.

Возможно ли объединить достоинства обоих методов в одном? Авторы нового метода уверяют, что возможно — при использовании простого, нелинейного, учитывающего содержание изображения алгоритма, который они назвали seam carving, что в переводе означает «вырезание по шву».

Метод «вырезания по шву» использует энергетическую функцию , определяющую важность пикселов. Шов — это связный путь пикселей с низкой энергией , который пересекает изображение сверху вниз или слева направо. Вырезая или вставляя пиксели вдоль таких швов, можно уменьшить или увеличить размер изображения в обоих измерениях. При уменьшении изображения выделение шва гарантирует сохранение структуры изображения, удаление большего количества пикселей с низкой энергией и меньшего — с высокой. При увеличении изображения порядок вставления швов обеспечивает равновесие между оригинальным содержанием и искусственно вставленными пикселями. В результате новый метод фактически учитывает содержание исходного кадра.

Вырезание по шву поддерживает несколько типов энергетических функций, таких как величина градиента, энтропия, визуальная выделенность, движение взгляда и другие. Для интерактивного контроля процесса авторы предусмотрели возможность вручную изменять энергию участков изображения. Таким образом можно, например, гарантировать неизменность лиц — или, наоборот, убрать со снимка случайного прохожего.

Разумеется, у этого метода есть свои ограничения. Две основные причины, по которым он может не сработать:

слишком подробное, не имеющее «менее важных» областей изображение;

такое расположение деталей изображения, что швы не могут обойти важные части.

К сожалению, ни отдельного приложения, ни расширения для Adobe Photoshop или других графических пакетов на данный момент не существует. Зато есть как минимум одна сторонняя реализация алгоритма на Flash: . Управление программой предельно просто: в наличии есть переключатели с вертикального на горизонтальное «вырезание» и обратно, поле интернет-адреса изображения, подлежащего обработке, и кнопка Load.

Загрузить в обработчик можно не любое изображение из сети, а только лежащее на одном сервере с файлом сrossdomain.xml определенного содержания (это связано со внутренними ограничениями Flash). Если вы счастливый владелец собственного хостинга, рекомендуем ознакомиться с сайтом , в противном случае вас выручит, например, или любой другой фотосайт, на котором сrossdomain.xml уже размещен. Также автор реализации рекомендует не увлекаться слишком большими изображениями — это чревато ошибками загрузки файла и крайне медленной его обработкой.

После загрузки можно сразу приступить к масштабированию изображения простым перетаскиванием пунктирной линии внизу или справа от картинки.

Это важно: при переключении между горизонтальным и вертикальным режимами промежуточное состояние сохраняется, и вам уже не удастся «растянуть» изображение обратно.

Кроме как уменьшать изображения, эта реализация алгоритма пока ничего не умеет — ни увеличивать изображения посредством вставления швов, ни отмечать области для удаления или сохранения. В ней используется только одна энергетическая функция — непрерывная разница между пикселами, что довольно часто приводит к неожиданным и нежелательным результатам. Сохранить полученное изображение можно только при помощи Print Screen. Однако автор обещает продолжить работу над улучшением программы.

Этот метод может применяться для самых разнообразных манипуляций с изображением, в том числе изменения соотношения сторон, дублирования содержимого и убирания объектов. Все это можно увидеть в демонстрационном ролике на страницах нашего видеожурнала. Это оригинальный демонстрационный ролик от авторов метода, переведенный на русский язык силами видеолаборатории ЛКИ.

rss