windows下基于YOLOX改进的YOLOY报错:ZeroDivisionError: float division by zero

问题遇到的现象和发生背景

想要尝试运行一篇基于YOLOX改进的YOLOV的paper 的程序文章
论文:https://arxiv.org/pdf/2208.09686.pdf
代码:https://github.com/YuHengsss/YOLOV
运行它的demo 的时候出现了以下问题,我的系统为windows11。

用代码块功能插入代码,请勿粘贴截图
C:\ketixiangguan\envs\pytorch\python.exe F:/YOLOV-master/tools/vid_demo.py
2022-12-03 16:22:42.895 | INFO     | __main__:main:246 - Args: Namespace(camid=0, ckpt='F:/YOLOV-master/yolov_s.pth', conf=0.05, dataset='vid', demo='video', device='gpu', exp_file='F:/YOLOV-master/exps/yolov/yolov_s.py', experiment_name='yolov_s', fp16=True, fuse=False, gframe=32, legacy=False, name=None, nms=0.5, output_dir='', path='F:/YOLOV-master/jiwawashiping.mp4', save_result=True, trt=False, tsize=576)
C:\ketixiangguan\envs\pytorch\lib\site-packages\torch\functional.py:568: UserWarning: torch.meshgrid: in an upcoming release, it will be required to pass the indexing argument. (Triggered internally at  C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\TensorShape.cpp:2228.)
  return _VF.meshgrid(tensors, **kwargs)  # type: ignore[attr-defined]
2022-12-03 16:22:44.247 | INFO     | __main__:main:256 - Model Summary: Params: 9.84M, Gflops: 25.65
2022-12-03 16:22:45.449 | INFO     | __main__:main:267 - loading checkpoint
2022-12-03 16:22:45.543 | INFO     | __main__:main:271 - loaded checkpoint done.
Traceback (most recent call last):
  File "F:/YOLOV-master/tools/vid_demo.py", line 302, in <module>
    main(exp, args)
  File "F:/YOLOV-master/tools/vid_demo.py", line 295, in main
    imageflow_demo(predictor, vis_folder, current_time, args)
  File "F:/YOLOV-master/tools/vid_demo.py", line 188, in imageflow_demo
    ratio = min(predictor.test_size[0] / height, predictor.test_size[1] / width)
ZeroDivisionError: float division by zero

Process finished with exit code 1
def imageflow_demo(predictor, vis_folder, current_time, args):
    gframe = args.gframe
    cap = cv2.VideoCapture(args.path)
    width = cap.get(cv2.CAP_PROP_FRAME_WIDTH)  # float
    height = cap.get(cv2.CAP_PROP_FRAME_HEIGHT)  # float
    fps = cap.get(cv2.CAP_PROP_FPS)
    save_folder = os.path.join(
        vis_folder, time.strftime("%Y_%m_%d_%H_%M_%S", current_time)
    )

    os.makedirs(save_folder, exist_ok=True)


**
    ratio = min(predictor.test_size[0] / height, predictor.test_size[1] / width)
**


 save_path = os.path.join(save_folder, args.path.split("/")[-1])
    logger.info(f"video save_path is {save_path}")
    vid_writer = cv2.VideoWriter(
        save_path, cv2.VideoWriter_fourcc(*"mp4v"), fps, (int(width), int(height))
    )
    frames = []
    outputs = []
    ori_frames = []
    while True:
        ret_val, frame = cap.read()
        if ret_val:
            ori_frames.append(frame)
            frame, _ = predictor.preproc(frame, None, exp.test_size)
            frames.append(torch.tensor(frame))
        else:
            break
    res = []
    frame_len = len(frames)
    index_list = list(range(frame_len))
    random.seed(41)
    random.shuffle(index_list)
    random.seed(41)
    random.shuffle(frames)

    split_num = int(frame_len / (gframe))#

    for i in range(split_num):
        res.append(frames[i * gframe:(i + 1) * gframe])
    res.append(frames[(i + 1) * gframe:])

    for ele in res:
        if ele == []: continue
        ele = torch.stack(ele)
        t0 = time.time()
        outputs.extend(predictor.inference(ele))
    outputs = [j for _,j in sorted(zip(index_list,outputs))]
    for output,img in zip(outputs,ori_frames[:len(outputs)]):

        result_frame = predictor.visual(output,img,ratio,cls_conf=args.conf)
        if args.save_result:
            vid_writer.write(result_frame)

运行结果及报错内容

img

我的解答思路和尝试过的方法
我想要达到的结果

复现YOLOV的全过程

我可以辅助你完成