paint-brush
Comment traiter des dessins techniques avec l'IApar@olegkokorin
Nouvelle histoire

Comment traiter des dessins techniques avec l'IA

par Oleg Kokorin5m2024/08/29
Read on Terminal Reader

Trop long; Pour lire

Les dessins techniques sont des documents complexes et non structurés, ce qui les rend difficiles à traiter avec les moyens traditionnels de gestion des documents numériques. L’IA, en revanche, promet une extraction de données rapide et précise, en particulier les outils d’IA prêts à l’emploi qui semblent se concentrer sur le traitement des dessins techniques. Dans la pratique, cependant, les choses ne sont pas aussi bonnes qu’elles le paraissent : les dessins techniques représentent un défi de taille pour les systèmes d’IA préfabriqués en raison de leur nature non structurée. Dans cet article, je vous explique comment l’IA peut être utilisée pour créer un système de traitement de dessins techniques véritablement fonctionnel et très précis.
featured image - Comment traiter des dessins techniques avec l'IA
Oleg Kokorin HackerNoon profile picture
0-item

Après avoir travaillé sur plusieurs projets de traitement de dessins techniques, ce n'était qu'une question de temps avant qu'un projet d'automatisation de dessins techniques ne se présente à nous. Qu'est-ce qu'il y a de si spécial dans les dessins techniques, demandez-vous ?


Les annotations de dimensionnement et de tolérancement géométriques (GD&T) sont la solution. Ces étiquettes gênantes représentent souvent un défi lors du traitement et de l'extraction de données à partir de dessins techniques en raison de leur position sur une page et de leur structure globale. Mais ne vous inquiétez pas, je suis ici pour vous expliquer comment nous avons réussi à traiter les annotations GD&T sur les dessins techniques avec l'IA. Commençons par le début.

Traitement des documents non structurés

Tous les documents numériques peuvent être séparés en 2 types : structurés et non structurés :


  • Les documents structurés suivent une structure prédéfinie, ce qui les rend faciles à traiter et à analyser avec l'IA. Les documents tels que les formulaires, les factures, les reçus, les enquêtes et les contrats sont tous des exemples de documents structurés.


  • En revanche, les documents non structurés manquent d'une organisation cohérente, ce qui les rend intrinsèquement difficiles à traiter automatiquement. Les journaux, les rapports de recherche et les rapports commerciaux sont des exemples de documents non structurés.


Comme vous l'aurez deviné, les dessins techniques sont un exemple classique de document non structuré : malgré le respect d'un ensemble strict de normes, chaque dessin est différent des autres car ils manquent de structure rigide. Associés à un mélange de données textuelles dactylographiées et manuscrites, de symboles spéciaux, de feuilles de calcul complexes et de diverses annotations, les dessins techniques présentent un véritable défi pour l'extraction automatique des données.


La nature complexe des dessins techniques en fait des candidats parfaits pour l'extraction de données par l'IA. En fait, l'utilisation de modèles neuronaux pour détecter et extraire diverses données des dessins est le seul moyen d'automatiser leur traitement. Les modèles de vision par ordinateur modernes et une approche intelligente du développement de produits peuvent donner lieu à un outil puissant pour le traitement rapide de tout dessin technique.

Un problème avec les outils prêts à l'emploi

Une recherche rapide sur Google vous montrera au moins quelques solutions pour le traitement des dessins techniques. Presque toutes offrent de nombreuses fonctionnalités et promettent un traitement rapide et précis de données complexes.


A première vue, cela peut paraître très prometteur : payer un abonnement mensuel pour obtenir des dessins techniques de haute précision. Mais dans la pratique, les choses ne se passent pas toujours aussi bien.


Les outils prêts à l’emploi ont souvent du mal à détecter et à traiter les éléments pivotés, car leurs algorithmes ne sont formés que pour traiter le « dénominateur commun », qui, dans notre cas, est un dessin technique avec des étiquettes et des annotations positionnées horizontalement.

L'utilisation d'une solution prête à l'emploi ne convient donc qu'à ceux dont les dessins sont relativement simples et ne contiennent que des données standard. Tout écart par rapport au « dénominateur commun » constituera un défi pour un outil prêt à l'emploi.

Extraction de caractéristiques à partir de dessins techniques

Cette situation exacte est arrivée à l'un de nos clients : les solutions de traitement de dessins techniques disponibles sur le marché ne répondent pas aux besoins de traitement de dessins complexes ou non standard, ce qui leur donne des résultats de reconnaissance de données médiocres.


Les annotations GD&T contiennent de nombreuses informations très importantes qu'il est essentiel d'extraire du dessin pour un traitement ultérieur, mais leur position sur la page, dans notre cas, leur positionnement à un angle, jette un obstacle au processus d'analyse des dessins par un outil d'IA prédéfini.


C'est là qu'entre en jeu le développement d'IA personnalisé : les modèles d'IA formés pour détecter et extraire des informations de votre document spécifique peuvent résoudre (presque) tous les défis auxquels un outil prêt à l'emploi est confronté.


Voici comment nous avons résolu l’un des défis du traitement des dessins d’ingénierie avec le développement de modèles d’IA personnalisés : l’extraction d’annotations GD&T placées sous un angle.

Étape 1 : Détection de la position de l'annotation

La première étape consiste à localiser la position des annotations sur le dessin. Les modèles d’IA peuvent être formés pour détecter l’emplacement des annotations indépendamment de leur position ou de leur angle de rotation.


Remarque : les documents multipages nécessitent une étape supplémentaire consistant à diviser le document en pages et à différencier les différents dessins techniques. Il en va de même pour les documents qui incluent plusieurs dessins sur chaque page : vous devez d'abord exécuter un modèle pour détecter chaque dessin et les extraire du document.

Étape 2 : Détecter l’angle de rotation

Voici la partie importante : détecter la manière dont l'annotation est tournée. Le modèle d'IA doit calculer l'angle de rotation et faire pivoter l'annotation pour la rendre horizontale. Les fichiers PNG découpés sont ensuite transmis pour un traitement ultérieur :

Étape 3 : Extraction de données à partir d'annotations

Une fois toutes les annotations détectées, pivotées et extraites du dessin, elles sont exécutées via un moteur de détection de symboles. Tesseract est un bon choix pour cela car il offre une grande précision de reconnaissance et peut fonctionner avec du texte multiligne et des symboles de différentes hauteurs.


Tout d'abord, vous devez trouver la zone exacte où se trouve le texte pour améliorer le processus de reconnaissance des symboles. Je vous recommande d'utiliser OpenCV car il gère très bien ces tâches et est relativement facile à utiliser. Ensuite, la zone de texte détectée est transmise au moteur OCR pour extraire tout le texte et les symboles.

Étape 4 : Analyse des données

Un ensemble de lettres, de chiffres et de symboles doit être interprété pour fournir des données « digestes » que les humains (ou un système de gestion des données) peuvent comprendre et traiter. Les symboles détectés sont séparés en groupes formant les dimensions, les tolérances, les ajustements et les rayons des pièces.

Étape 5 : Gestion des données

Les données extraites par un système d'IA doivent être extraites en fonction de vos besoins :


  1. Fichiers JSON : Parfait pour importer les données dans un logiciel existant,
  2. Fichiers .XLSX : un format de données facile à lire, parfait pour les tests système ou les petits lots de données.
  3. Post-traitement : les données sont également traitées pour les envoyer directement vers un système de traitement de documents numériques ; idéal pour ceux qui recherchent une solution complète.

En résumé

  1. Bien que le marché regorge d’outils d’IA pour le traitement des documents, ils ne gèrent bien que les fichiers simples. Tout écart par rapport à la « norme » est mieux traité avec une solution personnalisée.


  2. Les modèles d’IA personnalisés peuvent gérer pratiquement toutes les tâches d’extraction de données, à condition d’adopter l’approche appropriée et de disposer des compétences de développeur appropriées.


  3. Les dessins d'ingénierie ne sont pas les seuls dessins techniques sur lesquels j'ai écrit, consultez comment l'IA peut aider à traiter les dessins d'architecture ici .