Seam Carving GUI — QT обертка для Liquid Rescale

Dr.AKULAvich

2008-08-06

О революционном алгоритме, который работает с изображениями, анализируя их "энергию", знают многие. В Рунете достаточно статей на эту тематику — желающие найдут.

Сегодня речь пойдет об инструменте, позволяющем воплотить сие энергетическое безобразие в жизнь.

Первым доступ к технологии предоставил GIMP, а именно расширение Liquid Rescale. Данная реализация построена на библиотеке liblqr.

Плагин легко устанавливается в последнем релизе Ubuntu Hardy:

sudo aptitude install gimp-plugin-registry

Вызывается через меню "Слой - Liquid rescale...

Seam Carving GUI (SCG) — еще один свободный продукт, который меняет размер изображений, основываясь на подобном алгоритме. Он использует библиотеку CAIR. SCG потребует наличия libqt4-dev:

sudo aptitude install libqt4-dev

Затем окунитесь в распакованный каталог и скомпилируйте:

qmake seam-carving-gui.pro

make

На выходе нас встретит бинарник SeamCarvingGui. Он-то нам и нужен. Я закинул его в /usr/bin для удобства запуска.

Сравнение

Мне было интересно глянуть на время выполнения идентичных операций для обоих случаев. Использовалась такая незамысловатая для обработки картинка:

Выделение важной зоны и масштабирование

GIMP: 3:43 мин.

Seam Carving GUI: 0:58 мин.

Выделение побочной зоны и масштабирование

GIMP: 3:01 мин.

Seam Carving GUI: 0:59 мин.

Как видно из "скоростного" теста, лидирует SCG. Да притом с приличным отрывом.

Liquid Rescale GIMP plugin:

+ интеграция с самим редактором;

+ удобное и быстрое выделение слоев;

- низкая скорость обработки;

- нет возможности просто удалить элемент без изменения размера;

SCG:

+ самодостаточность (все действия выполнимы в одной QT-обертке);

+ быстрая работа алгоритма;

- медленное реагирование кисти;

Выводы

Если вам необходимо тонко и изящно обработать снимок, выбирайте GIMP. Все же он мощнее в этом плане.

В случае "быстрой ретуши" я выбрал бы SCG, так как он справится с этим намного быстрее.

Что предпочтете Вы?