Resuelva el error IndexError: índice de tupla fuera de rango

Recientemente, ocurrió un error al ejecutar el código yolov4_deepsort:

Traceback (most recent call last):
  File "D:/yolov4_deepsort/pytorch-yolov4-deepsort-main/yolov4_deepsort.py", line 174, in <module>
    vdo_trk.run()
  File "D:/yolov4_deepsort/pytorch-yolov4-deepsort-main/yolov4_deepsort.py", line 128, in run
    outputs = self.deepsort.update(new_bbox, cls_conf, im)
  File "D:\yolov4_deepsort\pytorch-yolov4-deepsort-main\deep_sort\deep_sort.py", line 39, in update
    bbox_tlwh = self._xywh_to_tlwh(bbox_xywh)
  File "D:\yolov4_deepsort\pytorch-yolov4-deepsort-main\deep_sort\deep_sort.py", line 87, in _xywh_to_tlwh
    bbox_tlwh = np.zeros((bbox_xywh.shape[0],bbox_xywh.shape[1]))
IndexError: tuple index out of range
<class 'IndexError'> tuple index out of range <traceback object at 0x00000183BD7C5048>

Según la solución propuesta por el jefe en el área de comentarios, la solución se puede resolver agregando condiciones de calificación antes de llamar a deepsort.update en la línea 128 de yolov4_deepsort.py

Agregue la condición de calificación si new_bbox! = []: antes de salidas = self.deepsort.update(new_bbox, cls_conf, im):

if new_bbox != []:
   outputs = self.deepsort.update(new_bbox, cls_conf, im)

Fuente del código YOLOv4-deepsort: https://blog.csdn.net/weixin_38757163/article/details/111150364?spm=1001.2014.3001.5501

おすすめ

転載: blog.csdn.net/weixin_47214888/article/details/130124254