paint-brush
Cómo procesar dibujos de ingeniería con IApor@olegkokorin
Nueva Historia

Cómo procesar dibujos de ingeniería con IA

por Oleg Kokorin5m2024/08/29
Read on Terminal Reader

Demasiado Largo; Para Leer

Los dibujos de ingeniería son documentos complejos y no estructurados, lo que dificulta su procesamiento con los medios tradicionales de gestión de documentos digitales. La IA, por otro lado, promete una extracción de datos rápida y precisa, especialmente las herramientas de IA listas para usar que parecen enfocadas en el procesamiento de dibujos de ingeniería. Sin embargo, en la práctica, las cosas no son tan buenas como parecen: los dibujos de ingeniería presentan un desafío significativo para los sistemas de IA prefabricados debido a su naturaleza no estructurada. En este artículo, comparto cómo se puede utilizar la IA para crear un sistema de procesamiento de dibujos de ingeniería verdaderamente funcional con alta precisión.
featured image - Cómo procesar dibujos de ingeniería con IA
Oleg Kokorin HackerNoon profile picture
0-item

Después de haber trabajado en varios proyectos de procesamiento de dibujos técnicos, era cuestión de tiempo hasta que se nos presentara un proyecto de automatización de dibujos de ingeniería. ¿Qué tienen de especial los dibujos de ingeniería?, te preguntarás.


Las anotaciones de tolerancias y dimensionamiento geométrico (GD&T) son la respuesta. Estas molestas etiquetas suelen representar un desafío al procesar y extraer datos de dibujos de ingeniería debido a su posición en una página y a su estructura general. Pero no se preocupe: estoy aquí para compartir cómo logramos procesar anotaciones GD&T en dibujos de ingeniería con IA. Sin embargo, comencemos desde el principio.

Procesamiento de documentos no estructurados

Todos los documentos digitales se pueden separar en dos tipos: estructurados y no estructurados:


  • Los documentos estructurados siguen una estructura predefinida, lo que facilita su procesamiento y análisis con IA. Documentos como formularios, facturas, recibos, encuestas y contratos son ejemplos de documentos estructurados.


  • Por el contrario, los documentos no estructurados carecen de una organización coherente, lo que hace que su procesamiento automático sea inherentemente difícil. Algunos ejemplos de documentos no estructurados son los periódicos, los documentos de investigación y los informes comerciales.


Como habrás adivinado, los dibujos técnicos son un ejemplo clásico de documento no estructurado: a pesar de cumplir con un estricto conjunto de estándares, cada dibujo es diferente de otro porque carece de una estructura rígida. Junto con una combinación de datos de texto escritos a mano y mecanografiados, símbolos especiales, hojas de cálculo complejas y diversas anotaciones, los dibujos técnicos presentan un verdadero desafío para la extracción automática de datos.


La naturaleza compleja de los dibujos técnicos los convierte en el candidato perfecto para la extracción de datos mediante inteligencia artificial. De hecho, el uso de modelos neuronales para detectar y extraer diversos datos de los dibujos es la única forma de automatizar su procesamiento. Los modelos de visión artificial modernos y un enfoque inteligente para el desarrollo de productos pueden generar una herramienta poderosa para procesar rápidamente cualquier dibujo técnico.

Un problema con las herramientas prefabricadas

Una búsqueda rápida en Google le mostrará al menos un par de soluciones para procesar dibujos de ingeniería. Casi todas ellas ofrecen una amplia funcionalidad y prometen un procesamiento rápido y preciso de datos complejos.


A primera vista, esto puede parecer muy prometedor: pagar una suscripción mensual para procesar dibujos de ingeniería con alta precisión. Sin embargo, en la práctica, las cosas no suelen ser tan sencillas.


Las herramientas listas para usar a menudo tienen dificultades para detectar y procesar elementos rotados, ya que sus algoritmos solo están entrenados para procesar el “denominador común”, que, en nuestro caso, es un dibujo de ingeniería con etiquetas y anotaciones colocadas horizontalmente.

Por lo tanto, el uso de una solución ya preparada solo es adecuado para aquellos cuyos dibujos son relativamente simples e incluyen solo datos estándar. Cualquier desviación del "denominador común" supondrá un desafío para una herramienta ya preparada.

Extracción de características de dibujos de ingeniería

Esta misma situación le ocurrió a uno de nuestros clientes: las soluciones para procesar dibujos de ingeniería existentes en el mercado no responden a las necesidades de procesamiento de dibujos complejos o no estándar, por lo que los resultados de reconocimiento de datos son deficientes.


Las anotaciones de GD&T contienen mucha información muy importante que es vital extraer del dibujo para su posterior procesamiento, pero su posición en la página, en nuestro caso, al estar ubicadas en un ángulo, dificulta el proceso de análisis de dibujos mediante una herramienta de IA prefabricada.


Aquí es donde entra en juego el desarrollo de IA personalizado: los modelos de IA entrenados para detectar y extraer información de su documento específico pueden resolver (casi) cualquier desafío que una herramienta ya preparada pueda enfrentar.


Así es como hemos resuelto uno de los desafíos del procesamiento de dibujos de ingeniería con el desarrollo de modelos de IA personalizados: la extracción de anotaciones GD&T colocadas en ángulo.

Paso 1: Detección de la posición de la anotación

El primer paso es localizar la posición de las anotaciones en el dibujo. Los modelos de IA pueden entrenarse para detectar la ubicación de las anotaciones independientemente de su posición o ángulo de rotación.


Nota: Los documentos de varias páginas requieren un paso adicional: dividir el documento en páginas y diferenciar entre distintos dibujos de ingeniería. Lo mismo ocurre con los documentos que incluyen varios dibujos en cada página: primero debe ejecutar un modelo para detectar cada dibujo y extraerlos del documento.

Paso 2: Detectar el ángulo de rotación

Esta es la parte importante: detectar cómo se gira la anotación. El modelo de IA debe calcular el ángulo de rotación y girar la anotación para que quede horizontal. Luego, los PNG recortados se pasan para su posterior procesamiento:

Paso 3: Extracción de datos de las anotaciones

Una vez que se han detectado, rotado y extraído todas las anotaciones del dibujo, se las pasa por un motor de detección de símbolos. Tesseract es una buena opción para esto, ya que ofrece una alta precisión de reconocimiento y puede trabajar con texto de varias líneas y símbolos de diferentes alturas.


En primer lugar, es necesario encontrar el área exacta donde se encuentra el texto para mejorar el proceso de reconocimiento de símbolos. Recomendaría utilizar OpenCV, ya que maneja estas tareas muy bien y es relativamente fácil trabajar con él. A continuación, el área de texto detectada se entrega al motor de OCR para extraer todo el texto y los símbolos.

Paso 4: Análisis de datos

Es necesario interpretar una serie de letras, números y símbolos para proporcionar datos “digeribles” que los seres humanos (o un sistema de gestión de datos) puedan comprender y procesar. Los símbolos detectados se separan en grupos que forman las dimensiones, tolerancias, ajustes y radios de las piezas.

Paso 5: Gestión de datos

Los datos extraídos por un sistema de IA deben extraerse según sus necesidades:


  1. Archivos JSON : perfectos para importar datos a software existente,
  2. Archivos .XLSX : un formato de datos fácil de leer, perfecto para pruebas de sistemas o pequeños lotes de datos.
  3. Posprocesamiento : Los datos se procesan adicionalmente para enviarlos directamente a un sistema de manejo de documentos digitales; ideal para quienes buscan una solución completa.

Resumiendo

  1. Si bien el mercado está repleto de herramientas de inteligencia artificial para procesar documentos, estas solo manejan bien archivos simples. Cualquier desviación de la “norma” se procesa mejor con una solución personalizada.


  2. Los modelos de IA personalizados pueden manejar prácticamente todas las tareas de extracción de datos, siempre que se utilice el enfoque adecuado y las habilidades del desarrollador.


  3. Los dibujos de ingeniería no son los únicos dibujos técnicos sobre los que he escrito, consulte Cómo la IA puede ayudar a procesar dibujos arquitectónicos aquí .