YOLOv8 mac-intel芯片 部署指南

🚀 在 Jupyter Notebook 和 PyCharm 中使用 Conda 虚拟环境(YOLOv8 部署指南,Python 3.9)

YOLOv8 是 Ultralytics 开源的最新目标检测模型,轻量高效,支持分类、检测、分割等多种任务。
在 Mac(Intel 芯片)上部署 YOLOv8,我们推荐用 conda 虚拟环境(Python 3.9) 来管理依赖,并在 Jupyter / PyCharm 中使用。

这篇文章带你完整走一遍:
👉 环境安装 → 模型手动下载 → Jupyter 配置 → PyCharm 配置 → 验证运行。


🐍 一、创建 Conda 虚拟环境并安装 YOLOv8

  1. 创建环境(指定 Python 3.9)

conda create -n yolov8 python=3.9 -y
conda activate yolov8
  1. 安装依赖

pip install torch torchvision torchaudio
pip install ultralytics
pip install jupyter ipykernel

⚠️ 说明:
YOLOv8 默认会从 GitHub 下载模型文件(如 yolov8n.pt),但国内经常超时。推荐 手动下载模型文件 并放在本地。


📥 二、手动下载 YOLOv8 模型和测试图片

  1. 模型文件下载地址(Ultralytics 官方)

  • yolov8n.pt (Nano版,适合测试)

  • 更多模型

下载后放到本地路径,例如:

/Users/marks/work/yolo/models/yolov8n.pt
  1. 测试图片下载
    例如官方示例图片:

  • bus.jpg

保存到:

/Users/marks/work/yolo/images/bus.jpg

📓 三、在 Jupyter Notebook 中使用 yolov8 环境

  1. 把环境注册为 Jupyter 内核:

python -m ipykernel install --user --name yolov8 --display-name "Python (yolov8)"
  1. 启动 Jupyter:

jupyter notebook
  1. 新建 Notebook → 选择内核 Python (yolov8)

  2. 测试 YOLOv8 运行:

from ultralytics import YOLO# 加载本地模型
model = YOLO("/Users/marks/work/yolo/models/yolov8n.pt")# 测试推理
results = model("/Users/marks/work/yolo/images/bus.jpg")
results.show()  # 显示预测结果

💻 四、在 PyCharm 中使用 yolov8 环境

  1. 打开 Preferences → Project: your_project → Python Interpreter

  2. 选择 Add... → Conda Environment → Existing environment

  3. 指定解释器路径,例如:

/Users/marks/anaconda3/envs/yolov8/bin/python
  1. 点击确认,PyCharm 就会用 yolov8 环境。


✅ 五、验证环境是否正常

无论在 Jupyter 还是 PyCharm,运行以下代码验证环境:

import torch
print("PyTorch 版本:", torch.__version__)
print("CUDA 是否可用:", torch.cuda.is_available())from ultralytics import YOLO
model = YOLO("/Users/marks/work/yolo/models/yolov8n.pt")
print("YOLOv8 模型加载成功 ✅")

如果能正确输出,就说明部署成功啦 🚀


🖼️ 六、YOLOv8 模型测试(本地模型 + 图片)

当环境配置完成后,我们可以用 本地模型文件测试图片 来验证 YOLOv8 是否正常运行。


1. 命令行验证(推荐快速测试)

# === 验证安装 (使用本地模型和图片) =================
MODEL_PATH="/Users/emilie/work/yolo/models/yolov8n.pt"
IMAGE_PATH="/Users/emilie/work/yolo/images/bus.jpg"echo ">>> 使用本地权重和图片验证 YOLOv8 安装是否成功"
yolo predict model=$MODEL_PATH source=$IMAGE_PATHecho ">>> 如果在 runs/predict 下看到 bus.jpg 检测结果,说明环境安装成功!"

运行后,YOLOv8 会自动在 runs/predict/ 下生成预测结果图片,打开即可看到目标检测效果 ✅


2. Python 代码验证(适合二次开发)

from ultralytics import YOLO# 加载本地模型(手动下载的 yolov8n.pt)
model = YOLO("/Users/marks/work/yolo/models/yolov8n.pt")# 使用本地图片进行推理
results = model("/Users/marks/work/yolo/images/bus.jpg")# 显示预测结果
results.show()# 保存预测结果到指定目录
results.save("/Users/marks/work/yolo/results/")

模型输出图片结果:


❓ 七、常见问题(FAQ)

Q1: YOLOv8 模型下载失败怎么办?

A:

  • 直接去 Ultralytics 官方 Release 手动下载 .pt 文件;

  • 把模型放到本地路径,例如:

    /Users/marks/work/yolo/models/yolov8n.pt
    
  • 在代码里手动加载:

    model = YOLO("/Users/marks/work/yolo/models/yolov8n.pt")
    

Q2: CUDA 是否可用?如何在 CPU 上运行?

A:

  • Mac Intel 芯片 没有 CUDA 支持,只能用 CPU 推理。

  • 可以通过以下代码检查:

    import torch
    print(torch.cuda.is_available())  # 输出 False 表示 CPU 模式
    
  • 如果需要 GPU 加速,可以考虑换到支持 CUDA 的 Linux/Windows + NVIDIA GPU 环境。


Q3: PyCharm 里没有找到 yolov8 环境怎么办?

A:

  • 打开 Preferences → Project → Python Interpreter → Add...

  • 选择 Conda Environment → Existing environment

  • 浏览到路径:

    /Users/marks/anaconda3/envs/yolov8/bin/python
    
  • 保存即可。


Q4: Jupyter Notebook 内核没有 yolov8 怎么办?

A:

  • 确保已经执行过:

    python -m ipykernel install --user --name yolov8 --display-name "Python (yolov8)"
    
  • 重新启动 Jupyter:

    jupyter notebook
    
  • 在 Notebook 界面 Kernel → Change Kernel 选择 "Python (yolov8)"。


Q5: 环境太大了,能不能只安装最小依赖?

A:
可以只装必要依赖(CPU 版本):

pip install torch ultralytics jupyter

这样体积更小,适合轻量测试。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/96590.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/96590.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【高等数学】第十一章 曲线积分与曲面积分——第六节 高斯公式 通量与散度

上一节:【高等数学】第十一章 曲线积分与曲面积分——第五节 对坐标的曲面积分 总目录:【高等数学】 目录 文章目录1. 高斯公式2. 沿任意闭曲面的曲面积分为零的条件3. 通量与散度1. 高斯公式 设空间区域ΩΩΩ是由分片光滑的闭曲面ΣΣΣ所围成&#x…

IDEA试用过期,无法登录,重置方法

IDEA过期,重置方法: IntelliJ IDEA 2024.2.0.2 (亲测有效) 最新Idea重置办法!: 方法一: 1、删除C:\Users\{用户名}\AppData\Local\JetBrains\IntelliJIdea2024.2 下所有文件(注意:是子目录全部删除) 2、删除C:\Users\{用户名}\App…

创建用户自定义桥接网络并连接容器

1.创建用户自定义的 alpine-net 网络[roothost1 ~]# docker network create --driver bridge alpine-net 9f6d634e6bd7327163a9d83023e435da6d61bc6cf04c9d96001d1b64eefe4a712.列出 Docker 主机上的网络[roothost1 ~]# docker network ls NETWORK ID NAME DRIVER …

Vue3 + Vite + Element Plus web转为 Electron 应用,解决无法登录、隐藏自定义导航栏

如何在vue3 Vite Element Plus搭好的架构下转为 electron应用呢? https://www.electronjs.org/zh/docs/latest/官方文档 https://www.electronjs.org/zh/docs/latest/ 第一步:安装 electron相关依赖 npm install electron electron-builder concurr…

qt QAreaLegendMarker详解

1. 概述QAreaLegendMarker 是 Qt Charts 模块中的一部分,用于在图例(Legend)中表示 QAreaSeries 的标记。它负责显示区域图的图例项,通常包含区域颜色样例和对应的描述文字。图例标记和对应的区域图关联,显示区域的名称…

linux 函数 kstrtoul

kstrtoul 函数概述 kstrtoul 是 Linux 内核中的一个函数&#xff0c;用于将字符串转换为无符号长整型&#xff08;unsigned long&#xff09;。该函数定义在 <linux/kernel.h> 头文件中&#xff0c;常用于内核模块中解析用户空间传递的字符串参数。 函数原型 int kstrtou…

LLM(三)

一、人类反馈的强化学习&#xff08;RLHF&#xff09;微调的目标是通过指令&#xff0c;包括路径方法&#xff0c;进一步训练你的模型&#xff0c;使他们更好地理解人类的提示&#xff0c;并生成更像人类的回应。RLHF&#xff1a;使用人类反馈微调型语言模型&#xff0c;使用强…

DPO vs PPO,偏好优化的两条技术路径

1. 背景在大模型对齐&#xff08;alignment&#xff09;里&#xff0c;常见的两类方法是&#xff1a;PPO&#xff1a;强化学习经典算法&#xff0c;OpenAI 在 RLHF 里用它来“用奖励模型更新策略”。DPO&#xff1a;2023 年提出的新方法&#xff08;参考论文《Direct Preferenc…

BLE6.0信道探测,如何重构物联网设备的距离感知逻辑?

在物联网&#xff08;IoT&#xff09;无线通信技术快速渗透的当下&#xff0c;实现人与物、物与物之间对物理距离的感知响应能力已成为提升设备智能高度与人们交互体验的关键所在。当智能冰箱感知用户靠近而主动亮屏显示内部果蔬时、当门禁系统感知到授权人士靠近而主动开门时、…

【计算机 UTF-8 转换为本地编码的含义】

UTF-8 转换为本地编码的含义 详细解释一下"UTF-8转换为本地编码"的含义以及为什么在处理中文时这很重要。 基本概念 UTF-8 编码 国际标准&#xff1a;UTF-8 是一种能够表示世界上几乎所有字符的 Unicode 编码方式跨平台兼容&#xff1a;无论在哪里&#xff0c;UTF-8 …

4.6 变体

1.变体简介 2.为什么需要变体 3.变体是如何产生的 4.变体带来的麻烦 5.multi_compile和shader_feature1.变体简介 比如我们开了一家餐厅, 你有一本万能的菜单(Shader源代码), 上面包含了所有可能的菜式; 但是顾客每次来点餐时, 不可能将整本菜单都做一遍, 他们会根据今天有没有…

猿辅导Android开发面试题及参考答案(下)

为什么开发中要使用线程池,而不是直接创建线程(如控制线程数量、复用线程、降低开销)? 开发中优先使用线程池而非直接创建线程,核心原因是线程池能优化线程管理、降低资源消耗、提高系统稳定性,而直接创建线程存在难以解决的缺陷,具体如下: 控制线程数量,避免资源耗尽…

【网络通信】IP 地址深度解析:从技术原理到企业级应用​

IP 地址深度解析&#xff1a;从技术原理到企业级应用​ 文章目录IP 地址深度解析&#xff1a;从技术原理到企业级应用​前言一、基础认知&#xff1a;IP 地址的技术定位与核心特性​1.1 定义与网络层角色1.2 核心属性与表示法深化二、地址分类&#xff1a;从类别划分到无类别路…

grafana实践

一、如何找到grafana的插件目录 whereis grafana grafana: /etc/grafana /usr/share/grafana插件安装目录、默认安装目录&#xff1a; 把vertamedia-clickhouse-datasource-3.4.4.zip解压到下面目录&#xff0c;然后重启就可以了 /var/lib/grafana/plugins# 6. 设置权限 sudo …

uniapp 文件查找失败:main.js

重装HbuilderX vue.config.js 的 配置 有问题main.js 框架能自动识别 到&#xff0c;不用多余的配置

KEIL烧录时提示“SWD/JTAG communication failure”的解决方法

最新在使用JTAG仿真器串口下载调试程序时&#xff0c;老是下载不成功&#xff0c;识别不到芯片&#xff0c;我尝试重启keil5或者重新插拔仿真器连接线、甚至重启电脑也都不行&#xff0c;每次下载程序都提示如下信息&#xff1a;在确定硬件连接没有问题之后&#xff0c;就开始分…

红日靶场(三)——个人笔记

环境搭建 添加一张网卡&#xff08;仅主机模式&#xff09;&#xff0c;192.168.93.0/24 网段 开启centos&#xff0c;第一次运行&#xff0c;重启网络服务 service network restart192.168.43.57/24&#xff08;外网ip&#xff09; 192.168.93.100/24&#xff08;内网ip&am…

车载网关框架 --- 车内网关IP转CAN链路解析 done

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 做到欲望极简,了解自己的真实欲望,不受外在潮流的影响,不盲从,不跟风。把自己的精力全部用在自己。一是去掉多余,凡事找规律,基础是诚信;二是…

lvgl修改输入设备驱动使其支持鼠标右键、双击、滑轮...

我在前几章移植 lvgl 到linux上时讲过注册鼠标驱动部分&#xff0c;那时候使用的时默认提供的驱动&#xff0c;支持的鼠标功能很少&#xff0c;只有左键点击&#xff0c;那时候我提过我们可以修改驱动使其支持&#xff0c;下面是具体的实现。看上面代码&#xff0c;我们当时是直…

SpringBoot 中单独一个类中运行main方法报错:找不到或无法加载主类

1. 报错SpringBoot项目&#xff0c;在随机某个类使用main方法&#xff0c;点击运行/调试报错错误: 找不到或无法加载主类 com.central.workorder.config.PropertyEncrypt 原因: java.lang.ClassNotFoundException: com.central.workorder.config.PropertyEncrypt2. 原因缩短命令…