• YOLOv8检测香蕉


    关注 码龄 粉丝数 原力等级 -- 被采纳 被点赞 采纳率 温承瑜 2024-05-28 22:41 采纳率: 66.7% 浏览 5 首页/ 编程语言 / YOLOv8检测香蕉 python 我通过学习https://www.bilibili.com/video/BV1nb4y1A71X/?spm_id_from=333.880.my_history.page.click&vd_source=e07aba8865a9e64705ac52e3cc7cd550粗略的使用了YOLOv8训练模型跑成功了,但是验证和预测的代码我照着GitHub的改了之后。验证能正常运行(但我不知道算不算成功,因为我看别人的是能看到准确率的),但是预测的代码报错。有点看不懂是什么原因。感觉是找不到图片(? from ultralytics import YOLO # Load a model model = YOLO("C:\\Users\\17187\\Desktop\\ultralytics-main\\yolov8n.pt") model = YOLO("C:\\Users\\17187\\Desktop\\ultralytics-main\\yolov8n.pt") metrics = model.val() # evaluate model performance on the validation set from PIL import Image from ultralytics import YOLO model = YOLO("C:\\Users\\17187\\Desktop\\ultralytics-main\\runs\detect\\train4\\weights\\best.pt") # accepts all formats - image/dir/Path/URL/video/PIL/ndarray. 0 for webcam results = model.predict(source="0") results = model.predict(source="folder", show=True) # Display preds. Accepts all YOLO predict arguments # from PIL im1 = Image.open("C:\\Users\\17187\\Desktop\\ultralytics-main\\ultralytics\\cfg\\datasets\\data2\\images\\val\\1.png") results = model.predict(source=im1, save=True) # save plotted images 展开全部 收起 写回答 好问题 0 提建议 追加酬金 关注问题 微信扫一扫 点击复制链接 分享 邀请回答 编辑 收藏 删除 结题 收藏 举报 追加酬金 (90%的用户在追加酬金后获得了解决方案) 当前问题酬金 ¥ 0 (可追加 ¥500) ¥ 15¥ 20¥ 50¥ 100¥ 200 支付方式 扫码支付 二维码出错 点击刷新 支付金额 15 元 提供问题酬金的用户不参与问题酬金结算和分配 支付即为同意 《付费问题酬金结算规则》 结题 再想想 删除 再等等

    3条回答 默认 最新

    • 专家-赤兔[在线] 全栈领域优质创作者 2024-05-28 22:41
      关注

      引自免费微信小程序:皆我百晓生

      看起来你在尝试使用YOLOv8进行图像的预测,但是在执行model.predict()时遇到了错误。这个错误是因为YOLOv8在处理输入源时可能没有找到正确的路径或数据。让我们一步步地解决这个问题。

      首先,确保你的环境变量设置正确,并且已经安装了所需的库,包括torch, ultralytics, 和 Pillow。如果你还没有安装这些库,可以使用以下命令安装:

      pip install torch torchvision pillow ultralytics
      

      接下来,我们检查一下预测部分的代码。你使用的代码片段中,有两处调用了model.predict()方法。先从第一个例子开始,它尝试从摄像头(0)捕获视频流并进行预测:

      # 这一行会从摄像头0获取视频流作为输入
      results = model.predict(source="0")
      

      这行代码应该工作,除非你的摄像头未连接或不可用。如果一切正常,你应该能看到实时的物体检测结果。

      然后是第二个例子,它试图从一个指定的文件夹中读取图像并显示预测结果:

      results = model.predict(source="folder", show=True)
      

      这里的问题可能是路径的问题,你需要提供一个实际存在的包含图像的文件夹路径。例如,如果你有一个名为"banana_images"的文件夹,其中包含香蕉的图片,你可以这样修改:

      results = model.predict(source="C:\\Users\\17187\\Desktop\\ultralytics-main\\banana_images", show=True)
      

      最后,第三个例子是从PIL图像对象中获取预测结果:

      im1 = Image.open("C:\\Users\\17187\\Desktop\\ultralytics-main\\ultralytics\\cfg\\datasets\\data2\\images\\val\\1.png")
      results = model.predict(source=im1, save=True)
      

      确保提供的图片路径是正确的。如果图片存在,这段代码将保存带有预测结果的图像到默认目录。

      现在,根据上述分析,你可以逐个检查你的代码中的路径是否正确,并尝试调整它们。如果你仍然遇到问题,可能需要检查YOLOv8模型是否针对香蕉类别进行了训练,以及其配置文件是否正确设置了标签映射。如果模型训练过程中没有包含香蕉类别,那么它可能无法正确识别香蕉。确保训练数据集中包含香蕉的标注数据,并且模型的配置文件(.yaml文件)中包含了相应的类名。

      评论 编辑记录
      温承瑜 2024-05-30 21:07

      电脑pycharm用不了了,打算去kaggle试试😿

      回复
    • 阿里嘎多学长 2024-05-28 22:41
      关注

      以下内容由CHATGPT及阿里嘎多学长共同生成、有用望采纳:


      【解题思路】:使用YOLOv8模型进行图像识别,训练数据集包含香蕉图片,调整参数优化检测速度。

      评论
      温承瑜 2024-05-30 21:09

      电脑pycharm用不了了,打算去kaggle试试😿

      回复
    • 码农阿豪@新空间代码工作室 Java领域优质创作者 2024-05-28 22:41
      关注
      让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言
      问题:学习了 YOLOv8 后,训练模型成功,但验证能不能算成功不确定,而且预测的代码报错,可能是找不到图片。请问如何解决这个问题? 回答:
      1. 验证是否成功 可以通过调用 model.val() 来评估模型在验证集上的性能,该函数可能会返回准确率等指标。如果函数返回了指标,说明验证成功。 例如:
      from ultralytics import YOLO
      # Load a model
      model = YOLO("C:\\Users\\17187\\Desktop\\ultralytics-main\\yolov8n.pt")
      # Evaluate model performance on the validation set
      metrics = model.val()
      print(metrics)
      
      1. 解决预测代码报错 报错可能是因为预测代码找不到图片,可以检查一下图片路径是否正确。此外,还有可能是图片格式或尺寸不符合YOLOv8要求,需要进行相关的处理。 例如:
      from PIL import Image
      from ultralytics import YOLO
      # Load a model
      model = YOLO("C:\\Users\\17187\\Desktop\\ultralytics-main\\runs\detect\\train4\\weights\\best.pt")
      # Load an image
      im1 = Image.open("C:\\Users\\17187\\Desktop\\ultralytics-main\\ultralytics\\cfg\\datasets\\data2\\images\\val\\1.png")
      # Predict objects in the image
      results = model.predict(source=im1, save=True)  # save plotted images
      

      注意:上述代码中的图片路径需要正确指定,否则会出现报错。

      评论
      温承瑜 2024-05-30 21:09

      电脑pycharm用不了了,打算去kaggle试试😿

      回复
    编辑
    预览

    报告相同问题?

  • 相关阅读:
    Java Math.sqrt()具有什么功能呢?
    昇腾CANN 7.0 黑科技:大模型推理部署技术解密
    DolphinScheduler安装部署
    Python中的del用法
    OpenGL ES学习(8)——剪裁测试认识
    ElasticSearch搭建集群详解
    贪心 + 前后缀分解 + 动态规划(123. 买卖股票的最佳时机 III)
    C++基本语法和注释
    8中间件-Redis、MQ---基本
    在HbuilderX中,@tap和@click的含义 与 区别 及 使用方式
  • 原文地址:https://ask.csdn.net/questions/8110825