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

树莓派4运行YOLOv5 detect.py时出现Fusing Layers Illegal instruction错误

解决树莓派上YOLOv5推理出现Illegal instruction错误

问题本质

该错误是因为树莓派的ARM架构CPU不兼容PyTorch或YOLOv5中针对x86平台编写的优化指令,在执行层融合步骤时触发了CPU不支持的指令集操作。

解决方案

1. 安装树莓派适配的PyTorch版本

默认pip安装的PyTorch是针对x86架构编译的,需替换为ARM架构预编译包:

  • 卸载现有PyTorch:
    pip3 uninstall -y torch torchvision torchaudio
    
  • 根据树莓派型号安装适配版本(以Raspberry Pi 4/ARM64为例):
    pip3 install torch==1.12.0 torchvision==0.13.0 --extra-index-url https://download.pytorch.org/whl/cpu
    
    (32位系统需找对应armv7l的预编译包)

2. 禁用YOLOv5的层融合

错误发生在Fusing layers...阶段,直接跳过该步骤:

  • 打开detect.py,注释掉层融合代码:
    # model.fuse()  # 注释此行以跳过层融合
    
  • 若版本支持,也可直接在推理命令中添加参数:
    python3 detect.py --source data/images --weights yolov5s.pt --conf 0.25 --no-fuse
    

3. 降级YOLOv5到兼容性更好的版本

v6.2版本的层融合逻辑对ARM设备兼容性较差,切换到更早的稳定版本:

cd yolov5
git checkout v5.0
pip3 install -r requirements.txt  # 重新安装对应版本依赖

4. 禁用CPU线程优化

通过环境变量关闭可能引发冲突的线程优化:

export ATEN_CPU_THREADING_ENABLE=0
python3 detect.py --source data/images --weights yolov5s.pt --conf 0.25 --device cpu

内容的提问来源于stack exchange,提问作者Maitha Alnaqbi

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 01:45:32