1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Luận văn thạc sĩ VNU fouille de graphes et classification de graphes application au symbol spotting

57 4 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Fouille de graphes et Classification de graphes Application au "Symbol Spotting"
Tác giả Nguyen Quoc Toan
Người hướng dẫn Jean-Marc Ogier, Jean-Christophe Burie, Romain Raveaux
Trường học Universitộ de la Rochelle
Chuyên ngành Informatique
Thể loại Mộmoire de fin d’ộtude
Năm xuất bản 2009
Thành phố La Rochelle
Định dạng
Số trang 57
Dung lượng 1,67 MB

Cấu trúc

  • 1 Introduction

    • 1.1 Problématique

    • 1.2 Objectif et contribution du stage

    • 1.3 Environnement de stage

    • 1.4 Plan du document

  • 2 Conceptions

    • 2.1 Définition de graphe

    • 2.2 Correspondance de Graphe

    • 2.3 Graphe de distance

      • 2.3.1 Distance d'édition

      • 2.3.2 Distance entre signatures de graphe «graph probing » 

    • 2.4 Symbol spotting

  • 3 Etat de l'art

    • 3.1 Les méthodes de construction de graphe

    • 3.2 Les methodes de mise en correspondances des graphes

    • 3.3 Récaputulation des méthodes

  • 4 Une méthode de mise en correspondance de graphes fondée sur l’assignement de sous-graphes

    • 4.1 Définition : Décomposition en sous-graphes

    • 4.2 La correspondance de sous-graphes

    • 4.3 Le coût de fonction (c) pour la correspondance des signatures

    • 4.4 Sous graphe de longueur 

    • 4.5 Construction de matrice de coûts

  • 5 Représentation de l’information contenue dans une image

    • 5.1 Constitution de l'ensemble des nœuds

    • 5.2 Extraction des composantes connexes

    • 5.3 Étiquetage des composantes connexes

      • 5.3.1 Extraction de caractéristiques

      • 5.3.2 Statistique de la forme

      • 5.3.3 Classification non supervisée des caractéristiques morphologiques

    • 5.4 Organisation de l’information : Construction d’un Graphe de voisinage

      • 5.4.1 Relations d'Allen bidimensionnelles

      • 5.4.2 Intervalle basé sur les distances entre deux régions

  • 6 Application

    • 6.1 Protocole

      • 6.1.1 Test en classification

      • 6.1.2 Symbol Spotting

    • 6.2 Bases de tests

      • 6.2.1 Pour la classification

      • 6.2.2 Pour le Symbol Spotting

    • 6.3 Résultat

      • 6.3.1 Test en classification

      • 6.3.2 Symbol Spotting

    • 6.4 Complexité algorithmique

  • Symbol spotting

  • Conclusions

  • Références

Nội dung

Problématique

Reconnaissance de symbole est une des applications importantes dans le domaine de la reconnaissance de formes qui est appliqué dans plusieurs domaines comme l'architecture, la cartographie, l'électronique, la mécanique etc En raison des types de documents graphiques sont trop large, chacune d’entre eux possèdent un ensemble caractéristique de symboles propres, il n'est pas facile de trouver une définition précise d'un symbole Dans une manière très générale, un symbole peut être défini comme une entité graphique avec un sens particulier dans le contexte d'un domaine d'application spécifique Il y a un grand nombre d'approches ont été proposées pour la reconnaissance des symboles Chacune d’entres elles possèdent des propriétés qui lui sont propres et ne peut s’appliquer qu’à certains contextes, réunissant certaines conditions

Dans notre cas, nous utilisons la méthode basées sur le graphe pour représenter les images de documents techniques et de symbole demandé en des graphes Chaque nœud du graphe représente une composante connexe dans l’image de document La relation entre deux composantes connexes est matộrialisộe dans un graphe de ô voisinage ằ Le problốme de la reconnaissance de symbole est tourné en une question d’isomorphisme de sous graphe, afin de trouver les sous-graphes qui correspondent à des symboles graphiques.

Objectif et contribution du stage

L'objectif de stage est dans un premier temps d'étudier le problème de la correspondance de graphes ô Graph Matching ằ, les mesures de calculer la distance entre deux graphes Et puis, nous proposons une méthode de mise en correspondance de graphes fondée sur l’assignement de sous-graphes de longueur l Ensuite nous construisons un protocole de test en classifications basé sur les prototypes de graphes en utilisant la méthode K plus proche voisins (K-NN) basé sur notre méthode de mise en correspondance de graphes Enfin, nous créons une application de type reconnaissance de symbole basé sur le graphe pour trouver toutes les localisations d’un symbole dans un plan donné.

Environnement de stage

Ce stage s’intốgre dans le contexte d’un projet appelộ : ô ALPAGE ằ 1 de Laboratoire L3I, Université de La Rochelle, France Ce projet traite des plans cadastraux couleurs de l’espace urbain parisien suivant différentes époques, allant du 14 ème au 19 ème siècle en intégrant réellement la dimension spatiale Les travaux de ce projet ont concernant les domaines telles que la vision par ordinateur, la géométrie, l’archéologie et reconnaissance des formes La contribution du stage est une nouvelle approche dans le domaine de reconnaissance de forme basé sur le graphe.

Plan du document

Le reste du document est organisé de la manière suivante

La deuxième partie, nous présentons des conceptions fondamentales Dans la troisième partie, nous présentons un état de l’art des méthodes à base de graphe pour la reconnaissance des symboles graphiques Alors, la quatrième partie présente une nouvelle méthode de mise en correspondance de graphes fondée sur l’assignement de sous-graphe de longueur l en utilisant la matrice de cỏts La cinquiốme partie fournit la faỗon de construire un graphe basé sur l’information contenue dans une image, dans ce chapitre nous proposons des méthodes d’étiquetage des nœuds et des arcs pour avoir des types de graphe différent Dans la sixième partie, nous présentons la contribution de notre stage à construire deux protocoles : Test en classification et Symbol Spotting, nous présentons aussi la méthode d’évaluation que nous avons utilisée pour notre système, ainsi que les résultats obtenus La dernière partie présente la conclusion, ainsi que les perspectives.

Définition de graphe

Soient deux fonctions d'étiquetage L V (V) et L E (E) qui associent à chacun des éléments de V, respectivement de E, une ộtiquette Un graphe ộtiquetộ G est un 4-tuple G = (V, E, à, ξ), avec :

V est un ensemble de nœuds

E ⊆ V × V : un ensemble d’arcs à : V → L V : la fonction d’ộtiquetage de nœud ξ : E → L E : la fonction d’étiquetage d’arcs

Correspondance de Graphe

Les graphes constituent un mode de représentation fréquemment utilisé dans le domaine des sciences et technologies de l'information qui permettent à la description de données structurées Un graphe G est un ensemble V de nœuds et un ensemble E d'arcs, G = (V, E) Les outils de classification supervisée sont de plus en plus nécessaires dans de nombreuses applications telles que la reconnaissance des formes [1], la CBR (Case Based

Reasoning) [2], l’analyse des composantes chimiques [3], …Pour lancer le sujet de la mise en correspondance de graphe ô graph matching ằ, nous rappelons qu'il existe une ộtude approfondie sur les techniques de la correspondance de graphes apparues au cours de ces

Dans le cas du problème de reconnaissance des formes, étant donné deux graphes : le graphe de modèle GM et le graphe de données GD, la procédure de comparaison implique de vérifier si ils sont similaires ou non De manière générale, nous pouvons représenter le problème de la correspondance de graphe comme suit : Etant donné deux graphes GM (VM, EM) et GD = (VD, ED), avec | VM | = | VD |, le problème est de trouver une fonction de correspondance f: VD → VM, tel que (u, v) ∈ ED Si et seulement si (f (u), f (v)) ∈ EM Lorsqu’une telle fonction de correspondance f existe, nous somme en présente d’un isomorphisme, et GD est dit d'ờtre isomorphe à GM et ce type s’appelle ô correspondance exacte ằ D'autre part, le terme ô inexact ằ appliquộe aux problốmes de la correspondance de graphe, indique qu'il n'est pas possible de trouver un isomorphisme entre les deux graphiques C'est le cas lorsque le nombre de sommets ou le nombre d’arcs sont différents à la fois dans le graphe modèle et graphe de données Dans ce cas là, on peut trouver la meilleure correspondance entre eux en trouvant une correspondance non-bijective entre le graphe de données et le graphe de modèle

Le problème de la correspondance de graphe a été prouvé être le NP-complet [5] Lorsque le nombre de nœuds dans les deux graphes sont différents, le problème de la correspondance de graphe devient plus difficile que dans le cas de la correspondance de graphe exact De même, la complexité du problème de sous-graphe inexact est équivalente à la complexité du problème de la plus grand sous graphe commun, qui est aussi connu pour être NP-complet Plusieurs techniques ont été proposées pour résoudre ce problème, par exemple, la relaxation probabiliste, l'algorithme EM [6], [7], les réseaux de neurones [8], [9], des arbres de décision [10] et un algorithme génétique [11], [12]

Toutes les méthodes énoncées antérieurement ont comme point commun l'utilisation d'un algorithme d'optimisation pour adapter un graphe dans un autre et une fonction ô qualitộ ằ pour mesure la bonne similaritộ entre deux graphes Cette fonction est conỗue en tenant compte du cỏt pour faire la correspondance V D → V M Les auteurs sont convaincus qu‘une correspondance convenable doit conduire à une distance entre graphe précise Selon cette hypothèse, le problème est tourné en une question de distance entre graphes De plus, ce point de vue sur le problème de la correspondance de graphe permettra de lancer un banc de tests sur notre approche et de fournir une étude comparative.

Graphe de distance

Distance d'édition

La distance d'édition ed est une mesure de dissimilarité pour comparer des graphes qui représente la séquence d'opérations élémentaires de cỏt minimum pour transformer un graphe en un autre graphique par les opérations élémentaires de l'insertion, de la suppression et de la substitution de nœuds ou d'arcs Sous certaines conditions concernant le cỏt des opérations élémentaires décrites dans [16], la distance d'édition entre graphes est une métrique.

En pratique, le cỏt des opérations élémentaires est dépendant de l'application Leur détermination est en général effectuée soit par expertise humaine ou, plus rigoureusement, par apprentissage artificiel comme cela est proposé dans [17].

En revanche, le calcul de la distance d'édition est réalisé par programmation dynamique et à de ce fait, une complexité exponentielle dans le pire des cas, ceci interdit son usage pour la recherche de plus proches voisins dans de grandes bases de données.

Une autre possibilité permettant d'évaluer la proximité entre objets complexes (ensembles, séquences, graphes, .) pour comparer des objets ou des graphes.

Le coefficient de correspondance mc est la mesure la plus simple répondant à cette définition et permettant de comparer des objets complexes o 1 et o 2

C'est en se basant sur ce concept que des mesures de dissimilarité exploitant le plus grand sous-graphe commun (mcs) ont été proposées :

Dans les formules précédentes, |G| représente la taille du graphe G qui peut s'agir d'une combinaison linéaire du nombre de nœuds et du nombre d'arcs du graphe G Et mcs(G1,G2) est le plus grand sous-graphe commun aux graphes G 1 et G 2 , ce qui signifie que ce sous- graphe ne peut être étendu à un autre sous-graphe commun par quelque addition de nœud ou d'arc que se soit.

La distance d'édition est liée au plus grand sous-graphe commun par la relation donnée par l'équation

Tant que le cỏt des fonctions associées à la distance d’édition qui respecté les conditions prộsentộes dans [16] Cela signifie que la faỗon de calculer la taille de mcs de deux graphes peuvent être utilisés pour calculer la distance d’édition le vice-versa Ainsi, les deux calculs ont la même complexité algorithmique En raison de la difficulté à appliquer ces mesures car leur complexité, plusieurs approches reposant sur des approximations ont été proposées dans [19] Trois autres groupes de techniques peuvent être employées pour évaluer la similitude graphique, la théorie des graphes spectraux [19], les méthodes probabilistes [20] ou des méthodes d'optimisation combinatoire [21], [22].

Parmi elles, [22] a proposé une méthode d'optimisation combinatoire offrant une distance basée sur la mise en correspondance des arcs Cette méthode approxime le maintien topologique, induit par l'isomorphisme, par la recherche d'une mise en correspondance entre les ensembles d'arcs de chacun des deux graphes en minimisant l’appariement de ces ensembles.

Kriegel et Schửnauer [22] montrent que, pour les graphes ộtiquetộs, la distance de mise en correspondance d'arcs respecte les propriétés de non-négativité (1), de symétrie (3) et l'inégalité triangulaire (4) Récemment, Riesen et al proposait dans [24], une approximation pour calculer la distance d’édition de graphes Dans ce travail, la correspondance de deux graphes s’appuie sur l’appariement d’un graphe bipartite.

La matrice des cỏts pour les correspondants des étiquettes des nœuds différents qui sert d'entrée pour l'algorithme hongrois [23] qui traite alors la matrice des cỏts d'association des nœuds et fournit la distance d'association des nœuds de G 1 et G 2 comme étant le cỏt de la meilleure association avec une complexité en O(n 3 ) dans le pire des cas, avec n le plus grand nombre d'arcs.

Voici les étapes de la méthode hongroise qui traite la matrice des cỏts pour trouver le cỏt de la meilleure association des nœuds, nous proposons que deux graphes G 1 , G 2 avec les distances entre des nœuds de G 1 et G 2 sont comme dans le tableau 1

Table 1: Matrice des cỏts de G 1, G 2

Nœud 4 11 19 14 13 Étape 1: Réduction des lignes : créer une nouvelle matrice des cỏts en choisissant le cỏt minimal sur chaque ligne et en le soustrayant de chaque cỏt sur la ligne.

Nœud 1 Nœud 2 Nœud 3 Nœud 4 Réduit de

Table 2: étape 1 : réduction des lignes Étape 2 : Réduction des colonnes : créer une nouvelle matrice des cỏts en choisissant le cỏt minimal dans chaque colonne et en le soustrayant de chaque cỏt dans la colonne.

Table 3: étape 2 : réductions des colonnes Étape 3: Déterminer le nombre minimal de lignes nécessaires sur les lignes et les colonnes pour couvrir tous les zéros Si ce nombre est égal au nombre de lignes (ou colonnes), la matrice est réduite; aller à l’étape 5 Si ce nombre est inférieur au nombre de lignes (ou colonnes), aller à l’étape 4.

Table 4: étape 3 : déterminer le nombre minimal de lignes sur les lignes, colonnes pour couvrir tous les zéros

Dans ce cas, le nombre minimal de lignes est de 3 Donc, on va à l’étape 4. Étape 4:

- Trouver la cellule de valeur minimum non-couverte par une ligne.

- Soustraire cette valeur de toutes les cellules non-couvertes

- Ajouter cette valeur aux cellules situées à l’intersection de deux lignes

Table 5: étape 4 : Trouver la cellule de valeur minimum non-couverte par une ligne

Table 6: étape 4 : recaler la valeur pour les cellules basées sur cette valeur minimum

Soustraire toutes les cellules non-couvertes par la valeur 1, Ajouter les cellules situées à l’intersection de deux lignes par valeur 1

Table 7: étape 4 : déterminer le nombre minimal de lignes

Maintenant, le nombre minimal de lignes est de 4, Donc, on passe à l’étape 5

+1 -1 Étape 5 : Déterminer la solution optimale

Table 8: étape 5 : déterminer la solution optimale

Nœud 4, Nœud 1 ne pourrait pas ờtre choisi car l’affectation de ôOằ ne serait pas de cỏt minimal

Table 9: le cỏt minimal de G 1, G 2

Donc le cỏt de la meilleure association des nœuds de G 1 et G 2 est 48

Distance entre signatures de graphe ôgraph probing ằ

Une technique plus rapide pour évaluer la similarité des graphes consiste à extraire une description des graphes sous forme de vecteur de caractéristiques Cette représentation, appelée signature de graphe, proposée par [25], qui peut traiter des graphes contenant des centaines de milliers de nœuds et d'arcs en un temps linéaire Cette représentation permet de décrire des graphes étiquetés et orientés

Si G est un graphe étiqueté et orienté dont les étiquettes d'arcs appartiennent à l'ensemble fini {l 1 , l 2 , , l a } de taille a, alors on appelle structure d'arc d'un nœud donné le 2a-uplet d'entiers non négatifs {x 1 , , x a , y 1 , , y a } tel que le nœud possède exactement x i arcs entrants étiquetés l i , et y j arcs sortants étiquetés lj Dans ce contexte, deux types de signatures sont définies :

- Probe1(G) : un vecteur dont qui rassemble les nombres de sommets partageant la même structure d’arcs, pour toutes les structures d'arcs rencontrées dans le graphe

- Probe2(G) : un vecteur dont chaque composante est associé à une étiquette d'arc qui représentant le nombre d'arcs ayant à une étiquette li

Figure 1: La distance entre signatures de graphe GP, (a) les graphes non orienté, sans étiquetage, (b) les graphes orientés, sans étiquetage, (c) les graphes étiquetés, orientés À partir de ces signatures et en se basant sur la norme L1, la distance entre signatures de graphe ô GP ằ (entre deux graphes G1, G2) est dộfinie par :

GP (G 1 ,G 2 ) = L1(Probe1(G 1 ), Probe1(G 2 )) +L1(Probe2(G 1 ), Probe2(G 2 ))

La distance entre signatures de graphe ne respecte que la non-négativité, la symétrie, et l'inégalité triangulaire, mais pas l'unicité En d'autres mots, GP est une pseudo-métrique et deux graphes non isomorphes peuvent avoir les mêmes signatures

D'autre part, Lopresti et Wilfong [25] présentent une relation intéressante liant la distance d'édition et la distance entre signatures de graphe À un facteur 4 près, la distance entre signatures de graphe est un minorant de la distance d'édition quels que soient les graphes à comparer

Figure 2: La distance entre deux graphes selon ED et GP, (a) les graphes non orienté, sans étiquetage, (b) les graphes orientés, sans étiquetage, (c) les graphes étiquetés, orientés

Dans ce contexte, la topologie du graphe peut être en partie ignorée par compter le nombre d'occurrences d'un ensemble de sous graphes (du nom d'empreintes digitales ou signatures dans des contextes différents) de chaque graphe et de décrire les objets à comparer en tant que vecteurs

A partir de l'idée originale dans [22] et [24], le cỏt minimum correspondant entre deux ensembles d’éléments, les auteurs ont étendu ce modèle à des sous graphes, des objets plus complexes et plus discriminants.

Symbol spotting

En gộnộrale, le problốme ô Symbole Spotting ằ peut ờtre dộfini comme la localisation d'un ensemble de régions d'intérêt d'un document image, qui sont susceptibles de contenir une instance d'un certain symbole demandộ sans le reconnaợtre explicitement On parle alors de localisation de symboles en contexte, ce terme s’oppose directement à la reconnaissance de symboles pré-segmentés La reconnaissance de symbole est plus que jamais un problème qui est discuté dans la communauté scientifique [26] Il y a un grand nombre d'approches ont été proposées pour la reconnaissance des symboles Parmi ces méthodes, on distinguera celles fondées sur des descripteurs de formes [27-29] Ils sont plutôt calculés sur le contour de l’objet ou sur l'ensemble de l'objet Ils sont robustes contre le bruit et les occlusions, mais le document doit être clairement segmenté, ce qui est un problème, car les symboles sont souvent intégrés à d'autres couches graphiques.

D'autres approches se basent sur la structure avec l’utilisation de graphe [30-35] Parmi les structures de données, les graphes sont généralement adaptés à la représentation des symboles autorisant la restitution de la topologie des symboles Fréquemment, un symbole est décomposé en un ensemble de segments (ou de composantes connexes) et cet ensemble d’éléments et leur relations spatiales entre ces composants sont représentés par un graphe relationnel [voir section 5] Le problốme ô Symbole Spotting ằ est maintenant tournộ en une question de mise en correspondance de graphes ô Graph Matching ằ et dépend de la manière de la construction de graphe.

Dans notre cas, nous proposons une méthode de type structurel pour la représentation des symboles, c’est-à-dire, chaque nœud représente une composante connexe et il a été ộtiquetộ automatiquement par un algorithme de ô clustering ằ appliquộ sur un jeu de descripteur de forme et les arcs représentent les relations spatiales entre des composantes connexes (nous utilisons deux types d’étiquetage des arcs : les relations d'Allen bidimensionnelles et les distances entre deux régions)

Les méthodes de construction de graphe

De nombreuses méthodes de reconnaissance de graphiques ont été développées pour la reconnaissance des symboles graphiques, Ces approches sont catégorisées en plusieurs familles : 2D HMM [36], Pixels Caractéristiques [37-38], à base de graphe [30-35], Signature structurelle [39-40], Représentation hiérarchies de symbole [41-42] Dans cette partie, nous abordons les méthodes à base de graphe pour la reconnaissance des symboles graphiques.

D’abord, en 1996, B T Messmer and H Bunke [31] proposent de representer les symboles et les dessins par des graphiques attribués relationnelle Les nœuds présentent les lignes segmentées qui sont étiquetées par ses longueurs et les arcs établis entre les nœuds signalent une relation d'adjacence entre les segmentations Un arc est étiqueté par l’angle entre deux segments

Figure 3 : Graphiques attribués relationnelle, chaque nœud est comme une ligne segmentée, un arcs établis la relation d’adjection entre deux segmentations (source[14])

Josep Liadós et al présentent dans [32] une méthode en utilisant des graphes d'adjacence de régions (RAG) Dans ce cas, les auteurs utilisent des primitives de haut niveau extraits à la suite d’un processus de segmentation Une région fermée est identifiée à partir d’un prototype de symbole qui est utilisé comme un nœud du graphe L’arc lie deux régions adjacentes Le nœud est étiqueté en utilisant un descripteur de forme appliqué à la frontière de la rộgion concernộe (chain code) L’arc est ộtiquetộ par une chaợne commune entre deux régions adjacentes Une information sur la longueur et l’orientation de la région est aussi intégrée dans le graphe.

Figure 4: Chaque nœud est une région fermée L’arc lie deux régions adjacentes(source[32])

Dans l’article [33], les auteurs ont proposé un autre type pour créer des graphes, chaque nœud est comme une composante connexe Sur chaque composante connexe ils extraient les caractéristiques de la rotation et de la translation invariante fonctionnalités basées sur des moments de Zernike [43] Les nœuds étiquettent automatiquement par l’algorithme de clustering ô k-medoids clustering ằ [44] basộ des donnộes de ces caractộristiques Pour construire des arcs, ils utilisent la famille de graphe ô Voisinage basộ sur un seuil de distance ằ, c’est-à-dire chaque couple de points (centres de boợte englobant de composante connexe) se situant à une distance inférieure à un seuil t est liée par un arc dans le graphe associé.

Selon Rashid Jalal Qureshi et al [35] proposent une approche qui lie une méthode structurelle et une méthode basée sur la capture des relations topologiques entre les graphiques primitives Après l’étape prétraitement on obtient une vectorisation en quadrilatères qui représentent des lignes dans un dessin

Figure 6: vectorisation de quadrilatères, source [45]

Chaque nœud du graphe correspond à un quadrilatère Chaque quadrilatère a des caractéristiques comme la longueur (l) de l'axe médian, les angles des deux vecteurs (v1, v2), la largeur de chaque côté (w1, w2) et une zone d'influence Tous les arcs sont également associés à une étiquette en représentant le type de la relation topologique (L- jonction, S-jonction, jonction en T, X-intersection ou P-parallélisme) qui existe entre les deux quadrilatères voisins.

Figure 7: La zone influence de quadrilatère et le graphe correspondant, source [45]

Et voici un exemple de construction d’un graphe à base cette approche

Figure 8: exemple de construction d’un graphe basé sur les relations topologique, source [35]

Les methodes de mise en correspondances des graphes

Cette approche permet de trouver un isomorphisme de sous-graphe à partir d'un symbole pour un dessin sur une représentation compacte de la base de données du symbole.

L’idée principale de cette approche est de trouver les sous-structures communes entre les symboles et afin de représenter les symboles en termes de sous-structures De ce fait, le symbole est divisé en composants Le plus petit composant étant une simple ligne Pour chaque composant, on trouve des isomorphismes de sous-graphe entre ce composant et le dessin Le résultat de cette application est ensemble de sous-graphes isomorphes tel que son cout d’édition soit inférieur une valeur seuil trecog

La fonction de cỏt pour des opérations d’édition est définie comme suit :

- Le cỏt de substitution d’un angle α 1 à un angle α 2 est (α 1 – α 2 ) 2

- Le cỏt d’insertion d’un arc avec un angle α 1 entre deux lignes avec la distance d et angle α 2 est (α 1 – α 2 ) 2 ∗ d

- Le cỏt d’insertion d’un nœud dans le graphe de dessin est comme un variable constante de 3

- Le cỏt de fusion de deux nœuds qui représente deux lignes segmentées en un seul nœud (qui représente une segment de droite) est comme une variable constante de zéro.

Cette approche trouve des sous-graphes isomorphes tolérant à l’erreur entre le graphe model et le graphe d’entrée L'isomorphisme est calculé en fonction du cỏt minimum de séquence d’édition pour transformer un RAG dans l'autre en définissant trois fonctions de cỏt :

Le cỏt de substitution : substitution d'un noeud rM (région modèle) par un nœud rI (région d’entrée), noté que rM → rI Le cỏt de cette opération est calculée en fonction de la chaỵne de modifier la distance entre deux chaines

Le cỏt de changement de structure (Shift cost) : pour mesurer la préservation de la structure d’inter région.

Le cỏt d’échelle (scaling) : pour préserver le facteur d'échelle lorsque d’une nouvelle région est intégrée dans la mise en correspondance.

L’avantage de cette approche est capable d’effectuer la correspondance entre les graphes dégradés en un temps de calcul proche du polynomial malgré que la complexité théorique reste exponentielle On peut trouver la solution en quelques secondes pour les modèles graphiques à moins de 10 régions et la contribution des graphes avec quelques centaines de régions.

L'idée principale de cette méthode est de détecter les parties du graphique qui peuvent correspondre à des symboles sans connaissance sur le type du document De tels nœuds et les arcs constituent le symbole de germe ôsymbol seeds ằ Ensuite, les germes seront analysés et regroupées pour générer des sous-graphes qui correspondent potentiellement à des symboles dans le document image.

Pour comparer deux graphes étiquetés avec des attributs numériques sur les nœuds et des arcs, ils proposent de calculer le score de similarité entre deux graphes (Mp) :

Avec m est le nombre total de nœuds correspondants, n est le nombre total des arcs entre eux ωi, ω’j sont les poids associộs à la division ô split ằ de la i-ốme et j-ốme nœud dans le graphe G et G' respectivement ΔV i (ΔE j ) correspond à la distance entre deux nœuds (arcs) mappé, normalisées entre 0 et 1.

Il propose sept hypothèses (Les symboles sont composés des petits segments; Les segments constituant un symbole ont des longueurs comparables; Deux segments successifs avec un angle relatif loin de 90° ont une probabilité plus élevée de faire une partie de symbole; Les symboles sont souvent composées de segments parallèles; Un symbole est rarement liée à de plus de 3 autres segments; La plus courte des boucles sont souvent correspondant à des symboles) [page 4, 33] pour construire le système de la reconnaissance de symbole graphique Il fonctionne bien seulement avec des documents graphiques : circuits électroniques, la logique des diagrammes et des cartes d'architecture

Les documents contenant des symboles qui ne respectent pas ces hypothèses ne peuvent pas être analysées à l'aide du système proposé

Cette approche utilise l'algorithme FSG [50] pour rechercher des sous-graphes fréquents

Ces sous-graphes fréquents sont ensuite exploités pour construire une représentation des images de document à base de sacs de symboles.

Il définie une distance permettant de comparer ces représentations Considérons deux images de documents A et B dont les représentations sont A = (a1, a2, , at) et B = (b1, b2, , bt) ó t est le nombre total de symboles du lexique constitué par l'étape de recherche des sous-graphes fréquents La mesure d (A, B) définie par

Représente une mesure de similarité basée sur le cosinus des deux représentations En effet, lorsque les vecteurs des représentations de A et B ont la même orientation, ce qui signifie que les poids de chacun des symboles sont proportionnels, alors d (A, B) = 1 À l'inverse, lorsque d(A,B) = 0, comme les poids sont positifs ou nuls, cela signifie que les deux documents ne partagent aucun symbole en commun.

Ses travaux proposent une nouvelle approche pour la classification et l'indexation d'images de document Cette approche utilise des techniques de fouille de données pour l'extraction de connaissances.

Les résultats sont assez bon et montrent également montré l'approche permettait de réaliser une indexation des images à partir des symboles présents, alors même que ces symboles sont connectés à d'autres éléments

Notre approche propose un autre type pour construire des graphes : ô Voisinage basộ sur k plus proches voisinsằ Chaque nœud est comme une composante connexe Sur chaque composante connexe nous extrayons des caractéristiques basées sur les moments de Hu et Shape Statistiques Les nœuds étiquettent automatiquement par l’algorithme de clustering ô k-Mean ằ basộ des donnộes de ces caractộristiques Les arcs sont ộtiquetộs automatiquement par les relations d'Allen bidimensionnelles ou la distance entre des régions Le problème reconnaissance de symbole est tourné en une question d’isomorphisme de sous graphe, afin de trouver les sous-graphes qui correspondent à des symboles graphiques Nous extrayons le graphe de plan en des sous-graphes de longueur l

Le résultat de notre application est ensemble de sous-graphes isomorphe en fonction de la distance entre les sous-graphes et le graphe de symbole requête (si la distance est inférieur une valeur seuil) Nous proposons une méthode de mise en correspondance de graphes fondée sur l’assignement de sous-graphes de longueur l pour calculer la distance entre deux graphes ô voir la section suivante ằ.

L’avantage de notre : L'utilisation des moments de Hu et Shapes statistiques assurent que deux composantes connexes (nœuds) situé dans le plan et le symbole sont même morphologies ce qui doit être même étiquetage (à corriger cette phrase grammatiquement)

De plus, l’étiquetage des arcs basé sur les relations d'Allen bi-dimensionnelles adaptées pour maintenir une invariance de la représentation aux transformations d'image.

Récaputulation des méthodes

Nœud Arc Distance Application specifique Complexité

- relation d'adjacence entre les segmentations

- cỏt d’édition : substitution, insertion, fusion le dessin Sous-linéaire

- chaợne de la frontière de région

- lié entre deux régions adjacentes

- chaợne commun entre deux régions adjacentes trois fonctions de cỏt : Substitution, Shift cost, le cỏt d’échelle dessinés à la main Exponentielle

- sans étiquetage score de similarité entre deux graphes circuits électroniques, la logique des diagrammes et des cartes d'architecture

- relation topologique (L- jonction, S- jonction, jonction en T, X- intersection ou P- parallélisme) mesure de similarité basée sur le cosinus des deux représentations

Electronique, schémas d'architecture, cartes d'ingénierie

- Voisinage basé sur k plus proches voisins

- les relations d'Allen bidimensionnelles ou la distance entre des régions méthode de mise en correspondance de graphes fondée sur l’assignement de sous- graphes basée sur la

- n1 est le nombre de composantes connexes

- n2 est le nombre de nœuds des sous-graphes d’ộdition ằ PMDED et basée sur le ô Graphe Probing ằ PMDGP

En conclusion, dans cette partie, nous avons présenté des exemples de familles de graphes qui sont dépendante du contexte dans lequel elles sont utilisées Donc chaque représentation est dédiée à une application particulière, il n'est pas possible de créer une application dans le cas gộnộral De plus, la faỗon d’ộtablir relations spatiales entre ces composants est différente, dans les cas de [31][35], les arcs établis entre les nœuds signalent une relations topologiques entre les primitives graphiques, et [34] basé sur un seuil de distance ou bien comme dans notre approche, le graphe est fondộe sur un ô Voisinage basộ sur k plus proches voisinsằ Dans la section suivante nous allons aborder le problốme de la correspondance de graphes fondée sur l’assignement de sous-graphes.

4 Une méthode de mise en correspondance de graphes fondée sur l’assignement de sous-graphes

Définition : Décomposition en sous-graphes

Figure 9: La décomposition en sous-graphes p1, p2, p3, p4 est des sous-graphes d’extractions de longueur 1 qui associés à chaque nœuds du graphe G

Soit G est un graphe attribué et ses étiquettes d'arcs appartiennent à l'ensemble fini {l 1 , l 2 , , l a } P est un ensemble de sous-graphes d’extractions de longeur l qui est associés à chaque nœud du graphe G Un sous graphe p est défini comme une paire , ó H i est l’ensemble des arcs ó leurs sommets terminés correspondants à partir d’un sommet racine

Dans ce sens, un sous-graphe reprộsente une information locale, une structure ô ộtoile ằ d’un nœud racine La correspondance de ces sous-graphes devrait conduire à un rapprochement de la correspondance de graphe Le sous-graphe d'extraction se fait par l'analyse de graphe qui est réalisable dans le temps linéaire par l’utilisation de la matrice d'adjacence Le sous-graphe de décomposition est illustré à la figure 9

La correspondance de sous-graphes

Soit G1 (V 1 , E 1 ) et G 2 (V 2 , E 2 ) deux graphiques attribués Sans perte de généralité, nous supposons que |P 1 | ≥ |P 2 | (P1 et P2 sont des ensembles de sous-graphes d’extractions de longeur l qui est associés à chaque nœud du graphe G 1 et G 2 ) Le graphe bipartite complet

G em (V em = P 1 ∪ P 2 ∪∆, P 1 × (P2 ∪∆)), ó ∆ représente une valeur vide de sous graphe La correspondance de sous graphes entre G 1 et G 2 sont définis comme la correspondance maximale de G em On définit la distance entre G 1 et G 2 , noté par PMD (G 1 , G 2 ) qui est le cỏt minimum pour apparier les sous-graphes de G 1 et G 2 en respectant la fonction de cỏt c (voir section 4.3) Cet assignement optimal induit une correspondance univalente des sommets entre G 1 et G 2 , telles que la fonction PMD: P1×(P2∪∆) →ℜ + 0 minimise le cỏt de la correspondance entre des sous graphes L’approximation se situe sur le fait que les sous- graphes appariés ne prennent en compte qu’une information locale, restreinte aux voisinages des nœuds La mise en correspondance des nœuds est seulement contrainte par l'hypothốse de voisinage ô proche ằ imposộes par la notion de sous-graphes Un exemple de la correspondance de graphes est proposé en la figure 10

Figure 10: à partir deux graphes G 1 , G 2 (a), on extrait des sous-graphes de longueur 1 (a), (b) Le graphe bipartite complet G em obtenu par P 1 et P 2

Le cỏt de fonction (c) pour la correspondance des signatures

Soit p 1 , p 2 sont deux sous-graphes, la fonction de cỏt peut être exprimée comme la somme des opérations de modifier pour changer p 1 en p 2 Dans le contexte spécifique de sous- graphes de longueur 1, la distance d’édition est appliquée sur des arbres contenant des symboliques En conséquence, l'ensemble des chemins d’édition en transformant p 1 en p 2 est relativement restreint Lorsque la distance d’édition de graphe est connue pour être NP- complet, son application à des sous-graphes de longueur 1 est applicable en temps linéaire en fonction de la cardinalité |p| La distance d’édition est une métrique, et la fonction de cỏt c est définie comme suit ∑

Avec γ ( p 1 , p 2 )désignant l'ensemble des chemins d’édition pour transformer p 1 en p 2 , et edit désigne la fonction de cỏt associée aux opérations de modification (e i ).

Sous graphe de longueur ι

Soit n1 est un nœud du graphe G = (V, E),

Le sous graphe G’(V’, E’) de longueur ι est obtenu à partir du nœud n1 par opération d’extraction soit : n1 ∈ E

V’ = {v | DEPTH (v, n1) < ι} avec DEPTH est la profondeur de v et n1 E’ = {(v1, v2) | v1, v2 ∈ V’ v1, v2 ∈ V,

(*)(**) pour éviter le cas (v1, v2) est un arc de G, et DEPTH (v1, n1) = ι , DEPTH (v2, n1) = ι

Le sous graphe obtenu par l’opération d’extraction de nœud 1 qui ne contient l’arc (2, 3) malgré DEPTH(1, 2) = 1 et DEPTH(1, 3) = 1.

Voici c’est le pseudo codage pour extraire les sous graphe de longueur ι

Algorithm – Extraction Input: Graph representation of a graphic document (G), extract length ι

Output: a List of sub-graphs (SG) for all nodes of G(n1) begin new G’(V’, E’) V’ = {n1}

E’ = {φ} for i = 1 ι for all nodes of G’ (n2) begin

{n3} all nodes adjacent from node n2 E’ = E’ ∪ {(n2, n3)}

Figure 11: (a) un graph G(V, E), à partir du nœud 1, on extrait les sous graphes avec (b)longueur=1,

La valeur longueur est trouvée automatiquement à partir de graphe de requête, Dans la figure 11, la longueur minimale égale à 2, c’est-à-dire le sous graphe G’ obtenu par opération d’extraction de longueur ι est ộgalement du super graphe G Pour faire ỗa, on extrait le graphe G en les longueurs ι= 1 |V|, on obtient l’ensemble de sous graphe G’1,i, G’2,i, …, G’| V|,i, i = 1 |V|

Construction de matrice de cỏts

Dans [24], la matrice de cỏts est définie par l’énumération des cỏts de toutes les opộrations d'ộdition possible entre les nœuds de G 1 , G 2 Soit G 1 = (V 1 , E 1 , à 1 , ξ 1 ) est le graphe de source et G 2 = (V 2 , E 2 , à 2 , ξ 2 ) est le graphe d’objectif avec V 1 = (u 1 , , u n ) et V 2 (v 1 , , v m ) respectivement La matrice de cỏt C est définie comme :

Matrice 1 : La matrice de cỏt C

Où c i,j désigne le cỏt d'un nœud de substitution, c i,ε représente le cỏt de suppression d'un nœud c (u i → ε), et c ε ,j désigne le cỏt d'insertion d’un nœud c (ε → v j ) Enfin, une étape supplémentaire est indispensable pour tenir compte des arcs associés aux nœuds Une extension de la matrice des cỏts est nécessaire Pour chaque entité c i,j , c'est-à-dire à chaque la substitution d’un nœud, on additionne au cỏt de la substitution d'un nœud c (u i → v j ) le montant minimal des couts des opérations d’édition sur les arcs L'entité c i,ε , dénote le cỏt de la suppression d'un nœud, et le cỏt de la suppression de tous les arcs adjacents de u i est ajoutée, enfin l'entité c ε,j , dénote le cỏt de l’insertion d'un nœud, et le cỏt de toutes les insertions des arcs adjacents de v j est ajouté Cette définition dépend de la méthode

"distance d’édition", car l'idée était de proposer une approximation de la distance d’édition

Au contraire, dans notre approche, la matrice de cỏt C’ est une matrice de taille m×n.

Matrice 2: La matrice de cỏt C'

Avec c' i, j dộsigne le cỏt entre les deux signatures De cette faỗon, la matrice de cỏt obtenue à la taille plus petite (que celle de la matrice définie dans la matric 1) et d'autre part, comme la signature est définie comme un sous-graphe de la longueur "1", n’importe qu’elle distance entre arbre ou graphe peut être utilisée comme mesure de similarité [46], [16], afin de construire la matrice de cỏt Notre méthode ne s’appuie pas strictement sur la distance d’édition, on peut utiliser n’importe qu’elle distance entre graphe pour construire la correspondance de graphe Dans le [24], les auteurs proposent une approximation de la distance d’édition Dans le but de mettre en évidence cette différence de principe, une distance entre sous-graphes fondộe sur le ô Graph Probing ằ est aussi ộvaluộe Nous noterons, PMDED et PMDGP, respectivement une correspondance de sous-graphe basée sur la ô distance d’ộdition ằ et basộe sur le ô Graphe Probing ằ Quand on parle de PMD sans spécification, nous nous référerons, indépendamment de la fonction de cỏt (c) en cours d'utilisation.

Voici un exemple de calculer la correspondance de sous-graphe en représentant la matrice de cỏts Soit deux graphe G1 avec V 1 = (I, F, I)), et G 2 , V 2 = (L, 3, I) est comme dans la figure 12 Nous extrayons les sous-graphes de longueur ô 1 ằ pour les graphes G 1 , G 2 Nous signons que (L) est un sous-graphe de G 2 ce qui obtenue par opération d’extraction de nœud (L) Ensuite nous construisons la matrice de cỏts en calculant la distance d’édition entre les sous-graphes de G 1 , G 2 comme dans tableau 10.

Table 10 : La matrice de cỏts entre deux graphes G 1 , G 2

Puis nous utilisons l'algorithme hongrois avec les données entrées est cette matrice de cỏts pour trouver le cỏt de la meilleure association entre des sous-graphes de G 1 et G 2

Figure 12: un exemple de la correspondance de graphe, (a), (b) les sous-graphes d’extraction de longueur

1, (c) la correspondance de sous-graphe selon distance d’édition (ED)

Dans ce cas, la distance entre deux graphes G1, G2 est 5

5 Représentation de l’information contenue dans une image

Le domaine de la vision par ordinateur est une thématique scientifique qui tire partie des outils à base de graphe dans le but de faire de la reconnaissance de formes, de l’indexation ou du spotting d’information La question tourne alors en un problème d’extraction et d’organisation de l’information contenue dans une image afin de la structurer sous forme d’un graphe.

Constitution de l'ensemble des nœuds

La constitution de l’ensemble des nœuds est souvent une tache dépendante du domaine d’application Néanmoins, dans notre cas nous adressons ce problème d’une manière générique en faisant toutefois le distinguo entre les images couleurs et les images noir et blanc

Organisation de l’information Un graphe

Schéma 1 : le bloc fonctionnel de représentation de l’information contunue dans une image par un graphe

Voici le bloc fonctionnel de pas d’extraction d’information

Par la suite, nous spécialiserons notre représentation à base de graphe pour tenir compte de la spécificité que contiennent les documents techniques La partie concernant les images couleurs ne sera pas abordée dans ce rapport mais pourrait néanmoins être traitée implicitement en changeant le bloc fonctionnel d’extraction d’information par un algorithme de segmentation couleur (SMR).

Extraction des composantes connexes

Les composantes connexes sont des parties d'une image représentant une information de forme dans un document graphique noir et blanc

Figure 13: Analyse des composantes connexes

Étiquetage des composantes connexes

Extraction de caractéristiques

Dans le cas des images numériques, une fonction image (ou image) est une fonction I(x, y) Ν

Le moment géométrique mp,q d'une image I(x, y) ó p et q sont des entiers non négatifs et ó (p+q) est le rang (ou ordre) du moment est défini par :

Dans ce cadre, m0,0 définit l'aire de l'objet et peut être utilisé pour les normalisations relatives au changement d'échelle.

Le moment central μp,q est défini par : dy dx y x f y y x x p q q p , = ∫ + ∞ ∫ ( − 0 ) ( − 0 ) ( , )

− à avec (x 0 , y 0 ) le centre de gravité de I(x, y)

Le moment centré et normalisé η p, q peut être défini par :

Les moments centrés et normalisés sont invariants à la translation et au changement d'échelle.

Invariants de Hu a proposé six invariants aux transformations de rotation, translation et changement d'échelle basés sur des moments centraux du deuxième et du troisième ordre.

Statistique de la forme

Compacité (compactness) : elle est définie comme le rapport de l'aire d'un objet à l'aire d'un cercle avec le même périmètre.

La mesure prend la valeur de 1 pour un cercle.

Convexité (convexity): une mesure de la convexité peut être obtenue en faisant le ratio entre le périmètre d'un objet enveloppe convexe au périmètre de l'objet lui-même, qui est perimeter perimeter convex convexity Il prendra la valeur de 1 pour un objet convexe, et peut être inférieur à 1 si l'objet n'est pas convexe.

Rondeur (roundness) : Aussi, une mesure de la rondeur, à l'exclusion de ces irrégularités locales, peut être obtenu par le ratio de la surface d'un objet à l'aire d'un cercle convexe, avec le même périmètre, à savoir:

Comme avec la mesure de la compacité, elle est égale à 1 pour un objet circulaire et est inférieur à 1 pour un objet qui s'éloigne de la circularité. Élongation (elongation)

Une autre statistique souvent utilisé pour décrire la forme est une mesure de l'élongation, Cela peut être défini de multiples manières, dont l'un est obtenu en prenant le ratio de la longueur d'un objet à sa largeur: breadth length elongation Figure 14: Mesure de l'élongation, comme le ratio de la longueur-largeur

Une autre mesure de l'élongation est donnée par le rapport du deuxième ordre moments de l'objet selon ses axes majeurs et mineurs:

' 20 1 tan 2 2 1 cos sin 2 sin cos cos sin 2 cos sin à à à à à à à à λ à à à λ

Classification non supervisée des caractéristiques morphologiques

L'objectif commun de ces algorithmes de classification non supervisée est d'offrir une structuration d'un ensemble de données en regroupements cohérents (clusters) de telle sorte que les éléments appartenant à un même regroupement présentent une forte similarité et que les éléments appartenant à des regroupements différents présentent une forte dis- similarité.

En considérant un ensemble X d'objets

X = {x1, x2, , xn} ó xi = (xi, 1, xi, 1, , xi,d) T ∈ ℜ d avec d : dimension (caractéristiques)

La classification non supervisée partitionnelle cherche une K-partition de X

Organisation de l’information : Construction d’un Graphe de voisinage

Relations d'Allen bidimensionnelles

L'algèbre des intervalles d'Allen est un concept mathématique pour le raisonnement temporel qui a été introduit par James F Allen dans [Allen, 1983] Pour prendre en compte ces considérations et intégrer ces propriétés au sein des représentations structurelles dont les relations d'Allen permettent d'étiqueter les arcs modélisant les relations de voisinage, nous utilisons un jeu restreint de 5 relations comme dans la figure 16 : disjoint (disjoint), chevauche (overlaps), est inclus (during), contient (during inverse), égale (equals).

Figure 16: Jeu restreint de relations d'Allen

Afin d'assurer l'invariance à la rotation, ces relations bidimensionnelles sont établies par rapport à un système de coordonnées local à l'objet décrit Ce système de coordonnées est directement lié aux deux axes principaux d'inertie de l'objet tel qu'illustré sur la (Figure 17)

La figure 17 montre le résultat de la détermination de ce système de coordonnées pour quelques composantes connexes.

Figure 17: (a) deux composantes connesxes, (b) détermination du système de coordonnées lié aux composantes connexes (c) résultats des relations d'Allen bi-dimensionnelles (dj_o est l'abbréviation de disjoint_overlaps)

Intervalle basé sur les distances entre deux régions

Rappelle que notre problème est de trouver les localisations d’un symbole dans un plan, ils se composent de deux phrases : la phrase d’apprentissage pour le plan et la phrase de test pour le symbole A la sortie de ces phrases on obtient le graphe d’apprentissage et le graphe de test Pour ces étiquetages de nœuds et d’arcs sont plus similaire ont doit utiliser les variables communes entre deux phrases

Dans cette méthode de l’étiquetage des arcs basé sur les distances entre deux régions, nous calculons la valeur distance maximale entre des composantes connexes Elle est une valeur commune pour deux phases apprentissage et test, elle a été calculée dans l’étape d’extraction de l’information de phase d’apprentissage La distance entre deux composantes connexes est comme la distance entre ses centres de gravité.

D’après d’avoir la variable distance maximale (d-max), nous divisons de 0 à d-max en n intervalles L’étiquetage entre des arcs va déterminer basé sur sa distance et n intervalle

Figure 18: L’image à gauche : représentation de la distance entre deux composantes connexes, d-max =

39 Le graphe droit obtenu par n = 10 (n est le nombre d’intervalles)

Protocole

Test en classification

Dans notre contexte de classification de graphes, nous avons utilisé un classifieur de type K-

NN pour évaluer la performance de notre méthode de mise en correspondance de graphes fondée sur l’assignement de sous-graphes de longueur (l) en utilisant deux bases de données : Letter et Mutagénicité 2

Soit X = (x 1 , , x n ) est un ensemble des données d’apprentissage Nous supposons que X contient au moins un graphe avec son étiquette de classe c, 1

Ngày đăng: 06/12/2022, 15:45