Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Шаг 2: Вычисление выборки цветов в цветовом пространстве L*a*b* для каждой локальной области




Существует возможность просмотра шести основных цветов изображения: фоновый цвет, красный, зеленый, пурпурный (фиолетовый), желтый и красно-фиолетовый (magenta). Отметим, что визуально эти цвета очень легко различаются между собой. Цветовое пространство L*a*b* (еще известное как CIELAB или CIE L*a*b*) позволяет четко отмечать эти визуальные различия.

Цветовое пространство L*a*b* получено на основе трехцветных значений CIE XYZ. Пространство L*a*b* включает информацию о значении интенсивности 'L*', значении цветности 'a*' (показывает какой цвет выбран на красно-зеленой оси) и значении цветности 'b*' (показывает какой цвет выбран на голубо-желтой оси).

Отметим, что при анализе цветов используются окрестности небольших размеров и при их вычислении берется усреднение в пространстве 'a*b*'. Эти цветовые метки можно использовать при классификации каждого пикселя.

Для упрощения демонстрации примера, считаем координаты области, которые хранятся в MAT-file.

load regioncoordinates;nColors=6;sample_regions=false([size(fabric, 1) size(fabric, 2) nColors]);for count=1:nColors sample_regions(:,:, count)=roipoly(fabric, region_coordinates(:, 1, count),... region_coordinates(:, 2, count));endimshow(sample_regions(:,:, 2)), title('Пример красной области');

Преобразуем RGB-изображение материи в L*a*b*-изображение с использованием функций makecform и applycform.

cform=makecform('srgb2lab');lab_fabric=applycform(fabric, cform);Вычислим средние значения 'a*' и 'b*' для каждой области представленной roipoly. Эти значения могут служить маркерами в пространстве 'a*b*'.a=lab_fabric(:,:, 2);b=lab_fabric(:,:, 3);color_markers=repmat(0, [nColors, 2]);for count=1:nColors color_markers(count, 1)=mean2(a(sample_regions(:,:,count))); color_markers(count, 2)=mean2(b(sample_regions(:,:, count)));endНапример, усреднение по красному цвету в цветовом пространстве 'a*b*' производится такdisp(sprintf('[%0.3f,%0.3f]', color_markers(2, 1), color_markers(2, 2)));




Поделиться с друзьями:


Дата добавления: 2015-10-01; Мы поможем в написании ваших работ!; просмотров: 434 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Если вы думаете, что на что-то способны, вы правы; если думаете, что у вас ничего не получится - вы тоже правы. © Генри Форд
==> читать все изречения...

2376 - | 2284 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.008 с.