Matlab Совместная Матрица
Я уверен, что это где-то очень простая ошибка для меня! Но когда я использую Matlab's graycomatrix
функция, я не получаю ожидаемый результат. Вместо ожидаемого вывода матрицы я всегда получаю матрицу 8 x 8 (почти) с нулем, с одной записью в правом нижнем углу - обычно равной 16. Я не изменил настройки по умолчанию или не использовал 'offset', поэтому я ' Я не слишком уверен, в чем проблема.
1 ответ
Решение
Это потому, что ваше изображение не нормализуется!
Ваше изображение должно быть в диапазоне 0-1, поэтому:
I = [1 1 2; 2 2 3; 1 2 5]; %or any other I
glcm = graycomatrix(I/max(I(:))); % or I/255 , but it would not work for this example
должен сделать работу.
В вашем случае Matlab интерпретирует, что все авобе 1 равно 1, поэтому матрица совместного появления дает вам уникальное значение в максимальной позиции.