Roboflow 100 Conjunto de datos
Roboflow 100, desarrollado por Roboflow y patrocinado por Intel, es una innovadora prueba de detección de objetos. Incluye 100 conjuntos de datos diversos extraídos de más de 90.000 conjuntos de datos públicos. Esta prueba está diseñada para comprobar la adaptabilidad de los modelos a diversos ámbitos, como la sanidad, las imágenes aéreas y los videojuegos.
Características principales
- Incluye 100 conjuntos de datos de siete ámbitos: Aéreo, Videojuegos, Microscópico, Subacuático, Documentos, Electromagnético y Mundo Real.
- La referencia comprende 224.714 imágenes de 805 clases, gracias a más de 11.170 horas de esfuerzos de etiquetado.
- Todas las imágenes se redimensionan a 640x640 píxeles, con especial atención a eliminar la ambigüedad de clase y filtrar las clases infrarrepresentadas.
- Las anotaciones incluyen recuadros delimitadores de los objetos, lo que lo hace adecuado para entrenar y evaluar modelos de detección de objetos.
Estructura del conjunto de datos
El conjunto de datos Roboflow 100 está organizado en siete categorías, cada una con un conjunto distinto de conjuntos de datos, imágenes y clases:
- Aéreas: Consta de 7 conjuntos de datos con un total de 9.683 imágenes, que abarcan 24 clases distintas.
- Videojuegos: Incluye 7 conjuntos de datos, con 11.579 imágenes de 88 clases.
- Microscópica: Comprende 11 conjuntos de datos con 13.378 imágenes, que abarcan 28 clases.
- Submarino: Contiene 5 conjuntos de datos, que abarcan 18.003 imágenes en 39 clases.
- Documentos: Consta de 8 conjuntos de datos con 24.813 imágenes, divididas en 90 clases.
- Electromagnética: Compuesto por 12 conjuntos de datos, con un total de 36.381 imágenes en 41 clases.
- Mundo real: La categoría más grande, con 50 conjuntos de datos que ofrecen 110.615 imágenes de 495 clases.
Esta estructura permite un amplio y variado campo de pruebas para los modelos de detección de objetos, que refleja los escenarios de aplicación del mundo real.
Evaluación comparativa
La evaluación comparativa de conjuntos de datos evalúa el rendimiento de los modelos de aprendizaje automático en conjuntos de datos específicos utilizando métricas estandarizadas como la exactitud, la precisión media y la puntuación F1.
Evaluación comparativa
Los resultados de la evaluación comparativa se almacenarán en "ultralytics-benchmarks/evaluation.txt"
Ejemplo de evaluación comparativa
import os
import shutil
from pathlib import Path
from ultralytics.utils.benchmarks import RF100Benchmark
# Initialize RF100Benchmark and set API key
benchmark = RF100Benchmark()
benchmark.set_key(api_key="YOUR_ROBOFLOW_API_KEY")
# Parse dataset and define file paths
names, cfg_yamls = benchmark.parse_dataset()
val_log_file = Path("ultralytics-benchmarks") / "validation.txt"
eval_log_file = Path("ultralytics-benchmarks") / "evaluation.txt"
# Run benchmarks on each dataset in RF100
for ind, path in enumerate(cfg_yamls):
path = Path(path)
if path.exists():
# Fix YAML file and run training
benchmark.fix_yaml(str(path))
os.system(f"yolo detect train data={path} model=yolo11s.pt epochs=1 batch=16")
# Run validation and evaluate
os.system(f"yolo detect val data={path} model=runs/detect/train/weights/best.pt > {val_log_file} 2>&1")
benchmark.evaluate(str(path), str(val_log_file), str(eval_log_file), ind)
# Remove the 'runs' directory
runs_dir = Path.cwd() / "runs"
shutil.rmtree(runs_dir)
else:
print("YAML file path does not exist")
continue
print("RF100 Benchmarking completed!")
Aplicaciones
Roboflow 100 tiene un valor incalculable para diversas aplicaciones relacionadas con la visión por ordenador y el aprendizaje profundo. Los investigadores e ingenieros pueden utilizar este punto de referencia para:
- Evaluar el rendimiento de los modelos de detección de objetos en un contexto multidominio.
- Probar la adaptabilidad de los modelos a escenarios del mundo real más allá del reconocimiento común de objetos.
- Evaluar las capacidades de los modelos de detección de objetos en diversos conjuntos de datos, como los de la atención sanitaria, las imágenes aéreas y los videojuegos.
Para más ideas e inspiración sobre aplicaciones reales, no deje de consultar nuestras guías sobre proyectos reales.
Utilización
El conjunto de datos Roboflow 100 está disponible tanto en GitHub como en Roboflow Universe.
Puede acceder directamente desde el repositorio GitHub de Roboflow 100. Además, en Roboflow Universe, tiene la flexibilidad de descargar conjuntos de datos individuales simplemente haciendo clic en el botón de exportación dentro de cada conjunto de datos.
Ejemplos de datos y anotaciones
Roboflow 100 consta de conjuntos de datos con diversas imágenes y vídeos capturados desde distintos ángulos y dominios. He aquí algunos ejemplos de imágenes anotadas en la prueba RF100.
La diversidad que se aprecia en la referencia Roboflow 100 supone un avance significativo con respecto a las referencias tradicionales, que a menudo se centran en optimizar una única métrica dentro de un dominio limitado.
Citas y agradecimientos
Si utiliza el conjunto de datos Roboflow 100 en su trabajo de investigación o desarrollo, cite el siguiente documento:
Nuestro agradecimiento al equipo de Roboflow y a todos los colaboradores por su duro trabajo en la creación y mantenimiento del conjunto de datos Roboflow 100.
Si está interesado en explorar más conjuntos de datos para mejorar sus proyectos de detección de objetos y aprendizaje automático, no dude en visitar nuestra completa colección de conjuntos de datos.
PREGUNTAS FRECUENTES
¿Qué es el conjunto de datos Roboflow 100 y por qué es importante para la detección de objetos?
El conjunto de datos Roboflow 100, desarrollado por Roboflow y patrocinado por Intel, es una referencia crucial para la detección de objetos. Presenta 100 conjuntos de datos diversos de entre más de 90.000 conjuntos de datos públicos, que abarcan ámbitos como la asistencia sanitaria, las imágenes aéreas y los videojuegos. Esta diversidad garantiza que los modelos puedan adaptarse a distintos escenarios del mundo real, mejorando su solidez y rendimiento.
¿Cómo puedo utilizar el conjunto de datos Roboflow 100 para evaluar mis modelos de detección de objetos?
Para utilizar el conjunto de datos Roboflow 100 para la evaluación comparativa, puede implementar la clase RF100Benchmark de la biblioteca Ultralytics . He aquí un breve ejemplo:
Ejemplo de evaluación comparativa
import os
import shutil
from pathlib import Path
from ultralytics.utils.benchmarks import RF100Benchmark
# Initialize RF100Benchmark and set API key
benchmark = RF100Benchmark()
benchmark.set_key(api_key="YOUR_ROBOFLOW_API_KEY")
# Parse dataset and define file paths
names, cfg_yamls = benchmark.parse_dataset()
val_log_file = Path("ultralytics-benchmarks") / "validation.txt"
eval_log_file = Path("ultralytics-benchmarks") / "evaluation.txt"
# Run benchmarks on each dataset in RF100
for ind, path in enumerate(cfg_yamls):
path = Path(path)
if path.exists():
# Fix YAML file and run training
benchmark.fix_yaml(str(path))
os.system(f"yolo detect train data={path} model=yolo11n.pt epochs=1 batch=16")
# Run validation and evaluate
os.system(f"yolo detect val data={path} model=runs/detect/train/weights/best.pt > {val_log_file} 2>&1")
benchmark.evaluate(str(path), str(val_log_file), str(eval_log_file), ind)
# Remove 'runs' directory
runs_dir = Path.cwd() / "runs"
shutil.rmtree(runs_dir)
else:
print("YAML file path does not exist")
continue
print("RF100 Benchmarking completed!")
¿Qué ámbitos abarca el conjunto de datos Roboflow 100?
El conjunto de datos Roboflow 100 abarca siete ámbitos, cada uno de los cuales plantea retos y aplicaciones únicos para los modelos de detección de objetos:
- Aéreo: 7 conjuntos de datos, 9.683 imágenes, 24 clases
- Videojuegos: 7 conjuntos de datos, 11.579 imágenes, 88 clases
- Microscópico: 11 conjuntos de datos, 13.378 imágenes, 28 clases
- Bajo el agua: 5 conjuntos de datos, 18.003 imágenes, 39 clases
- Documentos: 8 conjuntos de datos, 24.813 imágenes, 90 clases
- Electromagnética: 12 conjuntos de datos, 36.381 imágenes, 41 clases
- Mundo real: 50 conjuntos de datos, 110.615 imágenes, 495 clases
Esta configuración permite realizar pruebas exhaustivas y variadas de los modelos en distintas aplicaciones del mundo real.
¿Cómo puedo acceder y descargar el conjunto de datos Roboflow 100?
El conjunto de datos Roboflow 100 está disponible en GitHub y Roboflow Universe. Puede descargar el conjunto de datos completo desde GitHub o seleccionar conjuntos de datos individuales en Roboflow Universe utilizando el botón de exportación.
¿Qué debo incluir al citar el conjunto de datos Roboflow 100 en mi investigación?
Cuando utilice el conjunto de datos Roboflow 100 en su investigación, asegúrese de citarlo correctamente. Esta es la cita recomendada:
Para más detalles, puede consultar nuestra completa colección de conjuntos de datos.