graydist

Взвешенное серым преобразование расстояния полутонового изображения

Описание

T = graydist(I,mask) вычисляет серое преобразование расстояния полутонового изображения I. Местоположения, где mask является true являются местоположениями seed.

пример

T = graydist(I,C,R) задает координаты столбца и строки seed местоположений в векторах C и R.

T = graydist(I,ind) определяет линейные индексы местоположений seed, ind.

T = graydist(___,method) задает альтернативную метрику расстояния, method.

Примеры

свернуть все

Создайте магический квадрат. Матрицы, сгенерированные магической функцией, имеют равные строку, столбец и диагональные суммы. Минимальный путь между верхним левым и нижним правым углом расположен вдоль диагонали.

A  = magic(3)
A = 3×3

     8     1     6
     3     5     7
     4     9     2

Вычислите серое преобразование расстояния, задав в качестве seed расположения верхний левый угол и нижний правый угол квадрата.

T1 = graydist(A,1,1);
T2 = graydist(A,3,3);

Суммируйте два преобразования, чтобы найти минимальный путь между местоположениями seed. Как ожидалось, существует минимальный путь с постоянными значениями вдоль диагонали.

T  = T1 + T2
T = 3×3

    10    11    17
    13    10    13
    17    17    10

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

свернуть все

Полутоновое изображение, заданное как числовой или логический массив.

Двоичная маска, которая задает seed местоположения, задается как логический массив того же размера, что и I.

Координаты столбца и строки seed местоположений, заданные как вектор положительных целых чисел. Значения координат действительны C, R нижние индексы в I.

Индексы местоположений seed, заданные как вектор положительных целых чисел.

Метрика расстояния, заданная в качестве одного из следующих значений.

Метод

Описание

'chessboard'

В 2-D расстояние между шахматной доской (x 1, y 1) и (x 2, y 2) составляет

max (│<reservedrangesplaceholder3>1 - x 2 м, а y 1 - y 2 м).

'cityblock'

В 2-D расстояние между (x 1, y 1) и (x 2, y 2) составляет

<reservedrangesplaceholder3> 1 – <reservedrangesplaceholder2> 2  +  <reservedrangesplaceholder1> 1 – <reservedrangesplaceholder0> 2 

'quasi-euclidean'

В 2-D квазиевклидово расстояние между (x 1, y 1) и (x 2, y 2) составляет

|x1x2|+(21)|y1y2|, |x1x2|>|y1y2|

(21)|x1x2|+|y1y2|, иначе.

Для получения дополнительной информации смотрите Преобразование расстояния бинарного изображения.

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

свернуть все

Серое взвешенное преобразование расстояния, возвращаемое как числовой массив того же размера, что и I. Если вход числовой тип I является double, затем выход числовой тип T является double. Если вход является любым другим числовым типом, то выход T является single.

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

Алгоритмы

graydist использует геодезический алгоритм времени [1]. Основным уравнением для геодезического времени вдоль пути является:

τf(P)=f(po)2+f(pl)2+i=1l1f(pi)

method определяет веса фаски, которые назначаются локальному соседу во время внешнего распространения. Вклад каждого пикселя в геодезическое время основан на весе фаски в конкретном направлении, умноженном на интенсивность пикселя.

Ссылки

[1] Soille, P. «Обобщенная геодезия через геодезическое время». Распознавание Букв. Vol.15, декабрь 1994, с. 1235-1240.

Введенный в R2011b