yolov5部署到jetson nano错误


Traceback (most recent call last):
  File "detect.py", line 291, in <module>
    detect()
  File "detect.py", line 61, in detect
    model = attempt_load(weights, map_location=device)  # load FP32 model
  File "/home/jetson/yolov5-5.1-2/yolov_/models/experimental.py", line 119, in attempt_load
    ckpt = torch.load(w, map_location=map_location)  # load
  File "/home/jetson/.local/lib/python3.6/site-packages/torch/serialization.py", line 592, in load
    return _load(opened_zipfile, map_location, pickle_module, **pickle_load_args)
  File "/home/jetson/.local/lib/python3.6/site-packages/torch/serialization.py", line 851, in _load
    result = unpickler.load()
ModuleNotFoundError: No module named 'yolov'

yolov5部署到jetson nano,把官方代码的detect.py中的模型改成自己在pc训练出来的模型就报错,这是为什么

yolov模块的导入正常吗?ModuleNotFoundError: No module named 'yolov'这个报错很明显

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 这篇文章讲的很详细,请看:jetson nano部署yolov5以及出现的一些问题解决方法
  • 除此之外, 这篇博客: yolov5 部署jetson nano(通用) 保姆级教学中的 Jetson nano从配置环境到yolov5成功推理检测全过程 部分也许能够解决你的问题。
  • 以下回答由chatgpt基于相关博客总结生成:

    这个错误发生在尝试加载模型的时候,提示找不到名为'yolov'的模块。在Jetson Nano上部署时出现这个错误可能有几个可能的原因。

    1. 首先,确保在Jetson Nano上正确安装了yolov5库。可以通过以下命令来安装:
    pip install yolov5
    
    1. 检查模型文件是否存在,并位于正确的路径。确保检测代码指向的模型文件路径是正确的,并且该路径下存在一个有效的权重文件。

    2. 检查是否在Jetson Nano上安装了其他依赖项。在Jetson Nano上使用yolov5可能需要其他额外的依赖项。您可以运行以下命令来安装这些依赖项:

    pip install -U -r requirements.txt
    
    1. 还有可能是因为模型文件与Jetson Nano的硬件环境不兼容,导致加载出错。在将模型从PC上迁移到Jetson Nano时,应确保模型与Jetson Nano的硬件架构匹配。例如,如果在PC上训练的模型是针对GPU的,而Jetson Nano使用的是ARM架构,则需要针对Jetson Nano的架构重新训练模型或进行相应的转换。

    如果上述方法都不能解决问题,那可能是由于暂时不支持在Jetson Nano上部署yolov5而导致的。此时,您可以考虑与yolov5的开发者或者Jetson Nano相关的论坛或社区联系,以获取更详细的帮助或了解是否有其他可行的解决方案。

    希望这些建议对您有所帮助!如果还有其他问题,请随时提问。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^