2012-04-09 11 views
2

Я пытаюсь создать систему поиска изображений на основе контента (CBIR) в MATLAB для цветных изображений и использую алгоритм k-mean для извлечения векторов объектов для изображений в моей базе данных , Каждое изображение имеет четыре кластера, и каждый кластер имеет информацию о цвете (R, G, B) и позиции (X, Y).Извлечение текстурных признаков из матрицы совпадения

Теперь я пытаюсь добавить функцию текстуры в свои кластеры и для этого нужно использовать матрицы совпадения уровня серого (GLCM). Я знаю, что GLCM - это всего лишь показатель вероятности того, что рядом с другим появится определенный уровень серого и создаст GLCM для моих изображений.

Непонятно, как сопоставить GLCM с исходным изображением (и, следовательно, с его кластерами), поскольку GLCM говорит о парах пикселей, и я хотел бы, чтобы каждая позиция X, Y имела информацию текстуры. Как переводить GLCM на пиксели?

ответ

3

Выход GLCM, по-видимому, является матрицей T-by-T, где T - количество различных оттенков серого в изображении. Поэтому размер этой матрицы не зависит от размера вашего изображения. Матрица также описывает текстуру всего изображения, поэтому не имеет особого значения связывать данные GLCM с одним пикселем.

Похоже, вы могли бы вычислить GLCM для отдельных кластеров, так как это будет описывать текстуру внутри этого кластера? Я думаю, что graycomatrix требует прямоугольного изображения, но вы можете найти ограничительную рамку для каждого кластера и извлечь из них GLCM отдельно.

Если вы хотите получить более значимую информацию из матрицы GLCM (т. Е. Что-то, что подходит как «функция»), вы можете использовать graycoprops, который возвращает 4 сводные статистические данные.

 Смежные вопросы

  • Нет связанных вопросов^_^