I am just importing "from detectron2.engine import DefaultPredictor" and getting error.
Traceback;
ImportError Traceback (most recent call last)
----> 1 from detectron2.engine import DefaultPredictor
~/anaconda3/lib/python3.7/site-packages/detectron2/engine/__init__.py in
9 # prefer to let hooks and defaults live in separate namespaces (therefore not in __all__)
10 # but still make them available here
---> 11 from .hooks import *
12 from .defaults import *
~/anaconda3/lib/python3.7/site-packages/detectron2/engine/hooks.py in
16
17 import detectron2.utils.comm as comm
---> 18 from detectron2.evaluation.testing import flatten_results_dict
19 from detectron2.utils.events import EventStorage, EventWriter
20
~/anaconda3/lib/python3.7/site-packages/detectron2/evaluation/__init__.py in
1 # Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved
----> 2 from .cityscapes_evaluation import CityscapesEvaluator
3 from .coco_evaluation import COCOEvaluator
4 from .rotated_coco_evaluation import RotatedCOCOEvaluator
5 from .evaluator import DatasetEvaluator, DatasetEvaluators, inference_context, inference_on_dataset
~/anaconda3/lib/python3.7/site-packages/detectron2/evaluation/cityscapes_evaluation.py in
8 from PIL import Image
9
---> 10 from detectron2.data import MetadataCatalog
11 from detectron2.utils import comm
12
~/anaconda3/lib/python3.7/site-packages/detectron2/data/__init__.py in
2 from . import transforms # isort:skip
3
----> 4 from .build import (
5 build_detection_test_loader,
6 build_detection_train_loader,
~/anaconda3/lib/python3.7/site-packages/detectron2/data/build.py in
12 from termcolor import colored
13
---> 14 from detectron2.structures import BoxMode
15 from detectron2.utils.comm import get_world_size
16 from detectron2.utils.env import seed_all_rng
~/anaconda3/lib/python3.7/site-packages/detectron2/structures/__init__.py in
1 # Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved
----> 2 from .boxes import Boxes, BoxMode, pairwise_iou
3 from .image_list import ImageList
4 from .instances import Instances
5 from .keypoints import Keypoints, heatmaps_to_keypoints
~/anaconda3/lib/python3.7/site-packages/detectron2/structures/boxes.py in
6 import torch
7
----> 8 from detectron2.layers import cat
9
10 _RawBoxType = Union[List[float], Tuple[float, ...], torch.Tensor, np.ndarray]
~/anaconda3/lib/python3.7/site-packages/detectron2/layers/__init__.py in
1 # Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved
2 from .batch_norm import FrozenBatchNorm2d, get_norm, NaiveSyncBatchNorm
----> 3 from .deform_conv import DeformConv, ModulatedDeformConv
4 from .mask_ops import paste_masks_in_image
5 from .nms import batched_nms, batched_nms_rotated, nms, nms_rotated
~/anaconda3/lib/python3.7/site-packages/detectron2/layers/deform_conv.py in
8 from torch.nn.modules.utils import _pair
9
---> 10 from detectron2 import _C
11
12 from .wrappers import _NewEmptyTensorOp
ImportError: /home/selcuk/anaconda3/lib/python3.7/site-packages/detectron2/_C.cpython-37m-x86_64-linux-gnu.so: undefined symbol: THPVariableClass
answered in https://detectron2.readthedocs.io/tutorials/install.html#common-installation-issues
fwiw, in case anyone stumbles across this like I did, the more complete answer is:
The pre-built detectron2 binaries only work with torch v 1.4.0
I installed this using pip with:
python3 -m pip install torch==1.4.0+cpu torchvision==0.5.0+cpu -f https://download.pytorch.org/whl/torch_stable.html
Even in Colab I had same error, I solved by:
!pip install 'git+https://github.com/facebookresearch/detectron2.git'
In this way you can use torch 1.5.0
I have the same problem, and i don't know how to resolve it,who can help me?
I suspect the underlying error is https://github.com/pytorch/pytorch/issues/38122.
Most helpful comment
fwiw, in case anyone stumbles across this like I did, the more complete answer is:
The pre-built detectron2 binaries only work with torch v 1.4.0
I installed this using pip with: