Matrice di co-occorrenza

(Reindirizzamento da GLCM)

La matrice di co-occorrenza (o anche GLCM Gray - Level Co-occurrence Matrix) è una matrice definita per un'immagine digitale.

Definizione modifica

In matematica la matrice di co-occorrenza   è definita per un'immagine   di dimensioni   x  , parametrizzata da un offset  , come:

 

il valore dell'immagine si riferisce al valore di grigio dello specifico pixel. Il valore può essere qualsiasi, da un numero binario ad un valore di 32 bit per un'immagine a colori. Da notare che un'immagine a 32 bit genera una matrice di  .

Una matrice di co-occorrenza misura le tessiture (texture mapping) dell'immagine. È inoltre possibile definire una matrice che può essere usata per il color mapping, ovvero per colorare un'immagine partendo da un'altra.

Inoltre, bisogna prestare attenzione alla parametrizzazione con  , che rende la matrice sensibile alle rotazioni.

Codice modifica

Una funzione MATLAB per il calcolo di questa matrice per due immagini binarie (valori 0 e 1), e':

function M=getCoMatrix(M1,M2)
  M = zeros(2); % restituisce una matrice binaria 2x2 .
  [r,c] = size(M1);

  for i=1:r
      for j=1:c
          v1 = M1(i,j)+1; % Aggiunge "1" al valore dell'immagine binaria, per ottenere l'indice della matrice.
          v2 = M2(i,j)+1;
          M(v1,v2) = M(v1,v2)+1; % Incrementa il valore della matrice di co-occorrenza.
      end
  end

Collegamenti esterni modifica