Задался вопросом, как лучше сохранить детали фотографии при окончательном ресайзинге. Его я всегда делаю из картинки ровно в 4 раза больше по площади -- скажем, если окончательный вариант 1024*768, то "предпоследний", на котором окончательно доводится качество -- 2048*1536.
В связи с этим чуть ли не основной становится задача КАЧЕСТВЕННО уменьшить размер картинки в 4 раза, или в 2 раза по высоте и в 2 по ширине. Бикубический фильтр Фотошопа хотя и сводит на нет муар, но съедает и часть детализации. Метод "ближнего соседа" оставляет максимум деталей, но при этом как будто присыпает песком, при этом жутчайше муарит. До сих пор я пользовался для этой цели билинейным фильтром, но вот теперь решил соорудить нечто более продвинутое. Предлагаю вашему вниманию новый
фильтр.
Пару слов о его работе. В отличие от Фотошопных бикубического и билинейного фильтров, он использует для конволюции матрицу с нечетным числом пикселей -- 5*5. Это дает новую принципиальную возможность сохранить главный "центральный" пиксель, который и дает основную деталицацию. В 5*5 матрице имеется 6 уровней удаленности от центра (включая центральный пиксель), поэтому в плагине 6 настраиваемых коэффициентов, каждый из которых может принимать значения от -100 до 100 -- это доля, которую пиксели, расположенные на данном уровне удаленности от центра, вносят в окончательное изображение. Отрицательные значения помогают увеличить локальный контраст, "подшарпить", если надо.
Используя удачную (для конкретного изображения) комбинацию коэффициентов, можно получить попиксельное качество значительно лучше, чем при использовании стандартных средств Фотошопа. Можно "эмулировать" Lanczos, Sinc и прочие продвинутые методы, гасить муар и так далее, все зависит от правильно подобранных коэффициентов интерполяции.
В фильтре есть 5 слотов для запоминания комбинаций значений -- кнопочка "S" сохраняет текущие коэффициенты в конкретный слот, "R" восстанавливает. Все сохраняется в файл C:/resize.ini, так что не удивляйтесь, если обнаружите его на диске
Остальное, в общем, не требует пояснений. Reset сбрасывает все 6 коэффициентов в ноль (но не трогает уже запомненные значения), Preview переключает изображение между оригиналом и в два раза увеличенным результатом. Единственное -- поскольку мой фильтр не умеет уменьшать общее количество пикселей в картинке, придется применять Canvas size 50%. Можно объединить все в один Action.
Взамен у меня будет к вам большая просьба: если удастся найти особо удачную, по-вашему, комбинацию коэффициентов -- прошу не держать ее в большом секрете
Можно публиковать прямо в эту ленту. Спасибо!
Чтобы запустить фильтр, нужно:
Разархивировать, положить файл resize_controlled.8bf в директорию фильтров, напр. C:\Program Files\Adobe\Adobe Photoshop CS2\Plug-Ins\Filters
Запускать через меню Filter-->Sharpening-->Sharp 5x5 matrix 1/2 resize by Yevgeniy (Gene) Fedorov