Detección de objetos
La detección de objetos es una tarea que consiste en identificar la ubicación y la clase de los objetos en una imagen o secuencia de vídeo.
La salida de un detector de objetos es un conjunto de cuadros delimitadores que encierran los objetos de la imagen, junto con etiquetas de clase y puntuaciones de confianza para cada cuadro. La detección de objetos es una buena opción cuando necesita identificar objetos de interés en una escena, pero no necesita saber exactamente dónde está el objeto o su forma exacta.
Observa: Detección de objetos con el modelo preentrenado Ultralytics YOLO .
Consejo
YOLO11 Los modelos de detección son los modelos por defecto de YOLO11 , es decir yolo11n.pt
y están preentrenados en COCO.
Modelos
YOLO11 Aquí se muestran los modelos Detect preentrenados. Los modelos Detect, Segment y Pose se preentrenan en el conjunto de datos COCO, mientras que los modelos Classify se preentrenan en el conjunto de datos ImageNet.
Los modelos se descargan automáticamente de la últimaversión de Ultralytics la primera vez que se utilizan.
Modelo | tamaño (píxeles) |
mAPval 50-95 |
Velocidad CPU ONNX (ms) |
Velocidad T4TensorRT10 (ms) |
parámetros (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
YOLO11n | 640 | 39.5 | 56.1 ± 0.8 | 1.5 ± 0.0 | 2.6 | 6.5 |
YOLO11s | 640 | 47.0 | 90.0 ± 1.2 | 2.5 ± 0.0 | 9.4 | 21.5 |
YOLO11m | 640 | 51.5 | 183.2 ± 2.0 | 4.7 ± 0.1 | 20.1 | 68.0 |
YOLO11l | 640 | 53.4 | 238.6 ± 1.4 | 6.2 ± 0.1 | 25.3 | 86.9 |
YOLO11x | 640 | 54.7 | 462.8 ± 6.7 | 11.3 ± 0.2 | 56.9 | 194.9 |
- mAPval son para un solo modelo de escala única en COCO val2017 conjunto de datos.
Reproducir poryolo val detect data=coco.yaml device=0
- Velocidad promediadas sobre imágenes COCO val utilizando un Amazon EC2 P4d instancia.
Reproducir poryolo val detect data=coco.yaml batch=1 device=0|cpu
Tren
Entrena YOLO11n en el conjunto de datos COCO8 durante 100 épocas con un tamaño de imagen de 640. Para obtener una lista completa de los argumentos disponibles, consulte la página Configuración.
Ejemplo
from ultralytics import YOLO
# Load a model
model = YOLO("yolo11n.yaml") # build a new model from YAML
model = YOLO("yolo11n.pt") # load a pretrained model (recommended for training)
model = YOLO("yolo11n.yaml").load("yolo11n.pt") # build from YAML and transfer weights
# Train the model
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Build a new model from YAML and start training from scratch
yolo detect train data=coco8.yaml model=yolo11n.yaml epochs=100 imgsz=640
# Start training from a pretrained *.pt model
yolo detect train data=coco8.yaml model=yolo11n.pt epochs=100 imgsz=640
# Build a new model from YAML, transfer pretrained weights to it and start training
yolo detect train data=coco8.yaml model=yolo11n.yaml pretrained=yolo11n.pt epochs=100 imgsz=640
Formato del conjunto de datos
YOLO Encontrará información detallada sobre el formato de los conjuntos de datos de detección en la Guía de conjuntos de datos. Para convertir su conjunto de datos existente de otros formatos (como COCO, etc.) al formato YOLO , utilice la herramienta JSON2YOLO de Ultralytics.
Val
Validación del modelo YOLO11n entrenado precisión en el conjunto de datos COCO8. No se necesitan argumentos, ya que el model
conserva su formación data
y argumentos como atributos del modelo.
Ejemplo
from ultralytics import YOLO
# Load a model
model = YOLO("yolo11n.pt") # load an official model
model = YOLO("path/to/best.pt") # load a custom model
# Validate the model
metrics = model.val() # no arguments needed, dataset and settings remembered
metrics.box.map # map50-95
metrics.box.map50 # map50
metrics.box.map75 # map75
metrics.box.maps # a list contains map50-95 of each category
Predecir
Utilizar un modelo YOLO11n entrenado para realizar predicciones sobre las imágenes.
Ejemplo
Ver todos predict
detalles del modo en el Predecir página.
Exportar
Exporta un modelo YOLO11n a un formato diferente como ONNX, CoreML, etc.
Ejemplo
Los formatos de exportación disponibles en YOLO11 figuran en la tabla siguiente. Puede exportar a cualquier formato utilizando el botón format
es decir format='onnx'
o format='engine'
. Puede predecir o validar directamente los modelos exportados, es decir. yolo predict model=yolo11n.onnx
. Se muestran ejemplos de uso de su modelo una vez finalizada la exportación.
Formato | format Argumento |
Modelo | Metadatos | Argumentos |
---|---|---|---|---|
PyTorch | - | yolo11n.pt |
✅ | - |
TorchScript | torchscript |
yolo11n.torchscript |
✅ | imgsz , optimize , batch |
ONNX | onnx |
yolo11n.onnx |
✅ | imgsz , half , dynamic , simplify , opset , batch |
OpenVINO | openvino |
yolo11n_openvino_model/ |
✅ | imgsz , half , int8 , batch |
TensorRT | engine |
yolo11n.engine |
✅ | imgsz , half , dynamic , simplify , workspace , int8 , batch |
CoreML | coreml |
yolo11n.mlpackage |
✅ | imgsz , half , int8 , nms , batch |
TF SavedModel | saved_model |
yolo11n_saved_model/ |
✅ | imgsz , keras , int8 , batch |
TF GraphDef | pb |
yolo11n.pb |
❌ | imgsz , batch |
TF Lite | tflite |
yolo11n.tflite |
✅ | imgsz , half , int8 , batch |
TF Borde TPU | edgetpu |
yolo11n_edgetpu.tflite |
✅ | imgsz |
TF.js | tfjs |
yolo11n_web_model/ |
✅ | imgsz , half , int8 , batch |
PaddlePaddle | paddle |
yolo11n_paddle_model/ |
✅ | imgsz , batch |
MNN | mnn |
yolo11n.mnn |
✅ | imgsz , batch , int8 , half |
NCNN | ncnn |
yolo11n_ncnn_model/ |
✅ | imgsz , half , batch |
IMX500 | imx |
yolov8n_imx_model/ |
✅ | imgsz , int8 |
Ver todos export
detalles en el Exportar página.
PREGUNTAS FRECUENTES
¿Cómo entreno un modelo YOLO11 en mi conjunto de datos personalizado?
El entrenamiento de un modelo YOLO11 en un conjunto de datos personalizado implica unos cuantos pasos:
- Prepare el conjunto de datos: Asegúrese de que su conjunto de datos tiene el formato YOLO . Para más información, consulte nuestra Guía de conjuntos de datos.
- Cargar el modelo: Utilice la biblioteca Ultralytics YOLO para cargar un modelo preentrenado o crear un nuevo modelo a partir de un archivo YAML.
- Entrenar el modelo: Ejecutar el
train
en Python o el métodoyolo detect train
en CLI.
Ejemplo
Para conocer las opciones de configuración detalladas, visite la página Configuración.
¿Qué modelos preentrenados están disponibles en YOLO11?
Ultralytics YOLO11 ofrece varios modelos preentrenados para la detección de objetos, la segmentación y la estimación de poses. Estos modelos están preentrenados en el conjunto de datos COCO o ImageNet para tareas de clasificación. Estos son algunos de los modelos disponibles:
Para obtener una lista detallada y parámetros de rendimiento, consulte la sección Modelos.
¿Cómo puedo validar la precisión de mi modelo entrenado YOLO ?
Para validar la precisión de su modelo entrenado YOLO11 , puede utilizar la función .val()
en Python o el método yolo detect val
en CLI. Esto proporcionará métricas como mAP50-95, mAP50 y más.
Ejemplo
Para más detalles sobre la validación, visite la página Val.
¿A qué formatos puedo exportar un modelo de YOLO11 ?
Ultralytics YOLO11 permite exportar modelos a varios formatos, como ONNX, TensorRT, CoreML, y otros, para garantizar la compatibilidad en distintas plataformas y dispositivos.
Ejemplo
Consulta la lista completa de formatos compatibles y las instrucciones en la página Exportar.
¿Por qué utilizar Ultralytics YOLO11 para la detección de objetos?
Ultralytics YOLO11 está diseñado para ofrecer un rendimiento de vanguardia en la detección de objetos, la segmentación y la estimación de la pose. Estas son algunas de sus principales ventajas:
- Modelos preentrenados: Utilice modelos preentrenados en conjuntos de datos populares como COCO e ImageNet para un desarrollo más rápido.
- Alta precisión: Alcanza puntuaciones mAP impresionantes, lo que garantiza una detección de objetos fiable.
- Velocidad: Optimizado para la inferencia en tiempo real, lo que lo hace ideal para aplicaciones que requieren un procesamiento rápido.
- Flexibilidad: Exporte modelos a varios formatos como ONNX y TensorRT para desplegarlos en múltiples plataformas.
Explore nuestro blog para conocer casos de uso y casos de éxito que muestran YOLO11 en acción.