Proyecto Final Yolo

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 8

Universidad Peruana Cayetano

Heredia

FACULTAD DE CIENCIAS E INGENIERIA


iNTRODUCCION A MACHINE LEARNING

Proyecto de Yolov5 y Yolov8

Integrantes:

Luis Felipe Canal Alvarado


Ruben Anderson Rojas Ramos
Nelvin Amiel Marcos Palacios
Ruben Andre Cabrera Cermeño
Renzo Antonio Vilca Loayza

Julio, 2023
Lima, Perú
INTRODUCCIÖN

Yolo (You Only Look Once) es un framework de reconocimiento de objetos en


imágenes desarrollado por Joseph Redmon y otros. La principal caracterı́stica de
Yolo es su capacidad para realizar detecciones en tiempo real, logrando una alta
velocidad de procesamiento al analizar la imagen completa en una sola pasada.
A diferencia de otros enfoques que dividen la imagen en regiones y realizan
múltiples clasificaciones y detecciones en cada región, Yolo utiliza una red neu-
ronal convolucional (CNN) para realizar la detección de objetos directamente
en la imagen completa. La red divide la imagen en una cuadrı́cula y asigna
cajas delimitadoras (bounding boxes) a las regiones donde se encuentran los
objetos. Además, asigna probabilidades a cada caja delimitadora para indicar
la confianza de que un objeto está presente y clasifica los objetos detectados en
categorı́as especı́ficas. Yolo ha demostrado ser eficiente y preciso en la detección
y clasificación de objetos en imágenes. Su arquitectura ha evolucionado a lo
largo del tiempo, y la versión más reciente, Yolo v4, presenta mejoras en la pre-
cisión y la velocidad de detección. En el contexto de tu trabajo de investigación,
se propone la implementación de Yolo como la librerı́a de reconocimiento de ob-
jetos a utilizar. La elección de Yolo se basa en su efectividad para la detección
y clasificación de objetos, ası́ como en su capacidad para realizar inferencias en
tiempo real. Al compararlo con otros modelos como Keras y TensorFlow, se
espera evaluar y demostrar la confiabilidad y el rendimiento de Yolo en la tarea
de reconocimiento de objetos en fotografı́as.

1 ¿QUÉ YOLO UTILIZAMOS EN NUESTRO


PROYECTO?
YOLOV5:
El objetivo principal de este proyecto es analizar la confiabilidad y rendimiento
de YOLO en comparación con otros modelos de reconocimiento de objetos am-
pliamente utilizados en la actualidad, como Keras y TensorFlow. Para ello, se
ha empleado una metodologı́a de investigación exploratoriaque permite escoger
la más adecuada opción nosotros podriamos acceder ,el objetivo es determi-
nar si YOLOv5 es el mejor modelo para esta tarea y proporcionar información
relevante para futuros proyectos que requieran reconocimiento de objetos. En
la primera sección, se realiza una investigación exhaustiva sobre los modelos
de reconocimiento de objetos más relevantes, estableciendo objetivos claros y
definiendo las etapas necesarias para la implementación del proyecto. En la
segunda sección, se presenta el marco teórico y la metodologı́a utilizada para
la ejecución del experimento, detallando los pasos y técnicas empleadas para la
comparativa entre YOLO, Keras y TensorFlow. La tercera sección presenta los
resultados obtenidos a través del experimento ejecutado y la comparación de
los diferentes modelos. Estos resultados proporcionarán información valiosa y
oportuna para futuros proyectos que requieran implementar el reconocimiento

2
de objetos en sus aplicaciones. Con este estudio, se pretende brindar una visión
más clara sobre la efectividad de YOLO y su capacidad para abordar la detección
y clasificación de objetos en fotografı́as. Se espera que esta investigación con-
tribuya al avance de esta área y sirva como referencia para proyectos futuros
que deseen incorporar técnicas de reconocimiento de objetos en sus desarrollos.
YOLOV8:
¿QUÉ ES YOLO V8?

YOLOv8 representa la evolución más reciente de la serie YOLO. Al igual que sus
predecesores, YOLOv8 tiene la capacidad única de predecir todos los objetos
presentes en una imagen mediante un solo pase hacia adelante. Esta carac-
terı́stica revolucionaria se debe a que YOLOv8 aborda la detección de objetos
como un problema de regresión, donde se predice directamente el cuadro delim-
itador de cada objeto en lugar de realizar una clasificación. Un factor crucial
para el éxito de los modelos YOLO es su entrenamiento en grandes conjuntos
de datos, como COCO e ImageNet.
Esto les confiere una doble capacidad: por un lado, ofrecen predicciones al-
tamente precisas para las clases en las que están preentrenados (habilidad de
maestro); por otro lado, tienen la capacidad de aprender nuevas clases de man-
era más sencilla (habilidad de estudiante).

¿QUE HACE QUE YOLOV8 SOBRESALIR ANTE LOS DEMÄS?

La versatilidad y el rendimiento de YOLOv8 se destacan por varias razones.


En primer lugar, YOLOv8 se entrena más rápidamente y ofrece alta precisión
con tamaños de modelo más pequeños, lo que lo hace accesible para una amplia
gama de desarrolladores. Además, YOLOv8 ha introducido mejoras significati-
vas sobre sus predecesores, como la detección sin anclaje y el aumento de datos
”mosaic”. La detección sin anclaje es un cambio fundamental en la arquitec-
tura de YOLOv8, ya que se aleja del uso de cajas de anclaje, lo que proporciona
mayor flexibilidad y capacidad para adaptarse a datos irregulares y escenas
complejas. Por otro lado, el aumento de datos ”mosaic” es una técnica de en-
trenamiento innovadora que combina cuatro imágenes diferentes en una sola y se
utiliza como entrada para el modelo. Esto permite que YOLOv8 aprenda obje-
tos desde diferentes perspectivas y en situaciones de oclusión parcial, mejorando
su capacidad de generalización y rendimiento.

2 ¿CÓMO DETECTA YOLOV5?


Detección en una sola pasada: La caracterı́stica distintiva de YOLOv5 que real-
iza la detección de objetos en una sola pasada de la imagen completa. En lugar
de dividir la imagen en regiones o propuestas, YOLOv5 divide la imagen en una
cuadrı́cula y realiza predicciones para cada celda de la cuadrı́cula. Cada celda
se encarga de predecir un conjunto de cajas delimitadoras (bounding boxes)
y sus correspondientes probabilidades de objeto y clases. YOLOv5 utiliza un

3
backbone y un neck como parte de su arquitectura. El backbone es una red
convolucional profunda, como CSPDarknet53, que extrae caracterı́sticas signi-
ficativas de la imagen. El neck es una estructura que fusiona y refina las car-
acterı́sticas para obtener una representación más precisa de los objetos. Antes
de entrenar YOLOv5, se requiere un conjunto de datos anotado que contenga
imágenes y las etiquetas de los objetos presentes en ellas. Las etiquetas general-
mente incluyen las coordenadas de las cajas delimitadoras, la clase del objeto
y la confianza de la detección. Para mejorar la generalización del modelo y
evitar el sobreajuste, se aplican técnicas de aumento de datos durante el entre-
namiento. Estas técnicas pueden incluir el cambio de escala, rotación, recorte
y cambios de color. YOLOv5 utiliza una función de pérdida que mide la dis-
crepancia entre las predicciones del modelo y las etiquetas reales en el conjunto
de entrenamiento. La función de pérdida tiene varios términos, incluyendo la
pérdida de coordenadas (bounding box loss), la pérdida de confianza (confidence
loss) y la pérdida de clasificación (classification loss). Una vez que el modelo ha
sido entrenado, se puede utilizar para realizar inferencias en nuevas imágenes o
videos. Durante la inferencia, YOLOv5 divide la imagen en una cuadrı́cula y re-
aliza predicciones para cada celda. Se filtran las detecciones con baja confianza
y se aplican técnicas de no-maximum suppression para eliminar detecciones re-
dundantes. Una de las ventajas clave de YOLOv5 es su capacidad para realizar
detección de objetos en tiempo real con alta precisión. Esto lo hace adecuado
para aplicaciones como sistemas de vigilancia, vehı́culos autónomos y otras tar-
eas que requieren una detección rápida y confiable.

4
3 ¿QUÉ PROBELMAS PODEMOS TENER CON
YOLOV5?
-Debido al enfoque de detección en una sola pasada y al tamaño de las celdas de
la cuadrı́cula, YOLOV5 puede tener dificultades para detectar objetos pequeños
en la imagen o aquellos que están muy cercanos o superpuestos a otros objetos.
Esto puede llevar a una precisión reducida en ciertos escenarios.
-Como cualquier modelo de aprendizaje profundo, YOLOv5 puede tener dificul-
tades para generalizar a objetos o escenas que no se encuentran en el conjunto
de entrenamiento. Si el modelo no ha sido expuesto a una amplia variedad de
objetos y escenas durante el entrenamiento, su rendimiento puede ser deficiente
en situaciones desconocidas.
-El entrenamiento efectivo de YOLOv5 requiere un conjunto de datos grande y
diverso con una amplia variedad de objetos, ángulos de visión, condiciones de
iluminación, etc. Obtener y etiquetar un conjunto de datos adecuado puede ser
un proceso costoso y laborioso.
-Al igual que con cualquier arquitectura de aprendizaje profundo, YOLOv5
puede ser sensible a los hiperparámetros de entrenamiento, como la tasa de
aprendizaje, el tamaño de lote y el número de épocas. Ajustar correctamente
estos hiperparámetros puede requerir experiencia y experimentación.
-Aunque YOLOV5 es relativamente eficiente en términos de recursos computa-
cionales, todavı́a puede requerir una cantidad significativa de potencia de proce-
samiento y memoria, especialmente en tareas de detección en tiempo real en
dispositivos con recursos limitados.
-Las arquitecturas de aprendizaje profundo, incluida YOLOv5, están sujetas a

5
cambios y actualizaciones en función de la investigación en curso. Mantenerse
al dı́a con las últimas versiones y mejoras puede requerir un esfuerzo continuo
para mantener el modelo actualizado y optimizado.

4 ¿CÓMO DETECTA YOLOV8?


Funciona mediante un solo pase hacia adelante en la red neuronal, lo que permite
predecir todas las clases de objetos presentes en una imagen en una sola inferen-
cia,a lo cual hace una detección sin anclajes YOLOV8 se aleja del uso de cajas
ancla que eran una caracterı́stica importante en versiones anteriores. En lugar
de utilizar cajas ancla prediseñadas para diferentes formas y tamaños de objetos,
YOLOV8 adopta un enfoque de detección sin anclajes, lo que proporciona más
flexibilidad y capacidad de generalización para detectar objetos en diferentes
contextos. Un aumento de datos con mosaico durante la ejecución, YOLOv8
utiliza una técnica de aumento de datos llamada ”mosaico” . Esta técnica com-
bina cuatro imágenes diferentes en una sola imagen y la utiliza como entrada
para el modelo. El mosaico permite que el modelo aprenda a detectar objetos en
diferentes posiciones y situaciones de superposición parcial, lo que puede mejorar
la capacidad del modelo para generalizar a diversas situaciones en el mundo real.
Los resultados de YOLOV8 en un documento de investigación, se proporcionan
comparaciones con versiones anteriores en términos de parámetros y desempeño
en la documentación de Ultralytics. Según estas comparaciones, YOLOV8 ofrece
alrededor de un 33 por ciento más de mAP para modelos de tamaño n, y en gen-
eral, un mayor mAP en comparación con YOLOv5 y otras versiones anteriores.

6
5 ¿QUÉ PROBELMAS PODEMOS TENER CON
YOLOV8
Aunque YOLOV8 representa una evolución y mejoras en comparación con ver-
siones anteriores, aún puede tener algunos problemas y desafı́os asociados como
los siguientes:
Como muchos modelos de aprendizaje profundo, YOLOV8 también requiere una
gran cantidad de datos de entrenamiento para lograr un buen rendimiento. Si
no se tiene acceso a un conjunto de datos lo suficientemente grande y diverso, el
modelo puede tener dificultades para generalizar a nuevas situaciones y objetos
no vistos durante el entrenamiento.
La precisión y el rendimiento de YOLOV8 están fuertemente influenciados por
la calidad y cantidad de datos etiquetados disponibles para el entrenamiento.
Si los datos están etiquetados incorrectamente o insuficientemente, el modelo
puede tener dificultades para detectar objetos correctamente.
Los modelos de detección de objetos, incluido YOLOV8, a menudo pueden
tener dificultades para detectar objetos pequeños o altamente superpuestos, es-
pecialmente si estos objetos representan una pequeña parte de la imagen total.
Mejorar la detección de estos objetos puede requerir técnicas de aumento de
datos adecuadas y ajustes de hiperparámetros.
Como cualquier modelo de detección de objetos, YOLOV8 puede tener falsos
positivos (objetos que se detectan incorrectamente) y falsos negativos (obje-
tos que no se detectan cuando deberı́an). Esto puede ser especialmente prob-
lemático en aplicaciones crı́ticas donde la precisión es fundamental.
Aunque YOLOV8 es más rápido que algunas de sus versiones anteriores, todavı́a

7
puede enfrentar desafı́os para lograr una detección en tiempo real en imágenes
de alta resolución o en escenarios con múltiples objetos y alta complejidad vi-
sual.
La configuración y ajuste de hiperparámetros para YOLOV8 pueden ser un
desafı́o, especialmente para usuarios con poca experiencia en el campo de la
detección de objetos y el aprendizaje profundo.

6 CONCLUSIONES DE YOLOV5 Y YOLOV8


En conclusión, el uso de YOLOv5 para el conteo y detección de personas en
tiempo real es una solución prometedora y efectiva en el campo de la visión
por computadora. Este enfoque permite la detección precisa de personas y el
seguimiento de su movimiento en un flujo continuo de imágenes o en un video
en tiempo real. Al contar con un modelo preentrenado en un conjunto de datos
diverso, YOLOv5 es capaz de identificar y localizar personas con alta precisión,
adaptándose a diferentes condiciones de iluminación, tamaños y poses. La prin-
cipal ventaja de utilizar YOLOv5 radica en su velocidad y eficiencia, lo que lo
hace adecuado para aplicaciones en tiempo real. El modelo puede procesar los
cuadros de video o las imágenes a una velocidad considerable, lo que permite una
detección y un conteo rápidos de personas en tiempo real. Además, YOLOv5
es capaz de lidiar con situaciones desafiantes, como la presencia de multitudes,
cambios en el entorno y ocultamiento parcial de personas.
Y por YOLOv8 ha demostrado ser una tecnologı́a revolucionaria con un im-
pacto global significativo en diversas industrias y áreas de interés. Su capaci-
dad para realizar detección de objetos en tiempo real con alta eficiencia y pre-
cisión ha abierto un sinfı́n de posibilidades en el análisis de datos, la mejora
del rendimiento, la automatización y la seguridad en una amplia variedad de
aplicaciones. Desde el ámbito deportivo hasta la medicina, la industria y la
robótica, YOLOv8 ha demostrado ser una herramienta versátil y valiosa que
permite a los equipos, analistas y sistemas tomar decisiones más informadas y
desarrollar estrategias más efectivas. Su implementación ha mejorado la forma
en que se abordan los desafı́os en estas áreas, proporcionando una nueva era
de información y conocimiento en el mundo moderno. Con su naturaleza de
código abierto y la continua comunidad de desarrollo, se espera que YOLOv8
siga evolucionando y abriendo nuevas oportunidades para mejorar la eficiencia y
la precisión en una amplia variedad de campos. En última instancia, YOLOv8
está cambiando la forma en que interactuamos con la tecnologı́a y la forma en
que abordamos problemas complejos, y su impacto seguirá siendo relevante y
transformador en el futuro.

También podría gustarte