YOLO (You Only Look Once)

 

YOLO (You Only Look Once) es un enfoque de detección de objetos.

En tiempo real basado en redes neuronales convolucionales (CNNs).

Es uno de los algoritmos más populares y eficientes.

 

Para detectar objetos en imágenes o videos.

Debido a su capacidad de realizar predicciones rápidas y precisas

En una sola pasada a través de la red.

 

En lugar de dividir la tarea de detección en varias etapas.

Como otros enfoques tradicionales.

YOLO realiza todo el proceso en un solo paso.

 

Lo hace extremadamente rápido.

Adecuado para aplicaciones en tiempo real.

 

Principio Básico de YOLO

 

Una red neuronal convolucional puede predecir la localización.

La clase de los objetos presentes en una imagen.

De manera simultánea y eficiente.

 

En lugar de usar múltiples pasos.

Como en el enfoque de «region proposal»

Utilizado por otros métodos.

 

YOLO realiza todas las predicciones.

En un solo pase de la red.

El proceso de YOLO se basa en dividir.

 

Una imagen en una cuadrícula (grid).

Predecir para cada celda de la cuadrícula.

Qué objetos están presentes.

Sus posiciones y probabilidades de clase.

 

¿Cómo Funciona YOLO?

 

División de la Imagen en una Cuadrícula

La imagen de entrada se divide en una cuadrícula de S × S 

Cada celda de la cuadrícula es responsable.

De predecir un número fijo de cajas delimitadoras.

Bounding boxes y sus respectivas probabilidades.

 

Predicciones por Celda

Cada celda predice

 

Cajas delimitadoras

Estas cajas están definidas por sus coordenadas (x, y)

Para el centro de la caja.

Junto con su ancho (w) y altura (h).

 

Confianza

La red predice un valor de confianza.

Para cada caja delimitadora.

Indica la certeza de que la caja contiene un objeto.

 

Probabilidades de clase

Para cada celda se predicen probabilidades.

Para cada clase de objeto.

«perro», «gato», «automóvil», etc.

 

Cálculo del Bounding Box Final

Para cada celda YOLO genera un conjunto.

De varias cajas delimitadoras.

Las celdas también asignan una probabilidad.

 

Para cada tipo de objeto por ejemplo, perro, coche, etc.

Si la confianza de una caja delimitadora.

Es lo suficientemente alta.

Esa caja es seleccionada como el objeto detectado.

 

No máximo (NMS) de Supresión

Se aplica el algoritmo NMS (Non-Maximum Suppression).

Reducir la redundancia y eliminar las cajas superpuestas.

Predicen el mismo objeto.

 

Esto garantiza que solo se conserve la mejor caja.

Delimitadora para cada objeto detectado.

 

Arquitectura de YOLO

 

La arquitectura de YOLO es una red neuronal convolucional (CNN).

De una sola etapa que toma una imagen como entrada.

Devuelve las predicciones en forma de una cuadrícula.

Cada celda predice varias cajas delimitadoras.

 

Junto con la probabilidad de cada clase.

La arquitectura más común de YOLO.

Se basa en una versión de la red convolucional Darknet

Fue desarrollada para ser rápida y eficiente.

 

Características Clave de YOLO

 

Detección en Tiempo Real

Capacidad de realizar detección de objetos en tiempo real.

Esto se logra gracias a su enfoque de una sola etapa.

Todo el proceso de detección localización y clasificación.

Ocurre en un solo pase de la red.

 

Rápido y Eficiente

Debido a que realiza todo el proceso de detección en una sola pasada.

YOLO es mucho más rápido que otros algoritmos.

R-CNN o Fast R-CNN

Requieren múltiples pasos de procesamiento.

 

Precisión y Escalabilidad

La precisión de detección puede ser menor.

Que otros métodos en escenarios complejos.

Con pequeños objetos o solapamientos.

Ha demostrado ser adecuado para una amplia variedad.

De aplicaciones prácticas.

 

Ventajas de YOLO

 

Detección en Tiempo Real

YOLO puede procesar imágenes en tiempo real.

Lo hace ideal para aplicaciones en vivo.

La vigilancia, los vehículos autónomos y la robótica.

 

Precisión Competitiva

YOLO ha demostrado ser muy efectivo.

Para muchos tipos de objetos y entornos.

 

Facilidad de Uso

Con las implementaciones disponibles en bibliotecas populares.

OpenCV, TensorFlow y PyTorch

YOLO es fácil de integrar en aplicaciones y proyectos.

 

Limitaciones de YOLO

 

Dificultad con Objetos Pequeños

YOLO tiene dificultades para detectar objetos pequeños.

Debido a la forma en que divide.

Las imágenes en cuadrículas.

Los objetos pequeños pueden caer en la misma celda.

No obtener predicciones precisas.

 

Dependencia de Resolución de Imágenes

El modelo depende de la resolución de la imagen.

Hacer predicciones más precisas.

Las imágenes de baja resolución.

Pueden resultar en una pérdida de precisión.

 

Detección de Objetos Solapados

A veces tiene problemas al detectar objetos.

Se solapan o están demasiado cerca unos de otros.

 

Aplicaciones de YOLO

 

Vigilancia en tiempo real

Detección de personas, vehículos y otros objetos.

En sistemas de cámaras de seguridad.

 

Vehículos autónomos

Detección de peatones, señales de tráfico y otros vehículos.

 

Robótica

Identificación y localización de objetos.

La manipulación robótica.

 

Agricultura de precisión

Detección de plagas, cultivos y otros objetos de interés.

 

Reconocimiento de imágenes

Usado en diversas plataformas.

Análisis y etiquetado de imágenes.

 

Implementación Básica de YOLO con OpenCV

 

import cv2
import numpy as np

# Cargar el modelo YOLO pre-entrenado y los archivos de configuración
net = cv2.dnn.readNet(«yolov3.weights», «yolov3.cfg»)
layer_names = net.getLayerNames()
output_layers = [layer_names[i – 1] for i in net.getUnconnectedOutLayers()]

# Cargar la imagen
img = cv2.imread(‘image.jpg’)
height, width, channels = img.shape

# Preprocesar la imagen para YOLO
blob = cv2.dnn.blobFromImage(img, 0.00392, (416, 416), (0, 0, 0), True, crop=False)
net.setInput(blob)
outs = net.forward(output_layers)

# Mostrar los resultados
for out in outs:
for detection in out:
scores = detection[5:] class_id = np.argmax(scores)
confidence = scores[class_id] if confidence > 0.5:
center_x = int(detection[0] * width)
center_y = int(detection[1] * height)
w = int(detection[2] * width)
h = int(d

 

 

Te puede interesar;

Curso de ChatGPT (GRATIS)

 

Manu Duque
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.

Nunca almacenamos información personal.

Puedes revisar nuestra política en la página de Política de Privacidad, Condiciones de Uso y Cookies.