Pipeline automatizado para la ingeniería inversa de imágenes de gráficos en código TikZ. La lógica central de este sistema se puede dividir en las siguientes cuatro etapas principales: 1. Etapa de Planificación Global y Entrada: - Entrada: Imágenes de gráficos originales (p. ej., gráficos de líneas, gráficos de barras, etc.). - Procesamiento Global: - Planificador Global: Recibe la entrada de la imagen y extrae metadatos globales. - Salida: Genera datos en formato JSON que contienen los parámetros globales del gráfico (p. ej., 'Escala-X': 1.5, 'Escala-Y': información de escala 0.5). - Ejemplo de Salida (JSON): ```json { 'x_scale': '1.3cm', 'y_scale': '0.5cm', 'y_min': 0, 'y_max': 10, 'x_min': 0, 'x_max': 6, 'colors': {'mplBlue': '31,119,180', 'gridGray': '220,220,220'}, 'chart_type': 'bar_chart' } ``` 2. Etapa de Extracción de Características en Paralelo: - La imagen y los metadatos globales se introducen simultáneamente en cuatro modelos paralelos de aprendizaje profundo/reconocimiento, cada uno responsable de extraer diferente información de los componentes del gráfico y generar los fragmentos de código TikZ correspondientes: 1. Modelo de Reconocimiento de la Configuración Básica del Gráfico: Identifica la estructura básica del gráfico y genera el código TikZ 1. 2. Modelo de Análisis de Ejes de Coordenadas: Analiza las escalas, etiquetas, etc., de los ejes X/Y y genera el código TikZ 2. 3. Modelo de Reconocimiento de Visualización de Datos: Identifica puntos de datos, líneas o barras específicos y genera el código TikZ 3. 4. Modelo de Reconocimiento de Leyendas: Identifica el contenido y el estilo de la leyenda y genera el código TikZ 4. 3. Etapa de Síntesis de Código: - Relleno: Integra los datos producidos en las dos etapas anteriores. - Datos JSON producidos por el Planificador Global. - Fragmentos de código TikZ (1-4) producidos por los cuatro modelos. - Aplicación de Plantilla: Estos datos se introducen en una plantilla LaTeX preestablecida. - Salida: Genera un código TikZ completo. 4. Bucle de Compilación y Validación: - Este es un bucle cerrado crucial en el sistema para garantizar la ejecutabilidad del código. - Latex
Esta imagen ilustra un pipeline automatizado para la ingenie...