Athrun Data Intelligence


El registro de texto en suceso (STR) continúa desafiando a los investigadores correcto a la variedad de apariciones de texto en entornos naturales. Una cosa es detectar texto en imágenes de documentos y otra cuando el texto está en una imagen de la camiseta de una persona. La comienzo de la predicción de granularidad múltiple para el registro de texto de escenas (MGP-STR), presentada en ECCV 2022, representa un enfoque transformador en este ámbito. MGP-STR fusiona la robustez de Transformadores de visión (ViT) con predicciones lingüísticas innovadoras de granularidad múltiple. Esto perfeccionamiento su capacidad para manejar tareas complejas de registro de texto de escenas. Esto garantiza una precisión y usabilidad mejoradas en una variedad de escenarios desafiantes del mundo positivo, creando una posibilidad simple pero poderosa para tareas STR.

Objetivos de enseñanza

  • Comprender la construcción y los componentes de MGP-STR, incluidos Vision Transformers (ViT).
  • Descubra cómo las predicciones de granularidad múltiple mejoran la precisión y versatilidad del registro de texto de escenas.
  • Explore las aplicaciones prácticas de MGP-STR en el mundo positivo Tareas de registro óptico de caracteres.
  • Obtenga experiencia habilidad en la implementación y el uso de MGP-STR con PyTorch para el registro de texto de suceso.

Este artículo fue publicado como parte del Blogatón de ciencia de datos.

¿Qué es MGP-STR?

MGP-STR es un maniquí STR basado en visión diseñado para sobresalir sin necesitar de un maniquí de estilo independiente. En cambio, integra información gramática directamente interiormente de su construcción a través de la logística de Predicción de granularidad múltiple (MGP). Este enfoque implícito permite que MGP-STR supere tanto a los modelos de visión pura como a los métodos de estilo aumentado, logrando resultados de última coexistentes en STR.

La construcción consta de dos componentes principales, los cuales son fundamentales para asegurar el rendimiento magnífico del maniquí y su capacidad para manejar diversos desafíos de texto de suceso:

  • Transformador de visión (ViT)
  • Módulos A³

La fusión de predicciones a nivel de caracteres, subpalabras y palabras a través de una logística sencilla pero eficaz garantiza que MGP-STR capture las complejidades de las características visuales y lingüísticas.

Comprensión de MGP-STR: reconocimiento de texto de escena

Aplicaciones y casos de uso de MGP-STR

MGP-STR está diseñado principalmente para tareas de registro óptico de caracteres (OCR) en imágenes de texto. Su capacidad única para incorporar conocimiento lingüístico implícitamente lo hace particularmente efectivo en escenarios del mundo positivo donde las variaciones y distorsiones del texto son comunes. Los ejemplos incluyen:

  • Ojear texto de escenas naturales, como señales de tráfico, vallas publicitarias y nombres de tiendas en entornos al música vaco.
  • Procedencia de texto manuscrito o impreso de formularios escaneados y documentos oficiales.
  • Observación de texto en aplicaciones industriales, como recitación de etiquetas, códigos de barras o números de serie de productos.
  • Traducir o transcribir texto en aplicaciones de verdad aumentada (AR) para viajes o educación. como señales viales y vallas publicitarias.
  • Procedencia de información de documentos escaneados o fotografías de materiales impresos.
  • Ayudar a soluciones de accesibilidad, como lectores de pantalla para usuarios con discapacidad visual.
Aplicaciones y casos de uso de MGP-STR: reconocimiento de texto en escenas

Características y ventajas secreto

  • Aniquilación de modelos lingüísticos independientes
  • Predicciones de granularidad múltiple
  • Rendimiento de última coexistentes
  • Facilidad de uso

Primeros pasos con MGP-STR

Antaño de profundizar en el fragmento de código, comprendamos su propósito y requisitos previos. Este ejemplo demuestra cómo utilizar el maniquí MGP-STR para realizar el registro de texto de suceso en una imagen de muestra. Asegúrese de tener PyTorch, la biblioteca Transformers y las dependencias necesarias (como PIL y solicitudes) instaladas en su entorno para ejecutar el código sin problemas. A continuación se muestra un ejemplo de cómo utilizar el maniquí MGP-STR en PyTorch (computadora portátil).

Paso 1: Importar dependencias

Comience importando las bibliotecas y dependencias esenciales requeridas para MGP-STR, incluidas transformers para el procesamiento de modelos, PIL para manipulación de imágenes, y requests para averiguar imágenes en ringlera. Estas bibliotecas proporcionan las herramientas fundamentales para procesar y mostrar imágenes de texto de forma eficaz.

from transformers import MgpstrProcessor, MgpstrForSceneTextRecognition
import requests
import base64
from io import BytesIO
from PIL import Image
from IPython.display import display, Image as IPImage

Paso 2: Cargando el maniquí cojín

Cargue el maniquí cojín MGP-STR y su procesador desde la biblioteca Hugging Face Transformers. Esto inicializa el maniquí previamente entrenado y las utilidades que lo acompañan, lo que permite un procesamiento y predicción fluidos del texto de la suceso a partir de imágenes.

processor = MgpstrProcessor.from_pretrained('alibaba-damo/mgp-str-base')
model = MgpstrForSceneTextRecognition.from_pretrained('alibaba-damo/mgp-str-base')

Paso 3: función auxiliar para predecir texto en la imagen

Defina una función auxiliar para ingresar URL de imágenes, procesar las imágenes utilizando el maniquí MGP-STR y producir predicciones de texto. La función maneja la conversión de imágenes, la codificación base64 para su visualización y utiliza los resultados del maniquí para decodificar el texto obligado de forma efectivo.

def predict(url):
    image = Image.open(requests.get(url, stream=True).raw).convert("RGB")

    # Process the image to prepare it for the model
    pixel_values = processor(images=image, return_tensors="pt").pixel_values

    # Generate the text from the model
    outputs = model(pixel_values)
    generated_text = processor.batch_decode(outputs.logits)('generated_text')

    # Convert the image to base64 for transmission
    buffered = BytesIO()
    image.save(buffered, format="PNG")
    image_base64 = base64.b64encode(buffered.getvalue()).decode("utf-8")

    display(IPImage(data=base64.b64decode(image_base64)))
    print("nn")

    return generated_text

Ejemplo 1:

predict("https://github.com/AlibabaResearch/AdvancedLiterateMachinery/blob/main/OCR/MGP-STR/demo_imgs/CUTE80_7.png?raw=true")
Ejemplo1
('7')

Ejemplo2:

predict("https://github.com/AlibabaResearch/AdvancedLiterateMachinery/blob/main/OCR/MGP-STR/demo_imgs/CUTE80_BAR.png?raw=true")
Ejemplo1
('bar')

Ejemplo 3:

predict("https://github.com/AlibabaResearch/AdvancedLiterateMachinery/blob/main/OCR/MGP-STR/demo_imgs/CUTE80_CROCODILES.png?raw=true")
ejemplo3
('crocodiles')

Ejemplo4:

predict("https://github.com/AlibabaResearch/AdvancedLiterateMachinery/blob/main/OCR/MGP-STR/demo_imgs/CUTE80_DAY.png?raw=true")
ejemplo4
('day')

Por la naturaleza de las imágenes, verás que la predicción es efectivo. Con este tipo de precisión, resulta muy ligera implementar este maniquí y obtener una buena respuesta. Además verá que el maniquí puede ejecutarse sólo con una CPU y utiliza menos de 3 GB de RAM. Esto hace que sea aún más efectivo realizar ajustes adicionales para otros casos de uso en tareas específicas del dominio.

salida: Reconocimiento de texto de escena

Conclusión

MGP-STR ejemplifica la combinación de visión y conocimiento del estilo interiormente de un entorno unificado. Al integrar de forma innovadora predicciones de granularidad múltiple en el proceso STR, MGP-STR garantiza un enfoque holístico para el registro de texto de escenas al combinar información a nivel de caracteres, subpalabras y palabras. Esto da como resultado una viejo precisión, adaptabilidad a diversos conjuntos de datos y un rendimiento efectivo sin necesitar de modelos de estilo externos. Simplifica la construcción al tiempo que logra una precisión sobresaliente. Para investigadores y desarrolladores en OCR y STR, MGP-STR ofrece una útil de última coexistentes que es eficaz y accesible. Con su implementación de código amplio y documentación completa, MGP-STR está preparado para impulsar mayores avances en el campo del registro de texto de escenas.

Conclusiones secreto

  • MGP-STR integra la visión y el conocimiento lingüístico sin necesitar de modelos lingüísticos independientes, lo que agiliza el proceso STR.
  • El uso de predicciones de granularidad múltiple permite a MGP-STR sobresalir en diversos desafíos de registro de texto.
  • MGP-STR establece un nuevo punto de relato para los modelos STR al conquistar resultados de última coexistentes con una construcción simple y eficaz.
  • Los desarrolladores pueden adaptar e implementar fácilmente MGP-STR para una variedad de tareas de OCR, mejorando tanto la investigación como las aplicaciones prácticas.

Preguntas frecuentes

P1: ¿Qué es MGP-STR y en qué se diferencia de los modelos STR tradicionales?

A1: MGP-STR es un maniquí de registro de texto de escenas que integra predicciones lingüísticas directamente en su entorno basado en visión utilizando Predicción de granularidad múltiple (MGP). A diferencia de los modelos STR tradicionales, elimina la penuria de modelos de estilo independientes, lo que simplifica el proceso y perfeccionamiento la precisión.

P2: ¿Qué conjuntos de datos se utilizaron para entrenar MGP-STR?

A2: El maniquí MGP-STR de tamaño cojín se entrenó en los conjuntos de datos MJSynth y SynthText, que se utilizan ampliamente para tareas de registro de texto de escenas.

P3. ¿Puede MGP-STR manejar imágenes de texto distorsionadas o de pérdida calidad?

A3: Sí, el mecanismo de predicción de granularidad múltiple de MGP-STR le permite manejar diversos desafíos, incluidas imágenes de texto distorsionadas o de pérdida calidad.

P4. ¿MGP-STR es adecuado para otros idiomas por otra parte del inglés?

A4: Si correctamente la implementación coetáneo está optimizada para el inglés, la construcción se puede adaptar para asilar otros idiomas entrenándola en conjuntos de datos relevantes.

P5. ¿Cómo contribuye el módulo A³ al rendimiento del MGP-STR?

A5: El módulo A³ refina los resultados de ViT asignando combinaciones de tokens a caracteres y permitiendo predicciones a nivel de subpalabra, incorporando conocimientos lingüísticos en el maniquí.

Los medios que se muestran en este artículo no son propiedad de Analytics Vidhya y se utilizan a discreción del autor.

Soy un ingeniero en inteligencia sintético con una profunda pasión por la investigación y la resolución de problemas complejos. Proporciono soluciones de inteligencia sintético que aprovechan modelos de lenguajes grandes (LLM), GenAI, modelos de transformadores y difusión estable.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *