1 minute read

Noise Injection y generación del dataset

Durante esta etapa se aplicó la estrategia de noise injection para mejorar la robustez del modelo frente a desviaciones de trayectoria. Se mantuvo la misma metodología de captura basada en recorder + replayer, grabando primero la sesión en un archivo .log junto con un csv de comandos, y posteriormente reconstruyendo el dataset mediante un replayer. Todo el proceso se ejecutó a 20 Hz.

La idea principal consiste en introducir pequeñas perturbaciones aleatorias sobre el ángulo de dirección durante la conducción humana. Si se activa una perturbación, esta se mantiene constante durante varios frames para simular una desviación sostenida y realista del vehículo.

La imagen capturada corresponde al estado perturbado, mientras que la etiqueta almacenada conserva la acción correcta del conductor humano, permitiendo que el modelo aprenda maniobras de recuperación.

Lógica aplicada

```text id=”5jqn4m” Inicializar recorder Definir: magnitude hold_count jolt_prob

Mientras la simulación esté activa:

Leer imagen
Leer steering_humano
Leer throttle_humano

Si se cumple ciclo de actualización:
    Con probabilidad jolt_prob:
        generar perturbación aleatoria
    mantenerla durante hold_count frames

steering_aplicado = steering_humano + perturbación

Aplicar control al vehículo

Guardar:
    imagen
    steering_humano
    steering_aplicado
    noise_active
    event_id ```

Consideración importante

El ruido no se aplica continuamente para evitar trayectorias irreales o vibraciones artificiales del vehículo. En su lugar, se genera en ciclos controlados, manteniéndose durante varios frames, lo que permite simular desviaciones más naturales y proporcionar al modelo ejemplos útiles de corrección.

Este enfoque ayuda a reducir el problema de distributional shift en Behavioral Cloning, mejorando el desempeño del modelo durante la conducción online.


Consolidación del dataset en HDF5

Posteriormente, el dataset fue consolidado en formato HDF5, con el objetivo de mejorar la trazabilidad, el acceso a metadatos y la eficiencia en lectura durante el entrenamiento.

Este formato permitió almacenar de manera estructurada:

  • imágenes de segmentación
  • controles humanos
  • controles aplicados
  • indicadores de ruido
  • velocidad
  • town
  • condiciones climáticas
  • identificadores de sesión

Resumen del dataset generado

  • Número de archivos: 7
  • Tamaño total en disco: 3.24 GB
  • Total de datasets internos detectados: 133
  • Frecuencia asumida: 20.00 Hz
  • Samples/frames estimados en total: 180,381
  • Duración total estimada: 2h 30m 19.0s

Cobertura de mapas

El dataset final incluye trayectorias capturadas en múltiples escenarios de CARLA:

  • Carla/Maps/Town01
  • Carla/Maps/Town03
  • Carla/Maps/Town04
  • Carla/Maps/Town05
  • Carla/Maps/Town07

Esta diversidad de escenarios permite mejorar la generalización del modelo frente a diferentes tipos de curvas, intersecciones y configuraciones urbanas.