русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Групповое кодирование


Дата добавления: 2013-12-23; просмотров: 1178; Нарушение авторских прав


Растровая развертка в реальном времени

РАСТРОВАЯ РАЗВЕРТКА ИЗОБРАЖЕНИЯ

 

Для вывода на видеомониторы разложенный в растр образ необходимо представить в виде того шаблона, который требует дисплей. Это преобразование называется растровой разверткой. В отличие от дисплейного списка для векторного дисплея, содержащего информацию только об отрезках или литерах, в данном случае дисплейный список должен содержать информацию о каждом пикселе на экране. Необходимо, кроме того, чтобы эта информация организовывалась и выводилась со скоростью видеогенерации в порядке сканирования строк, т.е. сверху вниз и слева направо. Существует четыре способа достижения такого результата:

- растровая развертка в реальном времени;

- групповое кодирование;

- клеточная организация;

- память буфера кадра.

 

 

При развёртке в реальном времени сцена произвольно представляется в терминах визуальных атрибутов и геометрических характеристик. Типичными визуальными атрибутами являются цвет, оттенок и интенсивность, тогда как координаты x,y, углы наклона и текст относятся к геометрическим характеристикам. Последние упорядочены по координате y. Во время воспроизведения каждого кадра процессор сканирует эту информацию и вычисляет интенсивность каждого пикселя на экране. При такой развертке не нужны большие количества памяти. Требования к памяти обычно ограничиваются необходимостью хранить дисплейный список плюс одну сканирующую строку. Более того, поскольку информация о сцене хранится в произвольно организованном дисплейном списке, добавление или удаление информации из списка осуществляется легко, а это удобно для динамических приложений. Однако сложность выводимого изображения ограничивается скоростью дисплейного процессора. Обычно это означает, что ограничено число отрезков или многоугольников в картине, количество пересечений со сканирующей строкой или число цветов или полутонов серого. Поэтому использовать данный метод можно только для рисования несложных изображений.



 

 

В методе группового кодирования сделана попытка воспользоваться тем, что большие области изображения имеют одинаковую интенсивность или цвет. При простейшем групповом кодировании определяется только интенсивность и количество последовательных пикселов с этой интенсивностью на данной сканирующей строке. Кодирующие данные следует рассматривать группами по два. Первое число – интенсивность, второе - число последовательных пикселов на сканирующей строке с этой интенсивностью:

 

Интенсивность Длина участка

 

Для добавления цвета это простая схема группового кодирования может быть легко расширена. На данной сканирующей строке для цвета приводятся интенсивности красной, зеленой и синей цветовых пушек, а за ними - количество последних пикселов с этим цветом; например,

 

Интенсивность красного Интенсивность зеленого Интенсивность синего Длина участка

 

Сжатие данных для изображений, закодированных группами, может приближаться к 10:1. Это существенно не только потому, что групповое кодирование просто экономит память, но и потому, что оно экономит память для машинно-синтезированных последовательностей кадров или фильма. Оно также экономит время передачи изображения по сети.

У группового кодирования есть и недостатки:

- добавление или удаление отрезков или текста из изображения является трудоемкой операцией и занимает много времени из-за последовательного хранения длин участков;

- кодирование и декодирование изображения влечет за собой дополнительные затраты времени;

- для коротких участков одинаковой интенсивности может потребоваться в 2 раза больше памяти, чем при пиксельном хранении, например, когда изображение состоит из чередующихся черных и белых вертикальных отрезков шириной в 1 пиксель.

 



<== предыдущая лекция | следующая лекция ==>
Алгоритм Брезенхема для генерации окружности | Изображение отрезков


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.003 сек.