Рассмотрим некоторые из существующих методов, позволяющих визуально улучшать качество растровых изображений. При одних и тех же значениях технических параметров устройства графического вывода может быть создана иллюзия увеличения разрешающей способности или количества цветов. Однако следует иметь в виду, что улучшение одной характеристики может происходить за счет ухудшения другой.
В растровых системах при невысокой разрешающей способности (меньше 300 dpi) существует проблема ступенчатого эффекта (aliasing). Этот эффект особенно заметен на изображении наклонных линий – при большом шаге сетки растра пиксели образуют как бы ступени лестницы.
Рассмотрим это на примере отрезка прямой линии. Растровое изображение объекта определяется алгоритмом закрашивания пикселей, соответствующих площади изображаемого объекта. Можно сформулировать условие корректного закрашивания следующим образом: если в контур изображаемого объекта попадает больше половины площади ячейки растра, то соответствующий пиксель закрашивается цветом объекта (С), иначе пиксель сохраняет цвет фона (Сф).
Устранение ступенчатого эффекта называется по-английски antialiasing. Для того чтобы растровое изображение линии выглядело более гладким, можно цвет угловых пикселей «ступенек лестницы» заменить на некоторый оттенок, промежуточный между цветом объекта и цветом фона.
Вычислим цвет пропорционально части площади ячейки растра, покрываемой идеальным контуром объекта. Если площадь всей ячейки обозначить как S, а часть площади, покрываемой контуром, – Sx, то искомый цвет равен:
Методы сглаживания растровых изображений можно разделить на две группы:
• алгоритмы генерации сглаженных изображений отдельных простейших объектов;
• методы обработки уже существующего изображения.
Размеры окна фильтра: по горизонтали jmax – jmin + 1, по вертикали imax – imin + 1. На практике наиболее часто используется фильтр с окном 3х3, который получается при imin, jmin = –1 и imax, jmax = +1.
При обработке всего растра указанные вычисления производятся для каждого пиксела. Если в ходе обработки новые значения цвета пикселей записываются в исходный растр и вовлекаются в вычисления для очередных пикселей, то такую фильтрацию называют рекурсивной. При нерекурсивной фильтрации в вычисления вовлекаются только прежние значения цвета пикселей.
Современные растровые дисплеи позволяют достаточно качественно отображать миллионы цветов, но для растровых печатающих устройств дело обстоит иначе. Устройства печати обычно имеют высокую разрешающую способность, зачастую на порядок выше, чем дисплеи, но в то же время не позволяют воссоздать даже сотню градаций серого, не говоря уже о миллионах цветов. Оттенки цветов или полутоновые градации имитируются комбинированием, смесью точек. Чем качественнее полиграфическое оборудование, тем меньше отдельные точки и расстояние между ними.
Эти методы часто используются в графических системах. Они позволяют увеличить количество оттенков цвета за счет снижения пространственного разрешения растрового изображения. Такие методы получили название дизеринг (от англ. dithering – дрожание, разрежение).
Простейшим вариантом дизеринга можно считать создание оттенка цвета парами соседних пикселей.
Если в ячейке размерами n x n пикселей использованы два цвета, то с помощью такой ячейки можно получить n2+1 различных цветовых градаций. Возможны две предельные комбинации: все пиксели ячейки имеют цвет C1 – вся ячейка имеет, соответственно, цвет C1, все пиксели ячейки имеют цвет C2 – вся ячейка имеет цвет C2. Все иные комбинации дают цвета, промежуточные между C1 и C2. Один из способов создания достаточно качественных изображений – диффузный дизеринг (diffused dithering). Он заключается в том, что ячейки создаются случайно (или псевдослучайно), поэтому даже для фрагмента растра пикселей с постоянным цветом не образуются регулярные структуры и изображение не выглядит созданным из ячеек