- PVSM.RU - https://www.pvsm.ru -
Для перфекционистов фотографии.
Обычно большая фотография позволяет видеть больше деталей.
Но в этом примере — наоборот: меньшая фотография кажется более четкой?
Не подтасовывал результат: для уменьшения большей из этих двух фотографий был использовано метод Bicubic Shaper — тот, что рекомендуется в Фотошопе именно для уменьшения изображений.
Значит, при подготовке меньшего размера фотографии был использован много более эффективный алгоритм?
Фотографии, публикуемые на веб-сайтах обычно подвергают 2 изменениям: уменьшению разрешения и увеличения четкости (известно под термином «шарп» или «шарпенинг» — это калька с английского sharp).
Уменьшение разрешения нужно чтобы фотографию можно было посмотреть сразу целиком. А шарп нужен для создания иллюзии четкости. Без шарпа уменьшенное изображение воспринимается недостаточно резким, мыльным.
Существует множество методов, которые работают лучше или хуже в зависимости от конкретного изображения. Разумеется, очень часто комбинируют уменьшение размера и увеличение четкости (шарп) в одном алгоритме.
Недавно набрел на очень эффективный метод, описанный в документе A. Muñoz Barrutia, T. Blu, M. Unser, «Least-Squares Image Resizing Using Finite Differences,» IEEE Transactions on Image Processing, vol. 10, no. 9, pp. 1365-1378, September 2001. bigwww.epfl.ch/publications/munoz0101.html [1] (слева ссылка DownloadPDF)
Метод очень понравился высокой четкостью получаемого результата (высокой детализацией на результате), но без искажений, которые получились бы в результате простого шарпа, и без танцев с бубнами для различного вида изображений.
Обнаружил единственную реализацию этого метода на Java в качестве плугина для программы ImageJ.
bigwww.epfl.ch/algorithms/ijplugins/resize/ [2]
Как установить:
1. Ставим Java java.com/ru/download/index.jsp [3]
2. Ставим ImageJ rsb.info.nih.gov/ij/ [4]
3. Скачиваем со страницы bigwww.epfl.ch/algorithms/ijplugins/resize/ [2] файл bigwww.epfl.ch/algorithms/ijplugins/resize/Resize_.jar [5] и не распаковывая его помещаем в подкаталог plugins программы ImageJ
4. Изменять размер и шарпить можно в ImageJ через меню «PluginsResizeResize», выбрав в появившемся диалоговом окне метод «Least-Squares».
Замечание: Можно применять только с 8-битными изображениями. На 16-битных не все хорошо. Но поскольку цель — подготовка для веба, то этого более, чем достаточно.
Наш умелец написал программу для более простого использования данного плугина под Windows. Называется эта программа «ImageJ Resize Launcher» (но и сам плугин и ImageJ и Java должны быть установлены). На момент написания этого текста последний релиз программы имеет версию 2.2 и имеется пререлиз 3. Официального сайта программа не имеет, но легко находится через поисковики по названию.
Для иллюстрации статьи использована «бесплатная фотография недели» отсюда www.shutterstock.com/gallery-449524p1.html [6]
Внимание!!! Вопрос к аудитории!!!
Есть ли другие реализация этого метода кроме плугина к ImageJ?
Где еще можно прочитать про этот алгоритм???
Автор: denisgorbunov
Источник [7]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/java/23889
Ссылки в тексте:
[1] bigwww.epfl.ch/publications/munoz0101.html: http://bigwww.epfl.ch/publications/munoz0101.html
[2] bigwww.epfl.ch/algorithms/ijplugins/resize/: http://bigwww.epfl.ch/algorithms/ijplugins/resize/
[3] java.com/ru/download/index.jsp: http://java.com/ru/download/index.jsp
[4] rsb.info.nih.gov/ij/: http://rsb.info.nih.gov/ij/
[5] bigwww.epfl.ch/algorithms/ijplugins/resize/Resize_.jar: http://bigwww.epfl.ch/algorithms/ijplugins/resize/Resize_.jar
[6] www.shutterstock.com/gallery-449524p1.html: http://www.shutterstock.com/gallery-449524p1.html
[7] Источник: http://habrahabr.ru/post/164473/
Нажмите здесь для печати.