Spaces:
Sleeping
Sleeping
from .regnet_model import RegNet | |
from .regnet_model import SimpleStem, ResBottleneckBlock | |
from detectron2.modeling.backbone.build import BACKBONE_REGISTRY | |
from detectron2.modeling.backbone.fpn import FPN, LastLevelMaxPool | |
from detectron2.layers import ( | |
Conv2d, | |
DeformConv, | |
FrozenBatchNorm2d, | |
ModulatedDeformConv, | |
ShapeSpec, | |
get_norm, | |
) | |
# train.cudnn_benchmark = True | |
def build_regnet_fpn_backbone(cfg, input_shape: ShapeSpec): | |
""" | |
Args: | |
cfg: a detectron2 CfgNode | |
Returns: | |
backbone (Backbone): backbone module, must be a subclass of :class:`Backbone`. | |
""" | |
bottom_up = RegNet( | |
stem_class=SimpleStem, | |
stem_width=32, | |
block_class=ResBottleneckBlock, | |
depth=22, | |
w_a=31.41, | |
w_0=96, | |
w_m=2.24, | |
group_width=64, | |
se_ratio=0.25, | |
freeze_at=2, | |
norm="FrozenBN", | |
out_features=["s1", "s2", "s3", "s4"], | |
) | |
in_features = cfg.MODEL.FPN.IN_FEATURES | |
out_channels = cfg.MODEL.FPN.OUT_CHANNELS | |
backbone = FPN( | |
bottom_up=bottom_up, | |
in_features=in_features, | |
out_channels=out_channels, | |
norm=cfg.MODEL.FPN.NORM, | |
top_block=LastLevelMaxPool(), | |
fuse_type=cfg.MODEL.FPN.FUSE_TYPE, | |
) | |
return backbone | |
def build_regnetx_fpn_backbone(cfg, input_shape: ShapeSpec): | |
""" | |
Args: | |
cfg: a detectron2 CfgNode | |
Returns: | |
backbone (Backbone): backbone module, must be a subclass of :class:`Backbone`. | |
""" | |
bottom_up = RegNet( | |
stem_class=SimpleStem, | |
stem_width=32, | |
block_class=ResBottleneckBlock, | |
depth=23, | |
w_a=38.65, | |
w_0=96, | |
w_m=2.43, | |
group_width=40, | |
freeze_at=2, | |
norm="FrozenBN", | |
out_features=["s1", "s2", "s3", "s4"], | |
) | |
in_features = cfg.MODEL.FPN.IN_FEATURES | |
out_channels = cfg.MODEL.FPN.OUT_CHANNELS | |
backbone = FPN( | |
bottom_up=bottom_up, | |
in_features=in_features, | |
out_channels=out_channels, | |
norm=cfg.MODEL.FPN.NORM, | |
top_block=LastLevelMaxPool(), | |
fuse_type=cfg.MODEL.FPN.FUSE_TYPE, | |
) | |
return backbone |