• Aucun résultat trouvé

Schéma fonctionnel de la détection de l’authenticité d’un document numérisé

Pour aboutir à ce résultat, le système extrait les lettres "e" du document, comme il est le caractère le plus fréquent en langue anglaise. Ensuite, un ensemble de fonctionnalités de chaque groupe de caractères ("e") est extrait pour former un vecteur de caractéristique par division du document numérisé en blocs non superposés de taille N ×N pixels. On extrait alors un ensemble différent de caractéristiques de chacun de ces blocs. Chacun de ces vecteurs de caractéristiques sont ensuite testés et classés séparément en utilisant le classificateur SVM (Support Vector Machine), qui va décider si l’image du document numérisée est authentique ou altéré.

Chapitre 2. État de l’art 2.3. Détection de falsification sur les documents numérisés

z La méthode proposée par Romain et al[29] qui utilise des fonctionnalités intrinsèques du document, elle est basée sur la comparaison des formes des caractères (similarité ou dis-similarité des caractères). Plusieurs phase sont à considérer dans leur travail, il s’agit de :

+

La phase de pré-traitement au cours de laquelle les caractères sont extraits à l’aide de l’OCR. Ensuite, une arborescence est créée grâce aux données pour représenter la structure du document. Les objets au niveau supérieur représentent chaque ligne de texte du document. Les objets au niveau 2 représentent les mots qui forment les lignes du niveau 1. Enfin ces mots sont composés de caractères, qui sont les éléments les plus bas de la structure de données. Pour chaque élément, la relation de paternité est conservée afin de créer une structure arborescente permettant de déterminer, par exemple, à quel mot appartient un caractère. Pour chaque caractère, des informations telles que la classe alphabétique, le type de caractère (caractère alphabétique, nombre ou symbole) et le cadre de sélection sont mémorisées.

+

La phase de détection de caractères similaires est basée sur une comparaison de forme de caractère. Le résultat de la comparaison entre deux formes de caractère aetbest la distanceD(a,b) obtenu en traitant une différence entre leur vecteur de re-présentationVreprésenté par un vecteur dexéléments. La détection de fraude basée sur une description de forme de caractère repose sur trois hypothèses :

* Lorsqu’une distance D(a,b) entre les caractères a et b est égal à 0, alors ils sont exactement les mêmes et donc suspects.

* LorsqueD(a,b) est très faible (c’est-à-dire proche de 0), alors l’un des caractères est possiblement une copie de l’autre, mais légèrement modifié par le fraudeur (ajout ou suppression de pixels noirs ou bruit).

* Lorsque les distancesD(a,all) obtenues par la comparaison dea avec le reste des caractères de la même classe alphabétique, sont vraiment différentes de la dis-tance moyenne de cette classe, alorsaest probablement un faux caractère.

+

La phase de détection d’erreurs de conception pour détecter les imprécisions dans la structure du document, telles que l’alignement des caractères sur une ligne ou les tailles de caractères ou leurs positions dans le même mot. Un ensemble d’indices de falsification regroupé dans un vecteur de caractéristiques W est calculé pour chaque caractère présent dans le document :

+

La dernière phase, consiste à décider de l’aspect frauduleux ou non du document.

Pour y arriver, deux indicateurs sont considérés à savoir : les caractères qui pré-sentent une forte similarité ou à l’opposé les formes trop dissemblables et les ca-ractères qui rompent la continuité des caractéristiques du document. Chaque fois qu’un caractère est détecté comme appartenant à l’un de ces deux groupes, les in-formations sont stockées dans la structure de données. Un poids est ajouté à chaque

Chapitre 2. État de l’art 2.3. Détection de falsification sur les documents numérisés

caractère supposé faux en fonction de la situation. Par exemple, lorsque le caractère a été détecté comme étant frauduleux par les deux méthodes et que le mot auquel il appartient contient d’autres caractères potentiellement frauduleux, le poids est alors supérieur. Dans le cas où le caractère est détecté par une seule méthode, le poids sera inférieur.

z La méthode proposée parAbramova et al[30]. Pour construire un système adapté pour les CM sur l’image d’un document numérique, ils ont combinés les techniques d’OCR et et les techniques conventionnelles utilisées en générale dans les méthodes CMFD. La figure 2.5 illustre leur méthode d’analyse pour la falsification par CM sur les images de docu-ment. Elle est présentée sous forme de pipeline, ce qui signifie que chaque étape transmet ses résultats à la suivante et dépend du succès des étapes précédentes. La méthode propo-sée combine les principales techniques couramment utilipropo-sées en criminalistique d’images numériques et en reconnaissance des formes : identification de la source d’image, détec-tion de la falsificadétec-tion, et la technologie OCR. L’OCR sert d’étape précédente pour le flux de travail commun de la détection par CM, en tant que résultats de reconnaissance de caractères. Ils sont utilisés comme paramètres d’entrée dans les étapes de traitement ty-piques des méthodes originales de CMFD. Ceci est destiné à résoudre le problème de similitude intra-glyphe ainsi que d’accélérer le processus de détection en limitant l’espace de recherche.

Chapitre 2. État de l’art 2.3. Détection de falsification sur les documents numérisés

FIGURE2.5–Schémamontrantlecadred’analysepourladétectiondefauxparCMdanslesimagesdetextenumérisées[30]

Chapitre 2. État de l’art 2.3. Détection de falsification sur les documents numérisés

Dans la méthode décrite ci-dessus, on peut noter cinq grandes étapes à savoir :

+

Pré-traitement

L’image peut être aussi biaisée soit par un bruit, soit par une inclinaison ou une mau-vaise orientation. Plusieurs étapes sont donc nécessaires pour cette phase à savoir : la détection ou correction de l’inclinaison, l’amélioration de l’image, l’élimination du bruit, la détection des contours, la binarisation, le seuillage pour supprimer le fond contenant des scènes et/ou filigranes, etc. La phase de pré-traitement est donc essen-tielle pour augmenter les performances de la reconnaissance de l’OCR et atteindre un taux élevé de reconnaissance en utilisant des algorithmes de pré-traitement efficaces ce qui rendent le système OCR plus robuste et fiable.

+

Reconnaissance optique de caractères

Trois raisons justifient l’incorporation des techniques de reconnaissance optique des caractères dans le système proposé. Tout d’abord, les systèmes de OCR sont conçus pour analyser automatiquement la structure d’une version du document et le seg-menter en régions sans texte (par exemple, l’arrière-plan) et les composants connec-tés (par exemple, au niveau des lignes de texte, des mots ou desglyphes3 indivi-duels). Deuxièmement, les méthodes CMFD peuvent grandement bénéficier de la technique de reconnaissance de manière à ce que les tailles de police, dans lesquelles les symboles sont composés dans l’image de texte, puissent être estimés et utilisés pour la détermination de la taille optimale des blocs.

+

Détection de la falsification par CM

Le travail CMFD présenté dans ce cadre d’analyse est similaire à ceux qui sont uti-lisés pour l’inspection des images numériques de scènes naturelles. Cependant, cer-tains aspects ont été reconsidérés afin de l’adapter aux besoins d’analyse des images de documents texte. Les méthodes CMFD basées sur des blocs reposent sur les ré-sultats de sortie du processus d’OCR. Ils fonctionnent sur l’image d’entrée de texte numérisé, pré-traitée conformément à la représentation choisie, sur la subdivision de l’image en block et sur l’extraction des caractéristiques. La taille de police des carac-tères du document, identifiée à l’étape OCR, joue un rôle de premier plan dans la spécification des tailles de blocs respectives. Cependant, le choix de la taille du bloc pour une taille de police spécifique reste une question majeure et nécessite d’autre recherche dans ce sens.

+

Analyse de l’arrière-plan

En ce qui concerne la détection de faux dans les zones d’image sans texte, le cadre d’analyse propose l’utilisation de techniques de scanner et de criminalistique sur pa-pier au lieu des techniques conventionnelles des approches CMFD. Comme il ressort

3Un glyphe est une représentation graphique d’un caractère (glyphe de caractère) ou d’un accent (glyphe d’ac-cent)

Chapitre 2. État de l’art 2.3. Détection de falsification sur les documents numérisés

des résultats empiriques, les ensembles de fonctionnalités sont généralement sen-sibles aux zones à fond blanc rendant ainsi les techniques CMFD impropres à l’ap-plication dans ce contexte. Si une image douteuse a été enregistrée dans un fichier compressé l’analyse de compatibilité au format JPEG peut révéler le fait que la zone d’arrière-plan a été copiée et utilisée comme superposition pour masquer certains contenus d’image indésirables.

+

Etape de décision

Le processus de détection de falsification CM et l’analyse de l’arrière-plan produit une carte de détection binaire en tant que sortie décrivant les doublons d’image iden-tifiés. Comme le système prévoit l’analyse séparée du contenu et de l’image sans zone de texte, ces masques binaires doivent être combinés dans l’étape de décision afin de construire une carte de détection complète. Cependant, il convient de noter que la génération des cartes de détection et leur fusion sont associées à une perte partielle d’informations en ce sens que les cartes de détection ne permettent pas de contrôler la relation correcte entre un glyphe copié et son homologue d’origine.

Conclusion

Les diverses approches présentées ci-dessus, sont autant de méthodes permettant d’aborder le problème de détection de falsification de documents scannés. La conception d’une approche robuste nécessite donc de cerner les forces et faiblesses de chaque approche. Il convient de mentionner que l’état de l’art présenté ici ne soit pas considéré complet, car il existe d’autres méthodes pertinentes disponibles qui peuvent améliorer les performances de détection.

On ne saurait prétendre avoir exploré tout l’état de l’art étant donné qu’il foisonne de pleins de méthodes de détection de falsification d’image. Ces méthodes bien qu’ils soient efficaces présentes des limites en particulier pour les documents numérisés. Pour les méthodes propo-sées pour les documents numérisés, on remarque elles impliquent l’utilisation des OCR. La technique d’OCR n’est pas fiable pour les types de documents numérisés que notre système prendra en compte car certains peuvent contenir des tableaux, des photos, etc. Ces contraintes réduisent la performance des OCR. On peut aussi envisager l’utilisation des techniques de deep learning ou du marching learning pour notre travail. Cependant, ces méthodes sont encore à une étape embryonnaire à cause du manque de base de données d’image de document numé-risé. Quant aux méthodes utilisant les points clés, elles ne sont pas adaptées à notre système.

Elles sont plus efficaces sur les images de scène car ces dernières contiennent souvent des ob-jets, des différences de forme, etc. Nous nous pencherons donc sur les méthodes basées sur les blocs car elles nous permettrons d’analyser l’image pixel par pixel afin d’identifier celles qui se ressemblent.

Chapitre 3

Materiels et méthodes

Introduction

La mise en œuvre d’un système de détection de falsification doit suivre un processus bien précis et nécessite l’utilisation des techniques spécifiques pour le traitement numérique des images. Dans ce chapitre, nous abordons les outils nécessaires et indispensables pour accomplir le travail et aussi la méthode à suivre pour atteindre un résultat satisfaisant.

3.1 Choix du matériel

3.1.1 Choix des images à utiliser

Une base de données d’images de document texte n’étant pas disponible, nous avons donc créé notre base de données en utilisant les images des documents originaux disponibles à notre niveau et d’autres téléchargés sur le net. Nous avons utilisé tout type d’images texte à savoir les images contenant rien que du texte et d’autres avec des tableaux avec les spécifications qui sont présentées dans le tableau 3.1.

Chapitre 3. Materiels et méthodes 3.1. Choix du matériel

TABLEAU3.1 – Caractéristiques des images utilisées.

Documents

72 dpi PNG et JPG RGB certains

do-cuments

Nous avons utilisé trois (03) types de documents originaux, chaque type étant falsifié cinq (05) fois, ce qui fait au total 30 documents.

Pour construire l’ensemble de données de fausses images par CM, nous avons utilisé le logiciel Photoshop en raison de son potentiel élevé en matière de retouche, de traitement des images et des documents. Pour créer les images, on a procédé comme suit :

â numériser les documents en couleur avec une résolution d’au moins 72 dpi ;

â créer les faux documents en supprimant certains mots ou caractères et en les remplaçant par d’autres du même document.

Ainsi donc, notre approche de détection de faux dans l’image forgée se basera essentielle-ment sur les images de docuessentielle-ment texte que nous avons altéré.

3.1.2 Choix des outils d’implémentation

Anaconda : est une distribution gratuite et open source des langages de programmation python et R. C’est un moyen simple pour le développement des applications pouvant utiliser la science des données, l’apprentissage automatique, le traitement des données à grande échelle, l’analyse prédictive que ce soit sur Linux, Windows et Mac OS X. Il simplifie la gestion et le déploiement des packages et les versions de paquets sont gérées par le système de gestion de paquet conda [31].

OpenCV(pour Open Computer Vision) : est une bibliothèque graphique libre, initialement développée par Intel, spécialisée dans le traitement d’images. OpenCV a été conçu pour l’effi-cacité des calculs et se concentre sur les applications en temps réel. Il est gratuit pour un usage académique et commercial. Il a des interfaces C ++, Python et Java et supporte les systèmes

Chapitre 3. Materiels et méthodes 3.2. Méthodologie de l’étude

d’exploitation comme Windows, Linux, Mac OS, iOS et Android [33].

PyCharm : est un environnement de développement intégré utilisé pour programmer en Python. Il offre l’analyse de code, un débogueur graphique, la gestion des tests unitaires, l’in-tégration de logiciel de gestion de versions, et supporte le développement web avec Django, Flask et autres [34].

Flask: est un framework open-source de développement web en Python. Son but principal est d’être léger, afin de garder la souplesse de la programmation Python, associé à un système de templates. Il est distribué sous licence BSD c’est à dire libre d’utilisation [35].

HTML(HyperText Markup Language) : est le langage de balisage conçu pour représenter les pages web. C’est un langage permettant d’écrire de l’hypertexte, d’où son nom. HTML per-met également de structurer sémantiquement et logiquement et de per-mettre en forme le contenu des pages, d’inclure des ressources multimédias dont des images, des formulaires de saisie et des programmes informatiques. Il permet de créer des documents interopérables avec des équipements très variés de manière conforme aux exigences de l’accessibilité du web [36].

CSS(Cascading Style Sheets) :est un langage qui décrit le style d’un document HTML. Il sert à mettre en forme des documents web. Grâce aux propriétés d’apparence (couleurs, bordures, polices, etc.) et de placement (largeur, hauteur, côte à côte, dessus-dessous, etc.), le rendu d’une page web peut être intégralement modifié sans aucun code supplémentaire dans la page web [37].

Bootstrap: est une collection d’outils de développement utiles à la création du design (gra-phisme, animation et interactions avec la page dans le navigateur ...) de sites et d’applications web. C’est un ensemble qui contient des codes HTML et CSS, des formulaires, boutons, outils de navigation et autres éléments interactifs, ainsi que des extensions JavaScript en option. Elle sert à créer des projets web mobiles, adaptés à tout type d’écran [38].

3.2 Méthodologie de l’étude

Notre méthode, s’appuie sur les approches précédemment présentées dans l’état de l’art, tout en l’adaptant à notre cas d’étude. Elle répartie en quatre (04) étapes. La figure 3.1 résume les étapes que suit notre méthode.

Chapitre 3. Materiels et méthodes 3.2. Méthodologie de l’étude

FIGURE3.1 – Schéma décrivant notre méthode

3.2.1 Pré-traitement

Pour réussir la détection une phase de pré-traitement s’impose pour permettre de rendre l’image favorable à l’étape au traitement. Elle permet d’améliorer la qualité de l’image et autres éléments pouvant perturber le bon déroulement des transformations à appliquer par la suite.

Dans notre méthode, l’étape de pré-traitement est subdivisée en trois (03) phases : 3 convertir l’image en niveaux de gris ;

3 diviser l’image en blocs superposés ; 3 appliquer HDWT à chaque bloc.

3.2.1.1 Conversion de l’image en niveaux de gris

Cette phase consiste à convertir les images en niveau de gris afin de rendre la valeur des composantes en couleur identique. Pour la transformation d’une image couleur en une image en niveaux de gris, on ne prend généralement pas la moyenne arithmétique des intensités de couleurs fondamentales, mais une moyenne pondérée.

La formule standard donnant le niveau de gris en fonction des trois composantes est :

gris=int(round(0.299rouge+ 0.587vert+ 0.114bleu)) (3.1) 3.2.1.2 Division en blocs superposés

Au cours de cette phase, on divise l’image en blocs superposés de taille fixe. Cette approche est appelée convolution. Soit une imagef de tailleM x N, soitL x Lla taille du bloc et soitBij un bloc, on a :

Bij(x, y) = f(x+j, y+i),

où x, y ∈ {0,· · · , L−1}, i∈ {0,· · · , M−1} et j ∈ {0,· · · , N −1}[10] (3.2)

Chapitre 3. Materiels et méthodes 3.2. Méthodologie de l’étude

Par conséquent, on obtientNblocksde sous-blocs superposés à partir de l’image entrée.

Nblocks = (M −L+ 1) x (N−L+ 1) (3.3)

La figure 3.2 nous montre le processus de subdivision de l’image en sous bloc de taille 3x3. On a une image de taille 6x6 représentée par les intensités de pixels en niveau de gris. En considérant

FIGURE 3.2 – Divison en bloc superposé de taille 3x3. (a) On a une image6x6représentée par ses pixels en niveau de gris. (b) Représente le premier bloc 3x3 obtenu après l’opération de division. (c) Représente le deuxième bloc obtenu après l’opération de division.

la figure 3.2, le nombre de blocs serait égal à :

Nblocks = (6−3 + 1) x (6−3 + 1)

= 16 (3.4)

On aura au total16 blocsaprès la subdivision.

3.2.1.3 HDWT

Le HDWT est une technique de filtrage qui permet de réduire la taille de l’image à chaque niveau. Le principal objectif de la transformation en ondelettes est de décomposer un signal en une fonction de base fixe. Ces fonctionnalités sont appelées ondelettes. Les ondelettes mères sont définies comme les ondelettes obtenues à partir d’un modèle unique par décalage et dila-tation. DWT divise le signal en parties basse et haute fréquence. La basse fréquence contient les informations brutes du signal et la partie haute fréquence contient les informations concernant les composants de bord.

L’algorithme HDWT utilise le système de codage sous-bande pour décomposer une image dans un ensemble de différentes sous-bandes de fréquence. Comme illustré aux figures 3.3 et 3.4, la taille de chaque sous-bande est un dixième de l’image d’origine dans le domaine

spa-Chapitre 3. Materiels et méthodes 3.2. Méthodologie de l’étude

tial. Les quatre (04) différentes sous-bandes peuvent être classées dans les sous-bandes basses, moyennes et hautes fréquences. La sous-bande basse fréquence d’une image contient plus d’énergie que les autres sous-bandes. Les coefficients sont les plus fragiles : si l’un d’entre eux est manipulé, on peut détecter les modifications effectuées sur l’image. Cependant, si les coef-ficients dans le milieu et/ou sous-bandes haute fréquence étant modifiées, les modifications de l’image du domaine spatial seront imperceptibles aux yeux de l’homme. Par conséquent, cette caractéristique est généralement exploitée pour cacher un message secret.

FIGURE3.3 – Processus de décomposition de HDWT à un niveaux

Chapitre 3. Materiels et méthodes 3.2. Méthodologie de l’étude

(a) (b)

FIGURE3.4 – Décomposition de HDWT à un niveau d’une image de document text

La transformation discrète en ondelettes de Haar en deux dimensions d’une image Mx N oùMetNsont des entiers positifs est définie comme suit :

B =WMAWNT (3.5)

Le blocHN/2 est appelé le bloc des moyennes et le blocGN/2est appelé bloc des détails.

Chapitre 3. Materiels et méthodes 3.2. Méthodologie de l’étude

Notons que l’image transformée B = WMAWNT est composée de quatre blocs. On suppose

Notons que l’image transformée B = WMAWNT est composée de quatre blocs. On suppose