1.Цвет Человеческий глаз состоит примерно из 7 млн. колбочек и 120 млн. палочек. Функция палочек заключается в “ночном зрении” - светочувствительности и приспособлении к окружающей яркости. Функция колбочек - “дневное зрение” - восприятие цвета, формы и деталей предмета. В них заложены три типа воспринимающих элементов, каждое из которых воспринимает световое излучение только определенной длины волн, соответствующих одному из трех основных цветов: красному, зеленому и синему. Остальные цвета и оттенки получаются смешением этих трех. Человеческий глаз воспринимает цветовую информацию в диапазоне волн примерно от 380 нм (синий цвет) до 770 нм (красный цвет). Причем наилучшую чувствительность имеет в районе 520 нм (зеленый цвет). На рисунке показана чувствительность глаза в зависимости от длины принимаемой волны. Область частот, левее синей - ультрафиолетовые волны, правее красной - инфракрасные волны. Грассман привел законы природы цвета: Трехмерность природы цвета. Глаз реагирует на три различных цветовых составляющих. Примеры: красный, зеленый и синий цвета; цветовой тон (доминирующая длина волны), насыщенность (чистоту) и яркость (светлость). Четыре цвета всегда линейно зависимы, то есть , где . Для смеси двух цветов и имеет место равенство: .Если цвет равен цвету и цвет тоже равен цвету , то цвет равен цвету независимо от структуры спектров энергии . Цветовое пространство непрерывно. Если в смеси трех цветов один непрерывно изменяется, а другие остаются постоянными, то цвет смеси будет меняться непрерывно. Рассмотрим основные цветовые модели: RGB. Данная модель построена на основе строения глаза. Она идеально удобна для светящихся поверхностей (мониторы, телевизоры, цветные лампы и т.п.). В основе ее лежат три цвета: Red- красный, Green- зеленый и Blue- синий. Еще Ломоносов заметил, что с помощью этих трех основных цветов можно получить почти весь видимый спектр. Например, желтый цвет- это сложение красного и зеленого. Поэтому RGB называют аддитивной системой смешения цветов. Чаще всего данную модель представляют в виде единичного куба с ортами: (1;0;0)- красный, (0;1;0)- зеленый, (0;0;1)- синий и началом (0;0;0)- черный. На рисунке показан куб и также распределение цветов вдоль указанных векторов. CMY. Данная модель применяется для отражающих поверхностей (типографских и принтерных красок, пленок и т.п.). Ее основные цвета: Cyan- голубой, Magenta- пурпурный и Yellow- желтый являются дополнительными к основным цветам RGB. Дополнительный цвет - разность между белым и данным, например, желтый = белый - синий. Поэтому CMY называют субтрактивной системой смешения цветов. Например, при пропускании света пурпурный объект поглощается зеленая часть спектра, если далее пропустить через желтый объект, то поглотится синяя часть спектра и останется лишь красный цвет. Данный принцип используют светофильтры. На верхнем рисунке в кругах - основные цвета системы RGB, на пересечениях - их смешения. Аналогичным образом работают с красками художники, формируя необходимую палитру. На нижнем рисунке в кругах - основные цвета CMY, на пересечениях - смешения. Связь между RGB и CMY можно выразить через следующую формулу: Наряду с системой CMY также часто применяют и ее расширение CMYK. Дополнительный канал K (от английского blacK) - черный. Он применяется для получения более “чистых” оттенков черного. В цветных принтерах чаще всего используется четыре красителя. Данная система широко применяется в полиграфии. CIE. Если имеется один контрольный цвет, то с помощью него можно получить некоторые цвета, варьируя данный контрольный по светлоте (при условии, что не используется цветовой тон и насыщенность). Данная процедура называется фотометрией и используется при создании монохроматических репродукций цветных изображений. С помощью двух контрольных цветов можно получить гораздо больше цветов, но не все. Для получения видимого набора цветов используют три контрольных цвета, соблюдая условие, что они находятся в разных областях спектра. Рассмотрим следующий базис цветов: Red- красный; лежит в области длинных видимых волн (`700 нм). Green- зеленый; лежит в области средних видимых волн (`546 нм). Blue- синий; лежит в области средних коротких волн (`436нм). Рассмотрим цвет C: , r, g, b- относительные количества потоков базовых цветов, входящие в интервал [0; 1]. Но данным сложением можно уравнять не все цвета. Например, для получения сине-зеленого цвета объединяем синий и зеленый потоки цвета, но их сумма выглядит светлее, чем необходимый. Если попытаться сделать его темнее с помощью красного, то получим еще более светлый результирующий цвет, так как световые энергии складываются. То есть мы можем добавлять красный, для получения более светлого образца. Математически добавление красного цвета к поучаемому цвету соответствует вычитанию его из двух оставшихся базовых потоков (физически это невозможно, так как отрицательной интенсивности света не существует). Запишем уравнение следующим образом: . На рисунке показаны функции r, g, b уравнения по цвету для монохроматических потоков цвета с длинами волн 436, 546, 770 нм. С их помощью можно уравнять все длины волн видимого спектра. На графике присутствует отрицательная область. Значения в данной области соответствуют “добавлению” инструментального цвета к синтезируемому. Изучением данных функций занимается колориметрия. Замечено, что один и тот же цвет можно получить разными наборами базисных цветов (r1, g1, b1) и (r2, g2, b2). То есть цвет можно уравнять различными составными источниками с неодинаковым спектральным распределением. (r1, g1, b1) и (r2, g2, b2)- метамеры. Представим цвет С как вектор с составляющими rR, gG, bB. Пересечение вектора C с единичной плоскостью R+G+B=1 дает относительные веса его красной, зеленой и синей составляющих. Их также называют значениями или координатами цветности: Заметим, . Рассмотрим связь: . Если функции уравнивания по цвету перенести в трехмерное пространство, то результат не будет целиком лежать в положительном октанте. В 1931 был принят стандарт CIE (Commission International de l’Eclairage - Международная комиссия по освещению), в качестве основы которого был выбран двумерный цветовой график и набор из трех функций реакции глаза, исключающий отрицательной области и удобный для обработки. Гипотетические цвета CIE - X, Y и Z. Треугольник XYZ задан так, что в него входит видимый спектр. Координаты цветности CIE (x, y, z) задаются следующим образом: , и . При проецировании треугольника XYZ на плоскость (x, y) получаем цветовой график CIE. Координаты x и y - относительные количества трех основных цветов XYZ, требуемых для составления нужного цвета. Яркость определяется величиной Y, а X и Y подбираются в соответствующем масштабе. Таким образом, триада (x, y, Y) задает цвет. Обратное преобразование имеет вид: Комиссия решила ориентировать треугольник XYZ таким образом, что равные количества гипотетических основных цветов XYZ давали в сумме белый. На рисунке изображен цветовой график. Область на графике - видимое множество цветов. На контуре проставлены значения соответствующих длин волн в нм, соответствующие чистым, не разбавленным цветам. В центре области находится опорный белый цвет - точка равных энергий, с координатами x=y=0.33(3). Часто применяют следующие источники CIE: Название | Температура | x | y | Лампа с вольфрамовой нитью накаливания. | 2856К | 0.448 | 0.408 | Солнечный свет в полдень. | 5600К | 0.349 | 0.352 | Полуденное освещение при сплошной облачности. | 6300К | 0.310 | 0.316 | Опорный белый стандарт для мониторов и NTSC. | 6400К | 0.313 | 0.329 | Система (x, y, Y) подчиняется законам Грассмана. На рисунке показана цветовая область графика CIE. Как видно, наибольшую площадь занимают цвета с преобладанием зеленого, что согласуется с чувствительной избирательностью человеческого глаза. На цветовом графике CIE удобно демонстрировать цветовой охват различных систем и оборудования: телевидения, типографской печати, фотопленок и т.п. Цветовой обхват для аддитивных систем - треугольник с вершинами, соответствующими основным цветам RGB. Цвет, который можно получить в данной цветовой модели лежит внутри треугольника, цвета, лежащие вне - получить невозможно. Примеры цветовых обхватов для некоторых моделей можно увидеть на рисунке. Заметим, что для цветной пленки обхват есть криволинейный треугольник. Причина этого заключается в нелинейном (в данном случае логарифмическом) законе создания цветного изображения с помощью цветной пленки. Ниже приведена таблица основных цветов моделей в координатах цветового графика CIE: Модель | Цвет | x | y | CIE XYZ. | Красный Зеленый Синий | 0.735 0.274 0.167 | 0.265 0.717 0.009 | Стандарт NTSC. | Красный Зеленый Синий | 0.670 0.210 0.140 | 0.330 0.710 0.080 | Цветной монитор. | Красный Зеленый Синий | 0.628 0.268 0.150 | 0.346 0.588 0.070 | Координаты цветности CIE представляют точный стандарт определения цвета. Координаты цветности CIE полезны при передаче цветовой информации из одной цветовой модели в другую. Поэтому необходимо знать преобразование координат CIE в другие цветовые модели, а также и обратно. Например, преобразование RGB - CIE XYZ задается следующей формулой: ,где - цвета для получения координаты единичного основного цвета R, аналогично и для G и B. Если известны координаты цветности CIE x и y для основных цветов RGB, то: , где: - данные величины необходимы для полного преобразования между системами основных цветов, также можно получить и следующим образом: Известны - яркости единичных количеств основных цветов: . Известен - координаты цветности опорного белого и его яркость: Обратное преобразование CIE XYZ в RGB задается как: , где c элементами: YIQ. Для цветного телевидения стандарта NTSC было предъявлено два основных требования: Быть в пределах установленного диапазона в 6 МГц, Обеспечивать совместимость с черно-белым телевидением. В 1953 была разработана система YIQ: Канал | Название | Занимаемый диапазон | Y | яркость | 4 МГц | I | синфазный | 1.4 МГц | Q | интегрированный | 0.6 МГц | В канале Y яркость подобрана так, что она соответствует цветовой чувствительности глаза. Канал Y соответствует цветам от голубого до оранжевого (теплым тонам). Канал Q - от зеленого до пурпурного. В качестве опорного белого был взят источник с температурой 6500К. Преобразования между цветовыми системами RGB и YIQ: RGB в YIQ: YIQ в RGB: Помимо YIQ встречаются и другие цветовые модели в формате Яркость, 1-ый цветовой канал, 2-ой цветовой канал. Например, при цветовой коррекции используют формат LAB, в котором: L(ightness)- яркость, A- цветовой канал несущий цвета от зеленого до красного, цветовой канал, отвечающий за цвета в сине-желтом диапазоне. HLS и HSB Рассмотрим другой подход при описании цвета. В цвете можно выделить его тон - преобладающий основной цвет (длину волны, преобладающей в излучении). Также рассмотрим насыщенность цвета - чем она больше, тем “чище” цвет (то есть ближе к тоновой волне), например, у белого цвета - насыщенность= 0, так как невозможно выделить его цветовой тон. Введем, наконец, для завершения яркость (у черного цвета= 0, у белого=1). Таким образом, мы построили трехмерное цветовое пространство HSV - Hue, Saturation, Volume (Тон, Насыщенность и Яркость). Обычно его представляют в виде конуса, изображенного на рисунке. Начало координат - вершина конуса - черный цвет. Высота, направленная к основанию - яркость. Точка пересечения высоты с основанием - белый цвет. На высоте находятся оттенки серого цвета от черного (вершина конуса) к белому. На окружности, ограничивающей основание конуса, находятся чистые цветовые тона: от красного (), через зеленый (), к синему (). Радиус конуса - насыщенность цвета. С такой системой работают художники, меняя насыщенность с помощью белой краски, его оттенок с помощью черной и тон, комбинируя с основными цветами. HSV часто представляют и в виде шестигранного конуса, у которого в основании лежит правильный шестиугольник с вершинами, соответствующими следующим цветам : красный - желтый - зеленый - голубой - синий - пурпурный. Приведем формулы связи RGB и HSV, представленного в виде шестигранного конуса: HSV в RGB: RGB в HSV: RGB в HLS: HLS в RGB: Пример перевода RGB в HSB. В данном формате RGB имеет на каждую из компонент R, G, B по 8 бит (256 уровней градации) - True Color. HSB представлен тремя плоскостями, соответствующими H, S, B, в виде черно/белых изображений с 256 уровнями градации серого. Каналы: Н - тон, S - насыщенность, B - яркость. Некоторые примечания к цветовым моделям При цветовых преобразованиях необходимо также помнить, что между цветовыми моделями CIE, CMY, RGB, YIQ существуют аффинные преобразования, тогда, как между HLS и HSV- нет. Данное обстоятельство будет заметно, если изображение, содержащее непрерывные цветовые переходы, переводить, например, из HLS в RGB (на изображениях может появиться разрыв непрерывности). 2.Общая схема цифровой обработки изображений Рассмотрим процесс обработки изображений в виде следующей последовательности: Получение исходного, “сырого” изображения. Фильтрация изображения. Перевод изображения в необходимую цветовую модель. Форматирование и индексирование изображения. Разбивка на блоки. Обработка графической информации, содержащейся в блоках. Последовательное сжатие. Энтропийное сжатие. Данное деление не претендует на полноту, но дает общую картину процесса обработки. Некоторые этапы, например, 5, 7 или 8 можно пропустить. Перед каждым этапом, возможно, будет необходима специальная фильтрация. Этап 3 мы рассмотрели в предыдущей части. Другие этапы мы будем рассматривать не по порядку следования, а по возрастанию сложности, чтобы как можно реже ссылаться на материал последующих разделов. Получение исходного, “сырого” изображения. Изображения для обработки условно можно разбить на четыре класса: Естественные, полученные путем сканирования, захвата теле или видео кадра, съемкой цифровой аппаратурой. Изображения, нарисованные с использованием графического редактора на компьютере, назовем их компьютерными рисунками. Трехмерные сцены, синтезированные с помощью специальных программ, таких как: CAD’ы (AutoCAD, ArchiCAD ...), 3D генераторы (3D Studio, LightWave ...) и т.п. Изображения - визуализация данных, полученных как результат некоторого эксперимента, опыта, измерения (энцефалограмма, сейсмографическая карта ...). Естественные изображения имеют некомпьютерное происхождение. В них почти нет резких цветовых переходов. Компьютерные рисунки, как в прочем и любые другие, подразделяются на два типа: растровые и векторные. В первом изображение хранится как прямоугольная матрица с элементами, характеризующими цветовые составляющие. В векторных изображение - последовательность команд для его построения. Пример команды - круг с центром в точке (100,100) и радиусом 50, текстурированный материалом под дерево. Преимущество растровых - простота воспроизведения и реалистичность, недостаток - большой занимаемый объем, проблемы с масштабированием. У векторных наоборот, преимущество - небольшой занимаемый объем, легкость масштабирования, недостаток - необходимость предварительной обработки перед воспроизведением и трудность создания реалистичных изображений. Трехмерные сцены вынесены в отдельный класс, так как в процессе их создания (например, прямой или обратной трассировкой луча, методом излучательности) можно получить дополнительные данные (характеристики прямого и диффузного отражения света, преломления ... объектов сцены) и использовать их при дальнейшей обработке. Изображения, как результат опыта и т.п. необходимо обработать, с целью выявить его особые характеристики, например, выделить часть изображения лежащую в заданном спектре и т.п. В дальнейшем мы будем рассматривать в основном растровые изображения. Форматирование и индексирование изображения. В данном разделе будем рассматривать изображение как прямоугольную матрицу A={ai,j} с N столбцами и M строками, где N - ширина изображения в пикселях, M - высота изображения в пикселях. Рассмотрим основные форматы, применяемые в компьютерной обработке изображений: Черно-белый. Каждый элемент матрицы представлен одним битом. Если он равен единице, то он отождествляется с черным цветом, если равен нулю - с белым. Это самый простой формат, он применяется при печати газет, распознавании текстов и подписей. Grayscale(градации серого).Отличие данного формата от предыдущего в том, что для каждого элемента матрицы отводится 8 битов (байт). Это позволит нам использовать 28=256 уровней серого цвета. Если ai,j=0, то имеем белый цвет, с возрастанием до 255 мы будем терять яркость и при ai,j=255 получим черный цвет. В промежутке от 0 до 255 будут располагаться серые цвета по правилу: чем ближе значение к 255, тем чернее будет серый. Данный формат позволяет получать довольно качественные черно-белые изображения. Значения ai,j содержат обратную яркость, т.е. значение (1 - L)*255, где L - яркость, которая может быть получена, например из RGB цветовых изображений по формуле: |