По умолчанию функция graycomatrix
создает один GLCM, с пространственными отношениями или смещением, заданным как два горизонтально смежных пикселя. Однако одна сила GLCM не быть достаточно, чтобы описать структурные функции входного изображения. Например, одно горизонтальное смещение не может быть чувствительным, чтобы текстурировать с вертикальной ориентацией. Поэтому graycomatrix
может создать несколько GLCMs для одного входного изображения.
Чтобы создать несколько GLCMs, задайте массив смещений к функции graycomatrix
. Эти смещения задают пиксельные отношения переменного направления и расстояния. Например, можно задать массив смещений, которые задают четыре направления (горизонталь, вертикальная, и две диагонали) и четыре расстояния. В этом случае входное изображение представлено 16 GLCMs. Когда вы вычисляете статистику от этих GLCMs, можно взять среднее значение.
Вы задаете эти смещения как p-2 массив целых чисел. Каждая строка в массиве является двухэлементным вектором, [row_offset, col_offset]
, который задает смещение того. row_offset
является количеством строк между пикселем интереса и его соседом. col_offset
является количеством столбцов между пикселем интереса и его соседом. Этот пример создает смещение, которое задает четыре направления и четыре расстояния для каждого направления. Для получения дополнительной информации об определении смещений, смотрите страницу с описанием graycomatrix
.
offsets = [ 0 1; 0 2; 0 3; 0 4;... -1 1; -2 2; -3 3; -4 4;... -1 0; -2 0; -3 0; -4 0;... -1 -1; -2 -2; -3 -3; -4 -4];
Фигура иллюстрирует пространственные отношения пикселей, которые заданы этим массивом смещений, где D
представляет расстояние от пикселя интереса.