没有这样的运营商 torchvision::nms

Posted

技术标签:

【中文标题】没有这样的运营商 torchvision::nms【英文标题】:No such operator torchvision::nms 【发布时间】:2020-05-31 11:58:31 【问题描述】:

当我尝试运行 yoloV3 检测时,它发生了错误

op = torch._C._jit_get_operation(qualified_op_name)

RuntimeError: No such operator torchvision::nms

虽然此代码是torchvision的源代码,但我尝试了几次通过失败的提示更正代码。

【问题讨论】:

【参考方案1】:

由于我在安装torch和torchvison时遇到了很多障碍,我不情愿重新安装环境。运行'conda list'版本的torch和torchvison,我发现它们并不是不兼容的,安装了两个包的版本是:

 torchvision-0.5.0+cu92-cp37-cp37m-win_amd64.whl
 torch-1.4.0+cpu-cp37-cp37m-win_amd64.whl

我把torchvison的版本改成

 torchvision-0.5.0+cpu-cp37-cp37m-win_amd64.whl

到目前为止,我已经处理了我的问题。 注:我的os和python的环境正在交友:

  Windows_X64
  python3.7

【讨论】:

【参考方案2】:

我在 Ubuntu 18.04 上遇到了同样的问题。将 python 升级到 3.8 并安装新的 torchtorchvision 库对我有用。

virtualenv -p python3.8 torch17
source torch17/bin/activate
pip install cython matplotlib tqdm scipy ipython ninja yacs opencv-python ffmpeg opencv-contrib-python Pillow scikit-image scikit-learn lmfit imutils pyyaml jupyterlab==3
pip install torch==1.7.1+cu101 torchvision==0.8.2+cu101 torchaudio==0.7.2 -f https://download.pytorch.org/whl/torch_stable.html

我尝试了一些pytorch forums 和github 中讨论的解决方案,但没有帮助。

【讨论】:

唯一对我有用的解决方案,即使没有升级 python【参考方案3】:

我在Ubuntu 20.04上使用python 3.7pytoch1.7.1 & cuda11.1也遇到了同样的问题。

请注意安装torchvision==0.8.2+cu110而不是torchvision==0.8.2。只需根据你的系统更改相应的版本即可。

【讨论】:

【参考方案4】:

安装 Python 3.7 而不是 3.8 步骤:

git clone https://github.com/Megvii-BaseDetection/YOLOX
cd YOLOX
pip install requirements.txt
pip install setup.py

【讨论】:

以上是关于没有这样的运营商 torchvision::nms的主要内容,如果未能解决你的问题,请参考以下文章

YOLOv5 报错:“NotImplementedError: Could not run ‘torchvision::nms‘ with arguments from the ‘CUDA‘ back

YOLOv5 报错:“NotImplementedError: Could not run ‘torchvision::nms‘ with arguments from the ‘CUDA‘ back

知道 J2ME 中的网络运营商名称

产品运营的“十个不能”

运营商之间的气流和数据传输

给想做好的微信公众号运营一些忠心建议!