dither

Преобразуйте изображение, увеличив очевидное цветное разрешение путем размывания

Описание

X = dither(RGB,map) создает индексируемое приближение изображений изображения RGB путем размывания цветов в палитре map.

X = dither(RGB,map,Qm,Qe) также задает номер Qm из битов квантования, чтобы использовать вдоль каждой цветной оси в обратной карте цветов и номера Qe из битов квантования, чтобы использовать в ошибочных вычислениях цветового пространства.

пример

BW = dither(I) преобразует полутоновое изображение I к двоичному файлу (черный и белый) отображают BW путем размывания.

Примеры

свернуть все

Считайте полутоновое изображение из corn.tif файл в рабочую область MATLAB®. Полутоновая версия изображения является третьим изображением в файле.

corn_gray = imread('corn.tif',3);

Отобразите полутоновое изображение с помощью imshow.

imshow(corn_gray)

Преобразуйте изображение в двоичный файл при помощи dither функция.

corn_bw = dither(corn_gray);

Отобразите двухуровневое изображение. Несмотря на то, что пиксели в двухуровневом изображении только имеют значение 0 или 1, изображение, кажется, имеет оттенки серого из-за размывания.

imshow(corn_bw)

Входные параметры

свернуть все

Изображение RGB в виде m-by-n-by-3 массив неотрицательных чисел. Если вы задаете изображение типа данных double, затем значения должны быть в области значений [0, 1].

Типы данных: single | double | uint8 | uint16

Введите палитру в виде c-by-3 матрица со значениями в области значений [0, 1]. Каждая строка map трехэлементный триплет RGB, который задает красные, зеленые, и синие компоненты одного цвета палитры. Палитра имеет максимум 65 536 цветов.

Типы данных: double

Биты квантования вдоль каждой цветной оси для обратной карты цветов в виде положительного целого числа. Если Qe меньше Qm, затем размывание не может быть выполнено и dither функция возвращает неразмытое индексированное изображение в X.

Типы данных: double

Биты квантования для ошибочных вычислений цветового пространства в виде положительного целого числа. Если Qe меньше Qm, затем размывание не может быть выполнено и dither функция возвращает неразмытое индексированное изображение в X.

Типы данных: double

Полутоновое изображение в виде m-by-n матрица неотрицательных чисел. Если вы задаете изображение типа данных double, затем значения должны быть в области значений [0, 1].

Типы данных: single | double | int16 | uint8 | uint16

Выходные аргументы

свернуть все

Индексируемое изображение, возвращенное как m-by-n матрица неотрицательных целых чисел. Если длина map меньше чем или равно 256, затем выходное изображение имеет класс uint8. В противном случае выходное изображение имеет класс uint16. Значение 0 в выходном массиве X соответствует первому, раскрашивают палитру.

Примечание

Значения в изображении X индексы в палитру map и не должен использоваться в математической обработке, такой как фильтрация операций.

Типы данных: uint8 | uint16

Двухуровневое изображение, возвращенное как m-by-n логическая матрица.

Типы данных: логический

Алгоритмы

dither увеличивает очевидное цветное разрешение изображения путем применения алгоритма случайного псевдосмешения Флойд-Стайнберга [1].

Ссылки

[1] Флойд, R. W. и Л. Стайнберг, "Адаптивный Алгоритм для Пространственной Шкалы полутонов", Международный Обзор Симпозиума Технических документов, Общества Отображений информации, 1975, p. 36.

[2] Лим, Джэ С., Двумерная Обработка сигналов и Обработка изображений, Englewood Cliffs, NJ, Prentice Hall, 1990, стр 469–476.

Представлено до R2006a