• Aucun résultat trouvé

Regroupement spectral temporel

Partie II Contribution expérimentale

6.2 Regroupement spectral temporel

L’algorithme proposé se découpe en trois étapes. D’abord, une séquence de paramètres est générée à partir d’un signal d’entrée. Les paramètres sont les couleurs dominantes des images vidéo ou les coefficients cepstraux des signaux acoustiques. Ensuite, on traite ces descripteurs avec une mesure de similarité euclidio-temporelle pour obtenir la matrice d’affinités nécessaire afin de réaliser un regroupement spectral. Finalement, on organise les résultats pour présenter les segments du signal d’entrée.

La construction de la matrice d’affinités d’une séquence de vecteurs s’inspire du fait que les vecteurs de paramètres peuvent être considérés comme les sommets d’un graphe pondéré. Le poids des arêtes dépend de la similarité et de l’ordre temporel entre vecteurs. Conformément à cela, deux vecteurs semblables éloignés dans l’échelle temporelle sont considérés comme « différents » alors que deux vecteurs dissimilaires proches en temps peuvent être utilisés pour définir une frontière sur le signal.

6.2.1

Similarité Euclidio-Temporelle

Nous changeons la formulation originale du regroupement spectral (décrit dans la sec- tion 3.2) pour prendre en compte l’information temporelle entre les vecteurs d’une séquence. Ainsi, nous éliminons les composants qui se trouvent distants de la diagonale principale de la matrice d’affinités typique du regroupement spectral. Cette modification nous permet de réaliser la segmentation temporelle du signal.

Suite au calcul de la matrice d’affinité A d’une séquence X = {xi, i = 1, . . . , n} par une

fonction noyau RBF, nous analysons la dissimilarité entre chaque élément aii de la diagonale

et ses voisins vers l’avant [ai,i+1, ai,i+2, ai,n], i = 1, . . . , n. Quand la différence entre aii et

un voisin aij est supérieure à un seuil prédéfini ε, la suite d’éléments ai,j+1, . . . , ain est mise

à zéro (voir figure 6.1). De cette manière nous isolons un segment temporel « pseudo stable » Si = [xi, xi+1, . . . , xj] de la diagonale de A associée à l’élément xi. Tous les éléments d’un

segment partagent la même frontière.

FIG. 6.1 – Métrique pour la modification de la matrice d’affinité du regroupement spectral stan- dard. Depuis l’élément diagonal aii, si sa différence par rapport à un voisin ai,i+j est supérieure

à un seuil ε, la suite de la séquence est considérée « infiniment » loin de aii(trames noires de la

6.2. Regroupement spectral temporel La matrice du regroupement temporel eA est définie par :

Si i < k e aik =        exp−||xi−xk|| 2 2σ2 si xk∈ Si 0 autrement e aki =eaik (6.1) e

A est composé de p blocs situés sur sa diagonale principale. La figure6.2montre une matrice d’affinités calculée avec l’algorithme du regroupement spectral classique utilisant une séquence de vecteurs cepstraux. La figure montre aussi les blocs diagonaux et symétriques qui composent la matrice du regroupement temporel correspondante.

Les vecteurs propres de eA définissent les unités temporelles stables de la séquence d’entrée, tel qu’il est montré dans la figure6.3. En fait, la valeur 1 de chaque vecteur propre est associée à un segment temporel du signal.

En fait, la segmentation temporelle est accomplie par la diagonalisation de eA, la normali- sation et l’arrondissement de ses vecteurs propres principaux. Les paramètres d’échelle σ et ε contrôlent la définition d’affinité entre vecteurs. Ils sont choisis par validation croisée.

6.2.2

Algorithme de segmentation

On obtient une segmentation temporelle à partir de eA. Le rang de eA donne une idée du nombre de blocs sur la diagonale de la matrice (égal au nombre potentiel de segments stables dans la séquence d’entrée). En général, nous utilisons un seuil sur les valeurs propres associées aux vecteurs propres de eA pour choisir les q plus importants. En effet, selon la théorie du regroupement spectral, seuls ces vecteurs sont pertinents pour définir les clusters d’un ensemble. Chaque vecteur propre vq définit un segment temporel Sq. L’union de tous les segments

donne la segmentation résultante. La relation entre un signal d’entrée et les segments temporels détectés par l’algorithme est montrée dans la figure 6.4. Les périodes de haute variabilité du signal sont enregistrées comme une suite de segments courts. Nous rassemblons ces unités pour définir des segments appelés « transitoires ».

En résumé, l’algorithme comprend les étapes suivantes :

1. paramétrisation de la séquence (par exemple : une analyse cepstrale pour l’audio, et un calcul d’histogrammes pour les images d’une vidéo).

FIG. 6.2 – Matrice de regroupement temporel évaluée avec des paramètres cepstraux. En haut, la matrice d’affinités A du spectral clustering. En bas, la matrice eA, modifiée avec la métrique définie dans l’équation6.1.

3. modification de A avec l’équation 6.1 pour isoler les blocs diagonaux et constituer la matrice eA. On utilise la variable ε, le seuil qui définit d’appartenance d’un vecteur à un segment.

4. diagonalisation de eA. Normalisation et arrondissement des vecteurs propres correspon- dants aux q plus grandes valeurs propres.

5. association de chaque vecteur propre à un segment temporel du signal. Lissage pour fusionner les segments trop petits.

6.2. Regroupement spectral temporel

FIG. 6.3 – Vecteurs propres principaux (arrondis) de eA. L’intervalle non nul de chaque vecteur propre définit un segment temporel de la séquence d’entrée.

FIG. 6.4 – Signal de parole segmenté avec le regroupement spectral temporel. Les segments courts sont fusionnés postérieurement pour créer des segments dénommés « transitoires ».

Une fois que la segmentation temporelle du signal est établie, nous pouvons choisir un ou plusieurs vecteurs représentatifs de chaque segment afin de les traiter et ainsi trouver une étiquette qui identifie tout le segment. Pour cela nous pouvons réaliser un regroupement spec- tral classique [Ng01] ou un traitement par Kernel PCA [Sch02] sur ces vecteurs, suivi d’un regroupement avec l’algorithme des k-means [ST04].