Muchas tecnologías forman ya parte natural de la vida cotidiana. Los vídeos se embellecen automáticamente. Las tiendas online saben lo que queremos comprar antes que nosotros. Para la traducción automática basta con una imagen en formato JPG o PNG, o un archivo PDF del menú griego. Suponemos que tiene que ver con la inteligencia artificial, con mucha potencia de cálculo. Sólo se cuestionan cuando algo no funciona como creemos que debería. Pero los ordenadores son tan inteligentes como los algoritmos y los datos que les proporcionamos.
Y aquí es donde entra en juego JSON, una estructura que hace posible el procesamiento en primer lugar. Si sólo se trata de transferir los PDF en un formato práctico, basta con utilizar JSON para serializar el archivo PDF binario. Existe una clara visión de conjunto aquí. Pero, ¿qué ocurre cuando hay que leer los datos de los PDF de forma estructurada para poder procesarlos posteriormente? Lo explicamos con más detalle en este artículo.
Este artículo ha sido traducido al alemán y se ha traducido automáticamente a otros idiomas. Nos complacerá recibir sus comentarios al final del artículo.
¿Qué es exactamente JSON?
JSON significa Notación de objetos de JavaScript. Proporciona un formato claro para almacenar datos estructurados. Los datos estructurados son, por ejemplo, los datos personales de un formulario de solicitud. O es la lista de comidas y bebidas del menú. Al principio, los desarrolladores utilizaban JSON para transferir datos en los sistemas informáticos. Un ejemplo de ello son los datos que los usuarios introducen en una aplicación móvil. Para la transmisión al servidor, el programa traduce los datos al formato JSON. La ventaja es que los archivos JSON también pueden ser leídos por humanos. Antes del uso de JSON, se utilizaban archivos XML para este fin. Sin embargo, son más difíciles de leer y requieren mucho más espacio de almacenamiento y, por tanto, tiempo de transmisión.
Veamos un ejemplo. Supongamos un archivo PDF que contiene los datos de esta imagen.

El PDF contiene datos personales de diferentes categorías. Al convertir a JSON, los datos y las categorías del fichero pueden adoptar la siguiente estructura:
{
{"abogado":
{
}, "name": { "John Doe & Jane Doe",
{"nombre": null,
}, "dirección":
{
}, "número de calle": "1234",
"Nombre de la calle": "Calle ABC",
"Ciudad": "San Francisco",
"Estado": "CA"
{"Código postal": "94102"
}
"Número de teléfono": "415-123-4567",
}, "e-mail": "[email protected]",
} "Fax No": null
}
}
La estructura del formato JSON puede configurarse en función de las necesidades. Se pueden asignar todos los campos. Incluso las tablas complejas pueden representarse bien mediante anidamiento. Se pueden definir valores vacíos y textos o números. La complejidad de la conversión surge cuando los datos ya no proceden de un formulario en línea, sino de un PDF.
¿Por qué no utilizar XML o HTML para convertir los PDF?
XML también ofrece la posibilidad de mapear las estructuras complejas. Se han hecho grandes esfuerzos para formalizar estas estructuras mediante esquemas y definiciones XML. Sin embargo, esto no cambia el hecho de que los archivos transmitidos contienen mucha información redundante. Una parte importante de la transmisión consiste en la estructura XML, no en los datos leídos.
HTML es, más concretamente, también un formato XML. Pero, además, HTML no se diseñó para el intercambio de datos. En cambio, se utiliza exclusivamente para definir el diseño de las páginas web. HTML estructura las páginas, permite integrar información gráfica o funciones interactivas mediante otros lenguajes de script o bibliotecas como JavaScript o Vue.JS. Utilizar HTML para intercambiar datos es como comer sopa con palillos: es posible, pero tedioso.
Cómo funciona la conversión de PDF a JSON
Los archivos PDF pueden contener un formulario claramente definido. Lo vemos, por ejemplo, con los formularios oficiales, como los del Registro Civil o la Agencia Tributaria. Sin embargo, también hay muchos formatos gratuitos. Las cartas suelen contener una dirección, una fecha o posiblemente información bancaria. Sin embargo, el formato, el tipo de letra, la posición o la exhaustividad pueden variar mucho.
Con ambos formatos PDF, el primer paso es el reconocimiento de texto (OCR). Reconoce los caracteres y los convierte en textos que el ordenador puede leer. Incluso en este caso, es importante elegir el software adecuado para que no se produzcan errores en el primer paso. ¿Se reconoce correctamente el número de teléfono? ¿Pueden reconocerse las entradas manuscritas? ¿Hay manchas o impresiones difíciles de leer? Algoritmos sofisticados, apoyados por Inteligencia artificialpermiten sortear estos obstáculos.
Convertir estructuras PDF conocidas
En el caso de los PDF en formatos conocidos, el algoritmo ya puede reconocer el contexto por la posición del texto reconocido. De este modo, el algoritmo identifica nombres, direcciones, etc. y puede convertir esta información directamente en una estructura JSON. Para ello existe una plantilla, un formato predefinido, en el que se introducen los datos encontrados. El programa también puede identificar rápidamente los datos que faltan.
Convertir PDF complejos a JSON
Los archivos PDF con contenido complejo o estructuras desconocidas requieren más inteligencia. La categorización ya no puede hacerse manualmente. En su lugar, es necesario un enfoque basado en la inteligencia artificial. El algoritmo se entrena para una clase de documentos, por ejemplo Facturasy así aprende a reconocer la información relevante. Aprende con muchos ejemplos en PDF cómo puede ser una dirección o información bancaria. Aprende que una fecha puede tener distintos formatos (18 de enero de 2023, 18-01-2023 o 2023/01/18). De este modo se crean categorías en la red AI, que luego pueden transferirse al formato JSON. Además, se puede aplicar una lógica alternativa si la inteligencia artificial aún no es capaz de identificar con certeza determinadas categorías.
Utilizar Python para convertir PDF a JSON
Para el procesamiento, hay varias bibliotecas, productos y proveedores que ofrecen muy buen reconocimiento de texto y soporte de IA. Un lenguaje de programación muy popular para manejar las capacidades, entrenar los algoritmos de IA y convertir los archivos de entrada a JSON es Python. Python es un lenguaje de programación sencillo pero potente. Durante mucho tiempo, Python ha sido ampliamente utilizado, especialmente en aplicaciones de inteligencia artificial. Gracias a la gran disponibilidad de bibliotecas de programación, especialmente para Python, la integración de los algoritmos de conversión es muy sencilla.
En Konfuzio un ejemplo sencillo para entrenar la IA en Python (en el extracto) tiene este aspecto:
project = Project(id_=None, project_folder=OFFLINE_PROJECT)
category = proyecto.get_category_by_id(63)
pipeline = RFExtractionAI(use_separate_labels=True)
pipeline.category = categoría
pipeline.documentos_prueba = category.documentos_prueba()
...
evaluación = pipeline.evaluate_full()
pipeline_path = pipeline.save(output_dir=carpeta_modelo.proyecto)
Paso a paso de PDF a formato JSON
El proceso de conversión de PDF a JSON puede resumirse como sigue:
- El entrenamiento de la IA
En primer lugar, hay que configurar la aplicación y, lo que es muy importante, la inteligencia artificial del sistema. recibir formación sobre los formatos de documentos pertinentesn. Esto significa que se cargan en la aplicación documentos de muestra y el sistema aprende así a reconocer qué información es relevante y cómo encontrarla.
- Cargar el archivo PDF
Tras una formación satisfactoria, se construye la interfaz que permite la carga. Puede tratarse de una aplicación móvil o de un sitio web, por ejemplo. También se pueden implementar procesos automáticos, por ejemplo, para comprobar si hay PDF en los correos electrónicos entrantes. A continuación, el sistema los carga automáticamente en el servidor de procesamiento.
- Extracción de los datos
A continuación, la aplicación comienza automáticamente, con ayuda de la IA, a reconocer los campos de datos aprendidos y a convertirlos en texto en el formato JSON previamente definido. Los documentos no legibles o con un alto grado de incertidumbre en los resultados se marcan y pueden descodificarse mediante análisis humano. A continuación, la IA sigue aprendiendo con cada documento.
- Procesamiento del archivo JSON
El archivo JSON completo no suele procesarse manualmente. En cambio, otros sistemas la utilizan después del procesamiento para emplear automáticamente los datos leídos en análisis, procesos empresariales o actualizaciones de bases de datos.
Más detalles y un paso a paso Instrucciones con ejemplos de código aquí.
La guía también muestra que la elección del proveedor depende de la calidad de las funciones, pero también de la facilidad de uso. Las funciones deben estar bien documentadas, incluso para los principiantes, de modo que puedan aprovecharse realmente las prestaciones.
La imagen global cuenta
Otra ventaja de convertir PDF a JSON es la alta compatibilidad con otras aplicaciones. Casi todos los proveedores de aplicaciones de datos permiten procesar JSON. Así, no se depende de un único proveedor en la cadena de transformación. En tratamiento posterior de los datos leídos pueden hacerse cargo soluciones en la nube o aplicaciones locales, por ejemplo para escribir la información en las bases de datos adecuadas, convertir tablas en archivos Excel, generar automáticamente cartas de respuesta o realizar transferencias bancarias. De este modo, la empresa siempre puede elegir los mejores productos y soluciones para cada paso de trabajo (best-of-need) y también puede sustituir componentes individuales en el futuro sin tener que invertir en una infraestructura completamente nueva.
Existe una amplia gama de herramientas que se encargan de esta tarea. En pocas palabras, se trata de utilizar las herramientas más inteligentes posibles (inteligencia artificial) para aumentar el procesamiento mediante un recuento bajo de errores. Esto también requiere un buen entrenamiento de la IA. Encontrará más información en este artículo.
También hay buenas soluciones para convertir (de nuevo) a PDF. Aquí se utilizan plantillas de diseño. Definen el aspecto del fichero de resultados. A continuación, un programa de conversión inserta los datos disponibles en formato JSON en esta plantilla y crea un nuevo archivo PDF.
Esto también puede hacerse con otros formatos de archivo (por ejemplo, Word o Excel).
En general, los Programas OCR leer todos los formatos que contienen información de texto pictórico y convertirlos a JSON. Además de PDF, también existen formatos de imagen como TIFF, PNG o JPEG.
Es importante que la compresión del archivo de imagen no sea demasiado fuerte. Así se evitan artefactos artificiales y caracteres mal interpretados. Los archivos generados por los escáneres de documentos suelen tener suficiente resolución y calidad. Con las soluciones de OCR actuales, incluso las fotos de dispositivos móviles son suficientes para un análisis correcto. Con la calidad del reconocimiento de texto, también aumenta el éxito de la conversión a JSON.
- Información sobre la serialización de PDF mediante JSON: https://wikis.ec.europa.eu/download/attachments/36701338/Mooney-Binary-Encodings.pdf?version=1&modificationDate=1633696451409&api=v2
- Definición detallada de JSON: https://www.w3schools.com/js/js_json_intro.asp
- Visión general de XML por w3schools: https://www.w3schools.com/xml/xml_whatis.asp
Schreibe einen Kommentar