Learn how JSON powers AI pipelines. Discover how to export [YOLO26](https://docs.ultralytics.com/models/yolo26/) predictions and manage datasets with ease.
JSON, o JavaScript Object Notation, es un formato ligero basado en texto que se utiliza para almacenar y transportar datos. En el ámbito de la inteligencia artificial y el aprendizaje automático, sirve como estándar universal para el intercambio de datos entre servidores, aplicaciones web y motores de inferencia. Su estructura, compuesta por pares clave-valor y listas ordenadas, es fácil de leer y escribir para los humanos, a la vez que es fácil de analizar y generar para las máquinas. Al ser independiente del lenguaje, JSON facilita la comunicación fluida entre un modelo entrenado en Python un entorno de implementación que se ejecuta en JavaScript, C++ o Go.
Cuando se implementa un modelo de visión artificial en producción, normalmente interactúa con otros componentes de software a través de una REST API. Por ejemplo, cuando un sistema de vigilancia envía un fotograma de vídeo a un servidor que ejecuta un modelo de detección de objetos, el servidor analiza la imagen y devuelve los resultados. En lugar de enviar una imagen binaria, el servidor responde con una cadena JSON que contiene las coordenadas de los cuadros delimitadores, los nombres de las clases detectadas y sus puntuaciones de confianza asociadas. Esta respuesta basada en texto es fácilmente consumida por paneles de control frontend, aplicaciones móviles o bases de datos NoSQL como MongoDB para el registro y el análisis.
Más allá de la inferencia, JSON es fundamental para estructurar los datos de entrenamiento. El popular formato COCO utiliza un esquema JSON completo para definir las rutas de los archivos de imagen, la información de la licencia y las coordenadas de las anotaciones. Esto contrasta con otros formatos como el formato YOLO , que utiliza simples archivos de texto separados por espacios. Las herramientas avanzadas de Ultralytics suelen utilizar JSON para gestionar metadatos de proyectos complejos y el control de versiones de conjuntos de datos en la nube.
Los marcos modernos simplifican el proceso de
serialización de datos, lo que permite a los desarrolladores exportar los resultados de los modelos
directamente a JSON. El ultralytics La biblioteca proporciona métodos integrados para serializar los resultados de la detección,
lo que facilita su integración.
YOLO26 modelos en ecosistemas de software más amplios.
El siguiente ejemplo muestra cómo ejecutar la inferencia con un modelo YOLO26 y convertir los resultados de la detección en una cadena JSON estandarizada:
import json
from ultralytics import YOLO
# Load the YOLO26 model
model = YOLO("yolo26n.pt")
# Run inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
# Convert the first result object to a JSON string
# This serializes boxes, classes, and confidence scores
json_output = results[0].tojson()
# Parse back to a dict to verify structure
data = json.loads(json_output)
print(f"Detected {len(data)} objects.")
Aunque JSON es omnipresente en el desarrollo web y el diseño de API , es importante distinguirlo de otros formatos de serialización de datos que se encuentran habitualmente en los flujos de trabajo de aprendizaje profundo.
.yaml archivos. JSON es más estricto, no admite comentarios y, por lo general,
las máquinas lo analizan más rápido, por lo que es más adecuado para la transmisión de datos y las respuestas de API.
La adopción generalizada de JSON fomenta la interoperabilidad entre diversas herramientas. Ya sea exportando
segmentación de instancias máscaras, almacenamiento
clasificación de imágenes etiquetas o configurar un
implementación del modelo canalización, JSON garantiza que los datos
permanezcan estructurados y accesibles. Su función se extiende a GeoJSON, un formato especializado
para codificar estructuras de datos geográficos, que se utiliza con frecuencia en
análisis de imágenes satelitales para asignar los objetos detectados
a coordenadas geográficas. Aprovechando las funciones integradas Python
json biblioteca, los desarrolladores pueden validar,
analizar y manipular fácilmente estas estructuras de datos para crear aplicaciones de IA robustas.