You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

树莓派Python3.9导入ultralytics报非法指令错误的解决方法

树莓派Python3.9导入ultralytics报“非法指令”的解决办法

问题根源

这个错误是因为ultralytics或其依赖(如torch、torchvision)的预编译二进制包使用了你的树莓派CPU不支持的ARM指令集。树莓派不同型号的ARM架构差异较大(比如Pi 3是ARMv8-A,Pi Zero是ARMv7,Pi 4是ARMv8.2-A),而PyPI上的预编译包通常针对高阶ARM架构编译,导致低版本架构设备无法兼容。

解决方案

1. 彻底卸载现有安装包

先清理当前的ultralytics及相关依赖,避免残留冲突:

pip3.9 uninstall -y ultralytics torch torchvision

2. 为树莓派架构编译兼容的torch和torchvision

这是解决指令不兼容的核心步骤,需要针对你的树莓派CPU编译依赖库:

安装编译依赖

先安装编译所需的系统工具:

sudo apt-get update && sudo apt-get install -y build-essential cmake git libopenblas-dev libblas-dev m4 python3-dev python3-yaml python3-setuptools

编译torch(适配Python3.9)

  1. 克隆PyTorch仓库并切换到兼容版本(建议选ultralytics支持的版本,比如v2.0.0):
git clone --depth 1 --branch v2.0.0 https://github.com/pytorch/pytorch.git
cd pytorch
git submodule update --init --recursive
  1. 设置编译参数,禁用树莓派不支持的特性:
export USE_CUDA=0
export USE_CUDNN=0
export USE_MKLDNN=0
export USE_NNPACK=0
export USE_QNNPACK=0
export USE_DISTRIBUTED=0
export BUILD_TEST=0
export PYTHONPATH=$(pwd)
  1. 开始编译(过程较长,确保树莓派外接电源):
python3.9 setup.py build
sudo python3.9 setup.py install

编译torchvision

要选择和torch版本匹配的torchvision版本(比如torch v2.0.0对应torchvision v0.15.1):

git clone --depth 1 --branch v0.15.1 https://github.com/pytorch/vision.git
cd vision
python3.9 setup.py build
sudo python3.9 setup.py install

3. 从源码安装ultralytics

编译完依赖后,直接从源码安装ultralytics,确保适配本地架构:

git clone https://github.com/ultralytics/ultralytics.git
cd ultralytics
python3.9 setup.py install

4. 验证安装

运行以下命令测试是否能正常导入:

python3.9 -c "import ultralytics; print(ultralytics.__version__)"

无报错则说明安装成功。

简化方案(仅适用于树莓派4及以上64位系统)

如果你的树莓派是Pi 4或更新型号,且使用64位Raspberry Pi OS,可以尝试直接安装ARM64兼容的预编译包,跳过编译步骤:

pip3.9 install torch torchvision --index-url https://download.pytorch.org/whl/cpu
pip3.9 install ultralytics

内容的提问来源于stack exchange,提问作者Nour Salam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 22:42:19