Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
64
Добавлен:
02.05.2014
Размер:
180.22 Кб
Скачать

18

Основы компьютерной графики

Пиксели и координаты

В компьютерной графике для указания местоположения графического объекта используются математические координаты, однако, поверхность отображения устройства вывода — это реальный физический объект. Следовательно, необходимо помнить о различии между физическими и логическими пикселями.

Физические пиксели

Физические пиксели — это реальные точки, отображаемые на устройстве вывода Физические пиксели — наименьшие физические элементы поверхности отображения, которые можно обрабатывать аппаратным или программным способом. Так принято считать, хотя на практике устройства отображения могут формировать отдельный пиксель из нескольких более мелких элементов. В большинстве аналоговых устройств на базе цветной электроннолучевой трубки при отображении используется несколько по-разному окрашенных точек, которые человеческий глаз, находящийся на достаточном от них расстоянии, воспринимает как единый, однородно окрашенный пиксель.

Поскольку физические пиксели занимают определенную площадь поверхности отображения, то на расстояния между двумя соседними пикселями вводятся ограничения. Если вы зададите устройству отображения слишком высокую разрешающую способность (т.е. слишком большое количество пикселей на единицу поверхности отображения), то качество изображения снизится из-за наложения или слияния соседних пикселей.

Логические пиксели

В противоположность физическим пикселям, логические пиксели подобны математическим точкам – они имеют местоположение, но не занимают физического пространства. Таким образом, при отображении значений логических пикселей из растровых данных в физические пиксели экрана должны учитываться реальные размер и расположение физических пикселей. Иначе, например, плотный и ярко окрашенный растр при отображении на слишком большой монитор может утратить эти качества, поскольку пиксели окажутся разбросанными по всему экрану

Пиксельная глубина и устройства отображения

Чем больше количество битов, используемых для представления пикселя, тем больше количество возможных цветов пикселя. Однако для хранения таких пиксельных значений требуется значительный объем памяти.

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

Человеческий глаз способен различать (но не воспринимать одновременно) около 224 (16777216) цветов. Фактически количество цветов, которое может зафиксировать человеческий глаз, весьма индивидуально и, кроме того, зависит от условий освещенности, состояния здоровья и внимания. В любом случае каждый из нас способен различать достаточно много цветов (обычно, более нескольких тысяч). Об устройствах, которые способны достичь или даже превысить возможности цветовосприятия человеческого глаза, говорят, что они отображают truecolor. На практике этот термин характеризует устройства, использующие 24 бита на пиксель, хотя ранее он использовался и для устройства вывода, способного отображать 215 (32768) и 216 (65536) цветов.

Для дисплеев, способных отображать 215 или 216 цветов, больше подходит термин hicolor. Иногда для таких устройств применяется термин fullcolor (полноцветный).

Цветовые пространства

Чтобы передать цвет, нужно задать несколько значений (обычно три), определяющих интенсивность каждого и s основных цветов (цветовых каналов), которые смешивают для получения составных цветов. Составной цвет задается упорядоченным набором значений. Конкретный цвет представляет собой точку на графическом отображении всех возможных цветов. Поэтому иногда говорят, что цвет — это точка в цветовом пространстве.

Наиболее распространенным способом передачи цвета является модель RGB. В этой модели цвета красный, зеленый и синий считаются основными, т.е. несоставными. Цвет задается посредством RGB-триплета — (R, G, В) Цветовые триплеты иногда интерпретируются как проценты, хотя фактически это не так. Цвета модели RGB можно было бы охарактеризовать следующим образом:

(0%, 0%, 0%) Черный

(100%, 100%, 100%) Белый

(100%, 0%, 0%) Красный

(50%, 50%, 50%) Светло-серый

и т.д.

Каждый из этих RGB-триплетов позволяет определить точку в пространстве RGB.

При сохранении цветовых данных в файле более практично задавать цветовые компоненты не в процентах, а в виде числовых величин. Если для каждого цветового компонента отводится 1 байт (8 битов), то диапазон допустимых величин составляет 0—255. Поскольку обычно цвета определяются 24 битами (3 байтами), то вполне разумно присвоить каждому из трех байтов значение одного из компонентов цветовой модели. Например, в модели RGB для каждого цвета используются 3 байта, а цвета обычно сохраняются в виде RGB-триплетов с диапазоном от 0 до 255, причем, значение О соответствует нулевой интенсивности, а значение 255 — максимальной.

RGB = ([0-2551, [0-255]/ [0-255])

Следовательно, в предыдущем примере пиксельные значения должны иметь следующий вид:

(0, 0, 0) Черный

(255, 255, 255) Белый

(255, 0, 0) Красный

(127, 127, 127) Светло-серый

Иногда создатели формата или программы извращают "естественный" смысл определения цветов: RGB (О, О, О) у них становится белым, a RGB (255, 255, 255) - черным. К счастью, это случается редко. RGB и другие цветовые модели рассматриваются в разделе "Как представляются цвета".

Часто набор цветов, который задается пиксельными значениями, записанными в файле, отличается от того, который может быть отображен на конкретном устройстве вывода. Задача согласования наборов цветов обычно решается программой визуализации, которая осуществляет преобразования цветов, заданных в файле, в цвета устройства отображения. Если количество цветов, заданных пиксельными значениями в файле (источнике), значительно меньше количества цветов, которые может отображать устройство вывода (адресат), то проблем обычно не возникает. В этом случае программа визуализации выбирает для каждого цвета источника соответствующий цвет адресата. В противном случае могут возникнуть определенные трудности. Рассмотрим следующие примеры.

Данные с четырьмя битами на пиксель (соответствующие 16 цветам) отображаются на устройстве, способном поддерживать 24-битовые данные (соответствующие более чем 16 миллионам цветов). Устройство вывода способно отобразить намного больше цветов, чем нужно для визуализации изображения из файла. Таким образом, цвета растровых данных будут без труда воспроизведены на выводящем устройстве при условии, что цвета исходного растра и устройства-адресата равномерно распределены среди всех возможных цветов.

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

Этот процесс, называемый квантованием, сопровождается потерей данных. Если исходное изображение содержит много цветов, то квантование может привести к появлению нежелательных эффектов — артефактов квантования. Примерами артефактов квантования являются муар и возникновение новых контуров и цветов в конечном изображении. Тем не менее, артефакты квантования находят применение: один из типов процесса квантования, называемый сверткой, иногда используется для удаления "шумов" с изображения, хотя и может изменить цветовой баланс результирующего изображения по сравнению с исходным.

Очевидно, что пиксельные значения записываются в файл с учетом цвета. Рассмотрим некоторые аспекты задания цвета пикселя.

Однобитовые данные могут принимать значения 0 или 1 и представляют двухцветные изображения. Следовательно, сопоставить пиксельные значения в файле можно только с двумя цветами экрана. Чаще всего действующие соглашения однозначно определяют, какое значение какому цвету соответствует, хотя в некоторых случаях это сделать достаточно сложно. Кроме того, в процессе работы это соглашение может быть изменено программой визуализации

Пиксельные данные, содержащие более одного бита на пиксель, обычно представляются набором индексов в палитре цветов, хотя в некоторых случаях применяется непосредственное представление цвета в соответствии со схемой определения цветов

Соседние файлы в папке Лекции по компьютерной графике