
- •Методы аппроксимации сплайнами
- •Введение
- •Кубический сплайн
- •Многочлены Безье
- •Поверхности
- •Поверхность получаемая полиномом Лагранжа
- •Описание поверхности в форме Фергюсона
- •Описание поверхности методом Кунса
- •Объемные модели
- •Дискретная модель
- •Вероятностная модель
- •Аппаратные средства компьютерной графики
- •Графопостроители
- •Принтеры
- •Аксессуары
- •Графические манипуляторы
- •II Планшет
- •I II Световое перо
- •IV Джойстики и методы, имитирующие управление и отдельные устройства
- •Сканеры
- •Видеокамеры
- •Преобразование пространства Двухмерное вращение вокруг оси
- •Двухмерное смещение
- •Отображение в пространстве
- •Аксонометрические проекции
- •Алгоритм Брезентхема
- •Обобщённый целочисленный алгоритм
- •Пошаговый алгоритм для генерации окружности
- •Растровая развертка в реальном времени
- •Групповое кодирование
- •Клеточное кодирование
- •Буферы кадра
- •Буферы кадра с растровой технологией
- •Адресация растра
- •Изображение литер
- •Визуализация изображений
- •Простейшая модель освещения
- •Закраска методом Гуро
- •Закраска Фонга
- •Простейшая модель освещения со специальными эффектами
- •Прозрачность
- •Машинная графика
Групповое кодирование
Групповое кодирование нужно для сжатия информации.
В методе группового кодирования сделана попытка воспользоваться тем, что большие области изображений имеют одинаковую интенсивность или цвет.
П
ри
простейшем групповом кодировании
определяется только интенсивность и
количество последовательных пикселей
с этой интенсивностью на данной
сканирующей строке.
Кодирующие данные следует рассматривать по 2: первое число – интенсивность, второе число – последовательность пикселей на сканирующей строке с этой интенсивностью.
В результате, сжатие в помощью группового кодирования составит 4,33:1.
Для добавления цвета к схеме группового кодирования необходимо добавить интенсивность красного, зеленого и синего цветов и за ними количество пикселей с этим цветом.
Сжатие данных для изображений в этом случае может приближаться 10 к 1. Это существенно не только потому, что групповое кодирование просто экономит память, но и экономит память для последовательности кадров или фильмов.
Недостатком группового кодирования является то, что добавление / удаление отрезков или текста из изображения является трудоемкой операцией и занимает много времени из-за последовательного хранения длины участков. Таким образом, кодирование / декодирование изображений влечет накладные расходы и может приводить не к улучшению, а к ухудшению. Например, для коротких участков интенсивности может потребоваться в 2 раза больше памяти, чем при пиксельном хранении.
Клеточное кодирование
В этом методе сделана попытка с помощью минимума информации представить целые области изображения, т.е. клетки.
Для того, чтобы в простейшем алфавитно-цифровом терминале с электронно-лучевой трубкой можно было выполнить операции в реальном времени, используется клеточное кодирование.
В этом случае область экрана разбивается на клетки, достаточно большие, чтобы содержать одну литеру. Для дисплея 512 х 512 получается 64 х 64 клеток. Для телевизионного дисплея 480 х 640 получается 60 х 80 клеток.
Обычно плитка 8 х 8 пикселей используется для вывода литер с точечной матрицей размером 5 х 7, дополнительные пиксели используются для разделения литер и строчек. Так как каждый второй ряд клеток для читабельности остается пустым, то для последней схемы получается 30 х 80 литер.
Используются и другие размеры. Для литер 7 х 9 – клетка 8 х 10. В результате на дисплее 24 строки и 80 литер в каждой.
Шаблоны, составленные из пикселей для каждой из литер, хранятся в ПЗУ.
Метод клеточного кодирования можно применять для вычерчивания линий, надо только хранить в ПЗУ еще и шаблоны сегментов отрезков. Тогда для построения необходимой линии могут быть использованы комбинации сегментов, расположенных в соседних клетках.
Для
произвольной клетки n
х n
существует
возможных шаблонов, состоящих из
пикселей. При любом разумном n
пришлось бы хранить много шаблонов.
Например, при n
= 8 число шаблонов равняется 1,8*1019.
Однако, не все шаблоны необходимы для
реального изображения. В работах Жордана
и Баррета было показано, что для клетки
8 х 8 отображения и маскирования требуется
108 шаблонов сегментов отрезка.