La pérdida de peso de la detección de objetivos YOLOv5 y la relación con el tamaño de la imagen

1. La pérdida de peso de la detección de objetivos YOLOv5

Hay tres pérdidas en YOLOv5 son box, obj, cls

Los valores básicos se pueden establecer en el archivo de configuración de hiperparámetros hyp.*.yaml, por ejemplo

box: 0.05
cls: 0.5
obj: 1

Al entrenar, actualice en train.py

hyp['box'] *= 3 / nl  # scale to layers
hyp['cls'] *= nc / 80 * 3 / nl  # scale to classes and layers
hyp['obj'] *= (imgsz / 640) ** 2 * 3 / nl  # scale to image size and layers

Se puede ver que la pérdida está relacionada con nl (número de capas de detección, el número de capas de la capa de detección, aquí es 3) y el tamaño de la imagen, es fácil entender que está relacionado con las capas porque la suma de se pierden múltiples capas. Lo relacionado con el tamaño de la imagen debe explorarse más a fondo.

nl = model.model[-1].nl  # number of detection layers (used for scaling hyp['obj'])


Luego, el respectivo peso loss.py se multiplicará durante el cálculo de la pérdida

lbox *= self.hyp['box']
lobj *= self.hyp['obj']
lcls *= self.hyp['cls']

Los cuadros de menos de 2 píxeles se filtran durante el entrenamiento

# Filter
i = (wh0 < 3.0).any(1).sum()
if i:
    print(f'{prefix}WARNING: Extremely small objects found. {i} of {len(wh0)} labels are < 3 pixels in size.')
wh = wh0[(wh0 >= 2.0).any(1)]  # filter > 2 pixels

2. La relación entre la pérdida de objetos y el tamaño de la imagen

la pérdida de obj se ajusta según el tamaño de la imagen

hyp['obj'] *= (imgsz / 640) ** 2 * 3. / nl

Eche un vistazo a los pesos respectivos cuando los tamaños de imagen son 1280, 640, 320 y 224

Tamaños de imagen 1280

nl: 3
hyp['box']: 0.05
hyp['obj']: 4.0
hyp['cls']: 0.5

Tamaños de imagen 640

nl: 3
hyp['box']: 0.05
hyp['obj']: 1.0
hyp['cls']: 0.5

Tamaños de imagen 320

nl: 3
hyp['box']: 0.05
hyp['obj']: 0.25
hyp['cls']: 0.5

Tamaños de imagen 224

nl: 3
hyp['box']: 0.05
hyp['obj']: 0.12249999999999998
hyp['cls']: 0.5

referencia:

https://blog.csdn.net/flyfish1986/article/details/116832354

Supongo que te gusta

Origin blog.csdn.net/dou3516/article/details/130322697
Recomendado
Clasificación