Seam carving уже здесь
Вот здесь подглядел то, что оказывается такая замечательная штука, как Seam carving (или Content-Aware Image Resizing) уже довольно давно реализована в ImageMagick, а я зачем-то так ждал ее в Photoshop CS4.
Кто-то спросит о чем это я? Читайте дальше, все будет кратко и понятно.
Если при вызове phpinfo() из Вашего сайта вы можете видеть примерно вот такую картинку:

то добавив поддержку библиотеки liblqr, через процедуру ее инсталяции и пересборки ImageMagick с –with-lqr (при грамотной сборке на фазе конфигурации Вы должны получить заветную строчку: LQR –with-lqr=yes yes)
Вы сможете делать вот такой замечательный рисайзинг:

Оригинальное изображение

Сжато по горизонтали

Сжато по вертикали
Вот кусок PHP кода, с помощью которого получается нижнее изображение (взято с оригинального источника):
<?php
$im = new Imagick('orig.jpg') ;
$im->liquidRescaleImage(520, 200, 3, 25) ;
header('Content-Type: image/jpg') ;
echo $im;
?>
А теперь небольшое описание параметров для функции liquidRescaleImage с которыми Вы можете «поиграться». Порядок описания соответствует порядку их вызова:
columns – ширина итогового изображения (в пикселях)
rows – высота итогового изображения (в пикселях)
delta_x – максимально возможная дельта (шаг) поперечного шва (0 – прямые швы) (в пикселях)
rigidity – максимальная величина смещения (изгиба) для непрямых швов (обычно 0) (в пикселях)
Хочу предупредить, что использовать эту возможность в режиме реального времени нельзя, так как функция работает очень медленно и требует больших ресурсов.
———————-
YourWebStyle.ru – создание и разработка фирменного стиля, интернет магазина, логотипа.