02.07.2009

Тонкие методы оптимизации JPEG

By Sergey Chikuyonok
Оригинал статьи на Smashingmagazine


Восьми-пиксельная сетка

Как вы уже знаете, JPEG изображение состоит из серии 8-ми пиксельных блоков, которые можно увидеть, если установить параметр JPEG Quality в значение Low.



32×32 pixels, Quality: 10 (in Photoshop), 396 bytes.


Оба белых квадрата имеют одинаковый размер: 8х8 пикселей. Несмотря на то, что Quality выставлен Low, нижний правый квадрат выглядит смазанным и нечетким, в то же время верхний-левый квадрат имеет четкие и чистые границы. Как такое произошло? Чтоб бы овтетить на это, нужно взглянуть на изображение в сетке:



Как видите, верхний левый квадрат сглажен по сетке, что и обеспечивает резкость


После сохранения, изображение делится на 8ми пиксельные блоки, которые оптимизируются независимо. Поскольку нижний правый квадрат не сглажен по сетке, то оптимизатор подбирает усредненное значение цветового индекса межда черным и белым (в JPEG каждый 8х8 блок преобразуется в синусоидную волну). Это объясняет смазанность. Многие утилиты для оптимизации JPEG имеют функцию, которая называется Selective Optimization.


Этот метод особо полезен при сохранении квадратных объектов. Посмотрим, как это работает на практике.



13.51 KB.



12.65 KB.


В первом примере изображение микроволновки спозиционированно случайным образом. Второй пример при сохранение был сглажен по 8ми пиксельной сетке. Установки Quality имеют значение 55 в обоих случаях. Давайте взглянем на этот пример более приближенно. Красная линия отмечает край сетки.



Как видно, мы сумели сэкономить 1 kb данных просто сгладив изображение по сетке. Так же, изображение стало более чистым.


Продолжение следует...

1 комментарий: