为什么正常运行一下之后出现报错:IndexError: list index out of range

Viewed 217

重现步骤

1.运行下面的代码(就是yolo大作战中的)
from libs.PipeLine import PipeLine, ScopedTiming
from libs.YOLO import YOLOv5
import os,sys,gc
import ulab.numpy as np
import image

if name=="main":
# 显示模式,默认"hdmi",可以选择"hdmi"和"lcd"
display_mode="hdmi"
rgb888p_size=[1260,720]
if display_mode=="hdmi":
display_size=[1920,1080]
else:
display_size=[800,480]
kmodel_path="/data/best.kmodel"
labels = ['电池','药片/药板', '瓶子', '金属瓶子','土豆块','胡萝卜块','白萝卜块','砖块','鹅卵石','纸杯']
confidence_threshold = 0.2
nms_threshold=0.45
mask_threshold=0.5
model_input_size=[320,320]
# 初始化PipeLine
pl=PipeLine(rgb888p_size=rgb888p_size,display_size=display_size,display_mode=display_mode)
pl.create()
# 初始化YOLOv5实例
yolo=YOLOv5(task_type="segment",mode="video",kmodel_path=kmodel_path,labels=labels,rgb888p_size=rgb888p_size,model_input_size=model_input_size,display_size=display_size,conf_thresh=confidence_threshold,nms_thresh=nms_threshold,mask_thresh=mask_threshold,max_boxes_num=5,debug_mode=0)
yolo.config_preprocess()
try:
while True:
os.exitpoint()
with ScopedTiming("total",1):
# 逐帧推理
img=pl.get_frame()
res=yolo.run(img)
yolo.draw_result(res,pl.osd_img)
pl.show_image()
gc.collect()
except Exception as e:
sys.print_exception(e)
finally:
yolo.deinit()
pl.destroy()

    2.运行之后,正常运行一下之后出现了上面的报错
    3.还出现了没有框的现象,请问大佬们这该怎么解决
    4.有一次运行还出现了识别不准确,框过于多的问题

期待结果和实际结果

软硬件版本信息

错误日志

尝试解决过程

补充材料

3 Answers

大概多久会出现同样的问题,每次必现吗

给出新的onnx输出看看

嗯是的

是不是模型有问题,看一下onnx模型的输出

有可能,你改过代码吗

这个看着是对的呀

对,然后用那个脚本转化之后还是超出范围,是我canmv代码的问题吗?