问题描述
我正在尝试使用非常酷的机器学习 Colab。 https://colab.research.google.com/drive/1eQLZrNYRZMo9zdnGGccE0hFswGiinO-Z?usp=sharing 按原样运行他们的步骤,我不断收到 ERROR: Failed building wheel for pytorch3d
。
经过多次谷歌搜索后,我尝试将安装行替换为
!pip install 'git+https://github.com/facebookresearch/pytorch3d.git@stable'
还有
!pip install pytorch3d
前者不起作用。后者导致了另一个问题:
"ImportError: /usr/local/lib/python3.6/dist-packages/pytorch3d/_C.cpython-36m-x86_64-linux-gnu.so: undefined symbol: _ZNK2at6Tensor7is_cudaEv"
我也试过做 !pip install torch==1.6.0
这会导致
Traceback (most recent call last):
File "./meshrcnn/demo/demo.py",line 11,in <module>
from detectron2.data import MetadataCatalog
File "/usr/local/lib/python3.6/dist-packages/detectron2/data/__init__.py",line 4,in <module>
from .build import (
File "/usr/local/lib/python3.6/dist-packages/detectron2/data/build.py",line 14,in <module>
from detectron2.structures import BoxMode
File "/usr/local/lib/python3.6/dist-packages/detectron2/structures/__init__.py",line 6,in <module>
from .keypoints import Keypoints,heatmaps_to_keypoints
File "/usr/local/lib/python3.6/dist-packages/detectron2/structures/keypoints.py",in <module>
from detectron2.layers import interpolate
File "/usr/local/lib/python3.6/dist-packages/detectron2/layers/__init__.py",line 3,in <module>
from .deform_conv import DeformConv,ModulatedDeformConv
File "/usr/local/lib/python3.6/dist-packages/detectron2/layers/deform_conv.py",line 10,in <module>
from detectron2 import _C
ImportError: /usr/local/lib/python3.6/dist-packages/detectron2/_C.cpython-36m-x86_64-linux-gnu.so: undefined symbol: _ZN6caffe28TypeMeta21_typeMetaDataInstanceISt7complexIdEEEPKNS_6detail12TypeMetaDataEv
已完成 !pip install mmcv-full===1.2.1 -f https://download.openmmlab.com/mmcv/dist/cu101/torch1.7.0/index.html
尝试修复该问题,但错误仍然存在。
有人对如何使 Colab 环境工作有想法吗?
解决方法
我遇到了同样的错误并找到了您的帖子。我试图安装当前的主(使用:
!pip install 'git+https://github.com/facebookresearch/pytorch3d.git'
下载并编译 pytorch3D==0.4.0 后,它实际上工作正常。 我认为解决问题的是下载和编译 pytorch3d,以便它与 cuda 正确链接:如果它下载预编译的轮子,你可能会得到未定义的符号错误。
我所做的唯一其他更改:我必须从边界矩形计算单元格中对 demo=True
的调用中删除 group_keypoints()
(它说该参数未知)