Скачиваний:
4
Добавлен:
02.05.2014
Размер:
30.52 Кб
Скачать

Список функцийImage Processing Toolbox. Описание функции DITHER  Семинары   Обучение   Лицензирование   Разработка   Подписка   Форум  Регистрация    Matlab    Toolboxes    Simulink    Blocksets    Femlab    Полезное Вход Обработка сигналов и изображений\image Processing ToolboxСписок функций Image Processing Toolbox: Преобразования типов изображений

  В оглавление \ К следующему разделу \ К предыдущему разделу

DITHER Диффузионное псевдосмешение цветов Синтаксис:

Х=dither(RGB, map, Qm, Qe)

BW=dither(I)

Описание:

Функция Х=dither(RGB, map, Qm, Qe) создает палитровое изображение X с палитрой map из полноцветного изображения RGB, используя алгоритм Флойда-Стенберга диффузионного псевдосмешения цветов. Параметры Qm и Qe определяют скорость и точность работы алгоритма. Qm задает число бит для представления каждой из цветовых составляющих во вспомогательной таблице преобразования цветов, а Qe определяет точность вычисления ошибки - разницы между действительным значением цвета пиксела и ближайшим цветом в палитре. Qm может изменяться в диапазоне [1, 10] и должно быть меньше Qe. Qe может изменяться в диапазоне [1,31]. Если Qe < Qm, то псевдосмешения цветов не происходит. При вызове функции параметры Qm, Qe можно не указывать. По умолчанию Qm=5, Qe=8.

Если размер палитры mар меньше либо равен 256, то результирующее изображение Х имеет формат uint8, в противном случае оно имеет формат double.

Функция BW=dither(I) создает бинарное изображение BW из полутонового I, используя диффузионное псевдосмешение цветов. Результирующее изображение имеет формат uint8. Алгоритм:

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

При реализации функции dither используется хорошо известный алгоритм Флойда-Стенберга [1]. В этом алгоритме пиксел изображения заменяет свой цвет на ближайший в евклидовой метрике из имеющихся в палитре и вычисляет ошибки цветности для каждой из цветовых составляющих, вычитая значения RGB-цвета палитры и значения RGB-цвета исходного изображения. Для полутоновых изображений вычисляется ошибка яркости. Затем ошибки распространяются на соседние пикселы путем добавления некоторой доли ошибки к значениям соответствующих составляющих и происходит так называемая диффузия ошибки. По этой причине алгоритмы подобного типа еще называют рассеиванием или распределением ошибки (error diffusion). Ошибки распространяются на правые и нижние соседние пикселы в следующих соотношениях, определяемых матрицей ,

где X обозначает пиксел, ошибка которого распространяется. Алгоритм применяется рекурсивно ко всем пикселам изображения при обходе матрицы изображения слева направо и сверху вниз.

Использование псевдосмешения цветов позволяет улучшить цветовое восприятие за счет ухудшения разрешения и повышения уровня ВЧ шумов.

Сопутствующие функции: RGB2IND, IMAPPROX.

Ссылки на литературу:

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("") >

Соседние файлы в папке Функции Image Toolbox