SB
articles
Publication · Vision par ordinateur EUVIP · 2019 · 8 min de lecture

Détecter des anomalies d'écriture manuscrite par autoencodeur

Détecter qu'une portion de texte manuscrit a été écrite par une autre main — sans aucune annotation, sans set d'entraînement séparé du set de test. Plutôt que de reconnaître les caractères, j'apprends le **style** d'une écriture grâce à un autoencodeur convolutionnel, et laisse l'anomalie se trahir comme un outlier.

Le problème

Une signature stylistique sans référentiel

La graphologie repose sur des mesures fines : extension des hampes verticales au-dessus et en-dessous de la ligne de base, slope des lettres, fermeture des « o », rondeur des courbes. Mais ces critères changent d'un scripteur à l'autre — il n'y a pas de référentiel absolu.

Le cadre du problème : un seul échantillon de texte, potentiellement contenant une anomalie (un passage écrit par une autre main), pas d'annotation, pas de set d'entraînement séparé du set de test. C'est de la détection d'outliers en mode totalement unsupervised, où l'algo doit lui-même apprendre une métrique appropriée.

Pipeline

De l'image au signal d'anomalie

1
Image texte
baseline détectée
2
Tile split
tuiles locales
3
Radon π/2
projection partielle
4
Conv autoencoder
reconstruction
5
Erreur
score d'anomalie
Approche

Style appris, anomalie révélée

L'idée : ne pas reconnaître les caractères. Apprendre directement les caractéristiques stylistiques globales (forme, slope, fermeture), et laisser ce qui ne s'y conforme pas se signaler tout seul.

  • Tile splitting : l'image du texte est découpée en tuiles à partir de la ligne de base détectée par image processing. Chaque tuile contient une portion locale d'écriture.
  • Transformée de Radon partielle sur les tuiles (range π/2) : capture les variations stylistiques (slope, épaisseur, courbure) dans un espace plus abstrait que les pixels — c'est ce qui rend la méthode robuste aux variations de taille ou de position.
  • Autoencodeur convolutionnel : apprend à reconstruire les Radon projections des tuiles. Pour les tuiles outliers, la reconstruction est moins bonne — l'erreur de reconstruction sert de score d'anomalie.
  • Astuce d'entraînement : à chaque epoch, les tuiles sont permutées entre batchs. Les outliers, qui ne se reconstruisent pas bien, sont écartés ou repérés au fil des epochs. La discrimination émerge pendant l'entraînement, pas après.
Résultats

Ce que la méthode permet

Détection sans labels

Aucune annotation des outliers n'est nécessaire. La méthode est entièrement unsupervised, contrairement aux approches classiques de classification qui demandent un set de référence par scripteur.

Localisation spatiale

Les outliers ne sont pas seulement détectés comme « présents ou absents » : ils sont localisés dans l'image (quelle zone du texte est suspecte), grâce à la granularité des tuiles.

Robuste aux variations bénignes

Les variations naturelles d'un même scripteur (fatigue, encre, position) restent reconstruites correctement par l'autoencodeur. Seules les vraies variations stylistiques (autre main) sortent.

Validation sur compositions synthétiques

Tests sur des extraits manuscrits où on injecte des passages écrits par d'autres scripteurs — la méthode isole et localise les passages injectés.

Ma contribution

Ce que cette publication apporte

  • Reformulation du problème graphologique : passer de mesures hand-crafted (extends, slope, closure) à une représentation apprise par un réseau profond.
  • Détournement du shuffling batch-à-batch : le mécanisme habituel d'apprentissage devient un outil de discrimination, sans changer l'architecture.
  • Détection unsupervised + localisation : la combinaison des deux est rare en outlier detection — la plupart des méthodes donnent un score global, pas une carte.
  • Méthode transposable : applicable à d'autres tâches de détection unsupervised où l'anomalie est rare (intrusion detection, forgery detection, fraud).
Pour aller plus loin

Conférence & contexte

  • Publié à EUVIP 2019 (European Workshop on Visual Information Processing).
  • Travail mené pendant mon Master Recherche, MIA Laboratory · Université de La Rochelle.
  • Mots-clés : deep learning, handwriting, outlier detection, convolutional autoencoder, Radon transform.