Функции Image Toolbox / rgb2hsv.php
.htmСписок функций Image Processing Toolbox. Описание функции RGB2HSV Семинары Обучение Лицензирование Разработка Подписка Форум Регистрация Matlab Toolboxes Simulink Blocksets Femlab Полезное Вход Обработка сигналов и изображений\image Processing ToolboxСписок функций Image Processing Toolbox: Конвертирование цветовых систем
В оглавление \ К следующему разделу \ К предыдущему разделу
RGB2HSV Конвертирование из RGB в HSV Синтаксис:
HSV=rgb2hsv(RGB)
hsvmap=rgb2hsv(rgbmap)
Описание:
Функция HSV=rgb2hsv(RGB) создает полноцветное изображение, значения пикселов которого представлены в цветовой системе HSV, из исходного полноцветного изображения в цветовой системе RGB. Результирующее изображение имеет формат представления данных double.
Функция hsvmap=rgb2hsv(rgbmap) создает палитру hsvmap, значения цвета в которой задаются в цветовой системе HSV, из исходной палитры rgbmap, хранящей цвета в цветовой системе RGB.
Алгоритм:
Широкое распространение в компьютерной графике и цифровой обработке изображений получила цветовая система HSV (hue - цветовой фон, saturation - насыщенность, volume - светлота) [1]. Часто для названия этой же системы используется аббревиатура HSB (hue, saturation, brightness - яркость).
Геометрическая модель системы HSV получается из следующих соображений. Если цветовой куб RGB спроецировать на плоскость, перпендикулярную диагонали, на которой в RGB-кубе расположены значения яркости (оттенки серого от черного до белого), то получается правильный шестиугольник с красным, желтым, зеленым, голубым, синим и пурпурным цветами в вершинах. При снижении насыщенности RGB цветов уменьшается размер и цветовой охват RGB-куба. При этом соответствующая шестиугольная проекция также будет меньше. Если проекции собрать вокруг оси яркости V, то получится перевернутый объемный шестигранный конус HSV, показанный на рис. 1 [1].
Яркость V изменяется от 0 в вершине конуса (черный цвет) до 1 в середине основания конуса (белый цвет). На оси V расположены ахроматические цвета - оттенки серого. Насыщенность S определяется расстоянием до оси V. На ней насыщенность равна нулю, а на сторонах конуса - единице. Цветовой тон H определяется углом поворота оси S против часовой стрелки относительно оси, проходящей через красный цвет.
Рис. 1.
Цветовая система HSV соответствует тому, как составляют цвета художники. Чистым цветам соответствуют значения V=1 и S=1, разбелам - цвета с увеличенным содержанием белого, т.е. с меньшими значениями S. Система HSV удобна для выбора цветов, поэтому ее относят к цветовым системам, приближенным к человеческому восприятию (perception).
Пример.
Большинство функций IPT по фильтрации и улучшению изображений предназначены для обработки полутоновых изображений. Рассмотрим, каким образом эти функции можно применять для обработки полноцветных изображений.
Известно, что зрение человека более чувствительно к изменениям яркости, чем к изменениям цвета. Этот факт делает целесообразным производить обработку отдельно для яркостной составляющей. Для этого полноцветное изображение из цветовой системы RGB следует преобразовать в систему, в которой одна из составляющих является сигналом яркости, а другие описывают цвет; например, таким требованиям отвечают системы HSV или YIQ.
Исходное полноцветное изображение (рис. 2 а) слишком темное и имеет низкий контраст. Данное изображение преобразуется в цветовую систему HSV, где V является яркостной составляющей. Для этой составляющей повышается контраст. Затем изображение преобразуется обратно в систему RGB. Полученное в результате изображение показано на рис. 2 б.
%Пример демонстрирует подход к фильтрации и контрастированию
%цветных изображений.
%Чтение исходного изображения и вывод его на экран.
RGB=imread(‘flowers.tif’);
imshow(RGB);
%Преобразование в цветовую систему HSV.
HSV=rgb2hsv(RGB);
%Контрастирование составляющей Н - яркости изображения.
HSV(:,:,3)=imadjust(HSV(:,:,3), [0.02 0.68], [], 0.7);
%Преобразование в цветовую систему RGB.
RGB=hsv2rgb(HSV);
%Вывод результатов на экран.
figure, imshow(RGB);
а)
б)
Рис. 2.
Сопутствующие функции: HSV2RGB.
Ссылки на литературу:
1. Роджерс Д. Алгоритмические основы машинной графики М.: Мир. 1989.
В оглавление \ К следующему разделу \ К предыдущему разделу
I Всероссийская научная конференция "Проектирование научных и инженерных приложений в среде MATLAB" (май 2002 г.)
II Всероссийская научная конференция "Проектирование научных и инженерных приложений в среде MATLAB" (май 2004 г.) На первую страницу \ Сотрудничество \ MathWorks \ SoftLine \ Exponenta.ru \ Exponenta Pro E-mail: matlab@exponenta.ru Информация на сайте была обновлена 14.05.05 Copyright 2001-2005 SoftLine Co
Наши баннеры hotlog_js="1.0"; hotlog_r=""+Math.random()+"&s=58396&im=33&r="+escape(document.referrer)+"&pg="+ escape(window.location.href); document.cookie="hotlog=1; path=/"; hotlog_r+="&c="+(document.cookie?"Y":"N"); hotlog_js="1.1";hotlog_r+="&j="+(navigator.javaEnabled()?"Y":"N") hotlog_js="1.2"; hotlog_r+="&wh="+screen.width+'x'+screen.height+"&px="+ (((navigator.appName.substring(0,3)=="Mic"))? screen.colorDepth:screen.pixelDepth) hotlog_js="1.3" hotlog_r+="&js="+hotlog_js; document.write("") >