From d88f393ffa0e107e3354a77615c690dcf676c2b2 Mon Sep 17 00:00:00 2001 From: Miao Zheng <76149310+MeowZheng@users.noreply.github.com> Date: Sat, 31 Dec 2022 01:02:58 +0800 Subject: [PATCH] [Fix] Remove dependcy mmdet when do not use `MaskFormerHead` and `MMDET_Mask2FormerHead` (#2448) ## Motivation Calling `mmseg.utils.register_all_modules` will import `MaskFormerHead` and `Mask2FormerHead`, it will crash if mmdet is not installed as `None` cannot be initialized. ## Modification - Modify `MMDET_MaskFormerHead=BaseModule` and `MMDET_Mask2FormerHead = BaseModule` when cannot import from mmdet --- mmseg/models/decode_heads/mask2former_head.py | 3 ++- mmseg/models/decode_heads/maskformer_head.py | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/mmseg/models/decode_heads/mask2former_head.py b/mmseg/models/decode_heads/mask2former_head.py index 0ea742430..0135af064 100644 --- a/mmseg/models/decode_heads/mask2former_head.py +++ b/mmseg/models/decode_heads/mask2former_head.py @@ -4,12 +4,13 @@ from typing import List, Tuple import torch import torch.nn as nn import torch.nn.functional as F +from mmengine.model import BaseModule try: from mmdet.models.dense_heads import \ Mask2FormerHead as MMDET_Mask2FormerHead except ModuleNotFoundError: - MMDET_Mask2FormerHead = None + MMDET_Mask2FormerHead = BaseModule from mmengine.structures import InstanceData from torch import Tensor diff --git a/mmseg/models/decode_heads/maskformer_head.py b/mmseg/models/decode_heads/maskformer_head.py index 98ca92b99..6e61a7f63 100644 --- a/mmseg/models/decode_heads/maskformer_head.py +++ b/mmseg/models/decode_heads/maskformer_head.py @@ -4,11 +4,12 @@ from typing import List, Tuple import torch import torch.nn as nn import torch.nn.functional as F +from mmengine.model import BaseModule try: from mmdet.models.dense_heads import MaskFormerHead as MMDET_MaskFormerHead except ModuleNotFoundError: - MMDET_MaskFormerHead = None + MMDET_MaskFormerHead = BaseModule from mmengine.structures import InstanceData from torch import Tensor