Phytec开发板运行Ultralytics代码报错:No module named 'torch.utils'
解决Ultralytics加载时
ModuleNotFoundError: No module named 'torch.utils'问题 问题背景
在Phytec开发板上运行Ultralytics代码时,出现ModuleNotFoundError: No module named 'torch.utils'错误,已将Ultralytics库放在/root/Ultralytics目录并添加到sys.path,尝试单独安装torch.utils无效。
报错信息
Traceback (most recent call last): File "/root/test_2.py", line 5, in <module> from ultralytics import YOLO File "/root/Ultralytics/ultralytics/__init__.py", line 10, in <module> from ultralytics.data.explorer.explorer import Explorer File "/root/Ultralytics/ultralytics/data/__init__.py", line 3, in <module> from .base import BaseDataset File "/root/Ultralytics/ultralytics/data/base.py", line 15, in <module> from torch.utils.data import Dataset ModuleNotFoundError: No module named 'torch.utils'
涉事代码片段
import cv2 import time import sys sys.path.append('/root/Ultralytics') from ultralytics import YOLO import torch print(torch.__version__) # Reading a video file vid = cv2.VideoCapture('/media/andrei/Linux_dir/Analytics/YoloNew/p.mp4') # Loading the YOLOv8n model model = YOLO("yolov8n.pt") # Specifying the "person" class person_class_index = 0 # The 'person' class in the COCO dataset has ID = 0 # Initializing variables for frame and time f = 0 t = 0 h, w = None, None writer = None
解决方案
1. 确认PyTorch安装状态与完整性
torch.utils是PyTorch的内置子模块,不存在单独安装的包,报错说明PyTorch未正确安装或环境无法识别:
- 运行以下测试脚本验证PyTorch是否正常:
import torch print(f"PyTorch版本: {torch.__version__}") from torch.utils.data import Dataset print("torch.utils模块加载成功") - 如果脚本报错,需重新安装适配Phytec开发板ARM架构的PyTorch版本:
不能直接使用通用的pip install torch,需查看PyTorch官方文档获取ARM架构的安装指令,或通过源码编译适配开发板环境。
2. 调整代码导入顺序与环境路径
- 将
import torch移到from ultralytics import YOLO之前,确保先加载PyTorch再导入依赖它的Ultralytics:import cv2 import time import sys import torch # 提前导入torch print(torch.__version__) sys.path.append('/root/Ultralytics') from ultralytics import YOLO - 打印当前Python的路径列表,确认PyTorch所在目录已在
sys.path中:
如果PyTorch的安装路径不在列表中,手动添加:import sys print(sys.path)sys.path.append('/path/to/your/torch/install')
3. 正确安装Ultralytics本地库
进入Ultralytics目录,执行开发模式安装,自动处理所有依赖:
cd /root/Ultralytics pip install -e .
内容的提问来源于stack exchange,提问作者Андрей Пронькин
相关产品推荐
相关产品推荐

