FileNotFoundError: C:\Users\aoqia\Desktop\ultralytics-main\ultralytics\000490.jpg does not exist

文章讲述了在运行YOLOV8的predict.py时遇到的图片找不到的错误,具体表现为FileNotFoundError。作者提供了两种解决方案:1)将图片移动到assets文件夹;2)修改predict.py中的源代码,使用绝对路径指定图片位置。修改后程序成功运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述:在运行YOLOV8的predict.py,出现找不到图片的问题。

具体错误如下所示:

Traceback (most recent call last):
  File "C:/Users/aoqia/Desktop/ultralytics-main/ultralytics/yolo/v8/detect/predict.py", line 101, in <module>
    predict()
  File "C:/Users/aoqia/Desktop/ultralytics-main/ultralytics/yolo/v8/detect/predict.py", line 97, in predict
    predictor.predict_cli()
  File "C:\Users\aoqia\Desktop\ultralytics-main\ultralytics\yolo\engine\predictor.py", line 119, in predict_cli
    for _ in gen:  # running CLI inference without accumulating any outputs (do not modify)
  File "C:\Users\aoqia\anaconda3\envs\pytorch\lib\site-packages\torch\autograd\grad_mode.py", line 44, in generator_context
    response = gen.send(None)
  File "C:\Users\aoqia\Desktop\ultralytics-main\ultralytics\yolo\engine\predictor.py", line 146, in stream_inference
    self.setup_source(source if source is not None else self.args.source)
  File "C:\Users\aoqia\Desktop\ultralytics-main\ultralytics\yolo\engine\predictor.py", line 128, in setup_source
    self.dataset = load_inference_source(source=source,
  File "C:\Users\aoqia\Desktop\ultralytics-main\ultralytics\yolo\data\build.py", line 186, in load_inference_source
    dataset = LoadImages(source,
  File "C:\Users\aoqia\Desktop\ultralytics-main\ultralytics\yolo\data\dataloaders\stream_loaders.py", line 188, in __init__
    raise FileNotFoundError(f'{p} does not exist')
FileNotFoundError: C:\Users\aoqia\Desktop\ultralytics-main\ultralytics\000490.jpg does not exist

解决办法1:这个图片是需要放到assets这个文件夹才行。因为predict.py是从assets文件夹中找图片的,放到根目录,肯定找不到了。解决之后第二个图所示。

图1

图2

解决办法2:

把后面的代码修改

源代码是这个


def predict(cfg=DEFAULT_CFG, use_python=False):
    model = cfg.model or 'best.pt'
    source = cfg.source if cfg.source is not None else ROOT / 'assets/000490.jpg' if (ROOT / 'assets').exists() \
        else 'https://ultralytics.com/images/bus.jpg'

    args = dict(model=model, source=source)
    if use_python:
        from ultralytics import YOLO
        YOLO(model)(**args)
    else:
        predictor = DetectionPredictor(overrides=args)
        predictor.predict_cli()

改后的代码是这个:注意两点,图片路径必须是绝对路径,并且python路径是双斜杠。之后就运行通了。如图3就是运行通的结果图。

def predict(cfg=DEFAULT_CFG, use_python=False):
    model = 'best.pt'
    source =  'C:\\Users\\aoqia\\Desktop\\ultralytics-main\\000490.jpg'
    args = dict(model=model, source=source)
    if use_python:
        from ultralytics import YOLO
        YOLO(model)(**args)
    else:
        predictor = DetectionPredictor(overrides=args)
        predictor.predict_cli()

图3 

E:\anaconda\envs\cycy\python.exe C:\Users\14480\Desktop\毕设\ultralytics\ultralytics-main\train.py New https://pypi.org/project/ultralytics/8.3.90 available 😃 Update with 'pip install -U ultralytics' Ultralytics YOLOv8.2.50 🚀 Python-3.10.16 torch-2.6.0+cu118 CUDA:0 (GeForce GTX 1650 Ti, 4096MiB) Traceback (most recent call last): File "C:\Users\14480\Desktop\毕设\ultralytics\ultralytics-main\ultralytics\engine\trainer.py", line 551, in get_dataset data = check_det_dataset(self.args.data) File "C:\Users\14480\Desktop\毕设\ultralytics\ultralytics-main\ultralytics\data\utils.py", line 269, in check_det_dataset file = check_file(dataset) File "C:\Users\14480\Desktop\毕设\ultralytics\ultralytics-main\ultralytics\utils\checks.py", line 509, in check_file raise FileNotFoundError(f"'{file}' does not exist") FileNotFoundError: 'C://Users//14480//Desktop//毕设//ultralytics//ultralytics - main//dataset//data.yaml' does not exist The above exception was the direct cause of the following exception: Traceback (most recent call last): File "C:\Users\14480\Desktop\毕设\ultralytics\ultralytics-main\train.py", line 12, in <module> model.train(data="C://Users//14480//Desktop//毕设//ultralytics//ultralytics - main//dataset//data.yaml", File "C:\Users\14480\Desktop\毕设\ultralytics\ultralytics-main\ultralytics\engine\model.py", line 644, in train self.trainer = (trainer or self._smart_load("trainer"))(overrides=args, _callbacks=self.callbacks) File "C:\Users\14480\Desktop\毕设\ultralytics\ultralytics-main\ultralytics\engine\trainer.py", line 133, in __init__ self.trainset, self.testset = self.get_dataset() File "C:\Users\14480\Desktop\毕设\ultralytics\ultralytics-main\ultralytics\engine\trainer.py", line 555, in get_dataset raise RuntimeError(emojis(f"Dataset '{clean_url(self.args.data)}' error ❌ {e}")) from e RuntimeError: Dataset 'C://Users/14480/Desktop//ultralytics/ultralytics - main/dataset/data.yaml' error 'C://Users//14480//Desktop////ultralytics//ultralytics - main//dataset//data.yaml' does not exist engine\trainer: task=detect, mode=train, model=ultralytics/cfg/models/v8/yolov8n.yaml, data=C://Users//14480//Desktop//毕设//ultralytics//ultralytics - main//dataset//data.yaml, epochs=300, time=None, patience=100, batch=32, imgsz=640, save=True, save_period=-1, cache=False, device=None, workers=8, project=runs/train, name=exp6, exist_ok=False, pretrained=True, optimizer=SGD, verbose=True, seed=0, deterministic=True, single_cls=False, rect=False, cos_lr=False, close_mosaic=0, resume=False, amp=True, fraction=1.0, profile=False, freeze=None, multi_scale=False, overlap_mask=True, mask_ratio=4, dropout=0.0, val=True, split=val, save_json=False, save_hybrid=False, conf=None, iou=0.7, max_det=300, half=False, dnn=False, plots=True, source=None, vid_stride=1, stream_buffer=False, visualize=False, augment=False, agnostic_nms=False, classes=None, retina_masks=False, embed=None, show=False, save_frames=False, save_txt=False, save_conf=False, save_crop=False, show_labels=True, show_conf=True, show_boxes=True, line_width=None, format=torchscript, keras=False, optimize=False, int8=False, dynamic=False, simplify=False, opset=None, workspace=4, nms=False, lr0=0.01, lrf=0.01, momentum=0.937, weight_decay=0.0005, warmup_epochs=3.0, warmup_momentum=0.8, warmup_bias_lr=0.1, box=7.5, cls=0.5, dfl=1.5, pose=12.0, kobj=1.0, label_smoothing=0.0, nbs=64, hsv_h=0.015, hsv_s=0.7, hsv_v=0.4, degrees=0.0, translate=0.1, scale=0.5, shear=0.0, perspective=0.0, flipud=0.0, fliplr=0.5, bgr=0.0, mosaic=1.0, mixup=0.0, copy_paste=0.0, auto_augment=randaugment, erasing=0.4, crop_fraction=1.0, cfg=None, tracker=botsort.yaml, save_dir=runs\train\exp6 进程已结束,退出代码为 1
03-15
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

神笔馬良

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值