Я разработал сайт для обмена фотографиями с помощью CodeIgniter 1.7. Фотографии, которые загружаются членами, автоматически изменяются в нескольких форматах, для которых я использую класс CodeIgniter Image Manipulation. Этот класс встроен в структуру и, в основном, обертка вокруг нескольких библиотек обработки изображений, таких как GD, GD2, ImageMagick и NETPBM. На моем хосте я могу использовать GD2, так что, где этот вопрос будет о.
На мою проблему. Вот пример измененной фотографии на моем сайте. Обратите внимание, что оригинал был очень большим, шириной более 3000 пикселей:
http://www.jungledragon.com/image/195/female_impala_close-up.html
Теперь посмотрим на то же изображение, также изменив размер, немного больше на Flickr:
http://www.flickr.com/photos/fledder/3763538865/in/set-72157621744113979
Посмотрите на драматическую разницу? Я пытаюсь преодолеть этот огромный разрыв. Первое, что я сделал, это применить фильтр резкости к изображениям. Вы можете увидеть результат здесь:
Хотя он все еще не идеален, он, по крайней мере, приближается к уровню резкости изображения Flickr. Оставшаяся проблема заключается в том, что цвета смываются, как если бы их насыщение уменьшалось. Это происходит раньше, чем фильтр заточки, поэтому он должен находиться в GD2.
Эта проблема для меня жизненно важна, но я не знаю, где искать. Я нашел некоторые потоки .NET, говорящие о выборочной выборке цветности, но я не знаю, что делать с этой информацией в моей настройке. Я ищу любое решение, которое работает в рамках ограничений моей настройки.
Обновление: Настоящий исходный файл, точно так же, как я загрузил его как на свой сайт, так и на Flickr:
http://www.jungledragon.com/img/DSC07275.jpg
Обновление 2. Я в шоке. В хорошем смысле. Мне потребовалось много боли, чтобы установить ImageMagick, но после переключения на него (что было связано с установкой "imagemagick" в качестве библиотеки для использования в классе манипуляции с кодом Igniter, результат тестового изображения выглядит следующим образом:
ImageMagick resizing делает это точно так, как предполагалось. Цвета сохраняются, и резкость там. Да, я отключил свою обычную процедуру заточки, поскольку она больше не нужна из-за ImageMagick. Кроме того, процесс намного быстрее и меньше голода. И здесь идет еще одна большая часть: я не могу это объяснить, но я абсолютно ничего не сказал, чтобы показать ImageMagick конкретный цветовой профиль, который был предложен пользователем @Alix. В моем тестировании до сих пор похоже, что цветовая информация соблюдается с встроенным профилем или без него. Выходной результат - это меньшая версия ввода. Является ли ImageMagick действительно умным или мне снится?