Создайте матрицу совместной встречаемости уровня серого из изображения
glcms = graycomatrix(I)
glcms = graycomatrix(I,Name,Value,...)
[glcms,SI]
= graycomatrix(___)
создает матрицу совместной встречаемости уровня серого (GLCM) из изображения glcms
= graycomatrix(I
)I
. Другим именем для матрицы совместной встречаемости уровня серого является gray-level spatial dependence matrix. Кроме того, совместная встречаемость слова часто используется в литературе без дефиса, совместной встречаемости.
graycomatrix
создает GLCM путем вычисления, как часто пиксель с уровнем серого (полутоновая интенсивность) значение i происходит горизонтально смежный с пикселем со значением j. (Можно задать другие пиксельные пространственные отношения с помощью параметра 'Offsets'
.) Каждый элемент (i, j) в glcm
задает число раз, что пиксель со значением i произошла горизонтально смежная с пикселем со значением j.
возвращает одну или несколько матриц совместной встречаемости уровня серого, в зависимости от значений дополнительных пар имя/значение. Названия параметра могут быть сокращены, и случай не имеет значения. glcms
= graycomatrix(I,Name,Value
,...)
graycomatrix
вычисляет GLCM от масштабированной версии изображения. По умолчанию, если I
является двухуровневым изображением, graycomatrix
масштабирует изображение к двум уровням серого. Если I
является изображением интенсивности, graycomatrix
масштабирует изображение к восьми уровням серого. Можно задать количество уровней серого использование graycomatrix
, чтобы масштабировать изображение при помощи параметра 'NumLevels'
и способ, которым graycomatrix
масштабирует значения с помощью параметра 'GrayLimits'
.
Следующие данные показывают, как graycomatrix
вычисляет несколько значений в GLCM 4 5 изображение I
. Элемент (1,1) в GLCM содержит значение 1
, потому что существует только один экземпляр в изображении, где два, горизонтально смежные пиксели имеют значения 1
и 1
. (1,2)
элемента в GLCM содержит значение 2
, потому что существует два экземпляра в изображении, где два, горизонтально смежные пиксели имеют значения 1
и 2
. graycomatrix
продолжает эту обработку, чтобы заполнить все значения в GLCM.
graycomatrix
игнорирует пиксельные пары, если любой из пикселей содержит NaN
, заменяет положительный Infs
на значение NumLevels
и заменяет отрицательный Infs
на значение 1
. graycomatrix
игнорирует краевые элементы изображения, если соответствующий соседний пиксель выходит за пределы границ изображения.
GLCM, созданный, когда 'Symmetric'
установлен в true
, симметричен через его диагональ и эквивалентен GLCM, описанному Haralick (1973). GLCM производится следующим синтаксисом с набором 'Symmetric'
к true
graycomatrix(I, 'offset', [0 1], 'Symmetric', true)
эквивалентно сумме двух GLCMs, произведенных следующими операторами where'Symmetric'
, установлен в false
.
graycomatrix(I, 'offset', [0 1], 'Symmetric', false) graycomatrix(I, 'offset', [0 -1], 'Symmetric', false)
[1] Haralick, R.M., К. Шэнмугэн и я. Динштайн, "Структурные Функции Классификации Изображений", Транзакции IEEE в Системах, Человеке, и Кибернетике, Издании SMC-3, 1973, стр 610-621.
[2] Haralick, R.M., и Л.Г. Шапиро. Компьютер и Видение Робота: Издание 1, Аддисон-Уэсли, 1992, p. 459.