mirror of https://github.com/RE-OWOD/RE-OWOD
49 lines
2.2 KiB
Python
49 lines
2.2 KiB
Python
|
# -*- coding: utf-8 -*-
|
||
|
# Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved
|
||
|
|
||
|
from detectron2.config import CfgNode as CN
|
||
|
|
||
|
|
||
|
def add_pointrend_config(cfg):
|
||
|
"""
|
||
|
Add config for PointRend.
|
||
|
"""
|
||
|
# We retry random cropping until no single category in semantic segmentation GT occupies more
|
||
|
# than `SINGLE_CATEGORY_MAX_AREA` part of the crop.
|
||
|
cfg.INPUT.CROP.SINGLE_CATEGORY_MAX_AREA = 1.0
|
||
|
# Color augmentatition from SSD paper for semantic segmentation model during training.
|
||
|
cfg.INPUT.COLOR_AUG_SSD = False
|
||
|
|
||
|
# Names of the input feature maps to be used by a coarse mask head.
|
||
|
cfg.MODEL.ROI_MASK_HEAD.IN_FEATURES = ("p2",)
|
||
|
cfg.MODEL.ROI_MASK_HEAD.FC_DIM = 1024
|
||
|
cfg.MODEL.ROI_MASK_HEAD.NUM_FC = 2
|
||
|
# The side size of a coarse mask head prediction.
|
||
|
cfg.MODEL.ROI_MASK_HEAD.OUTPUT_SIDE_RESOLUTION = 7
|
||
|
# True if point head is used.
|
||
|
cfg.MODEL.ROI_MASK_HEAD.POINT_HEAD_ON = False
|
||
|
|
||
|
cfg.MODEL.POINT_HEAD = CN()
|
||
|
cfg.MODEL.POINT_HEAD.NAME = "StandardPointHead"
|
||
|
cfg.MODEL.POINT_HEAD.NUM_CLASSES = 80
|
||
|
# Names of the input feature maps to be used by a mask point head.
|
||
|
cfg.MODEL.POINT_HEAD.IN_FEATURES = ("p2",)
|
||
|
# Number of points sampled during training for a mask point head.
|
||
|
cfg.MODEL.POINT_HEAD.TRAIN_NUM_POINTS = 14 * 14
|
||
|
# Oversampling parameter for PointRend point sampling during training. Parameter `k` in the
|
||
|
# original paper.
|
||
|
cfg.MODEL.POINT_HEAD.OVERSAMPLE_RATIO = 3
|
||
|
# Importance sampling parameter for PointRend point sampling during training. Parametr `beta` in
|
||
|
# the original paper.
|
||
|
cfg.MODEL.POINT_HEAD.IMPORTANCE_SAMPLE_RATIO = 0.75
|
||
|
# Number of subdivision steps during inference.
|
||
|
cfg.MODEL.POINT_HEAD.SUBDIVISION_STEPS = 5
|
||
|
# Maximum number of points selected at each subdivision step (N).
|
||
|
cfg.MODEL.POINT_HEAD.SUBDIVISION_NUM_POINTS = 28 * 28
|
||
|
cfg.MODEL.POINT_HEAD.FC_DIM = 256
|
||
|
cfg.MODEL.POINT_HEAD.NUM_FC = 3
|
||
|
cfg.MODEL.POINT_HEAD.CLS_AGNOSTIC_MASK = False
|
||
|
# If True, then coarse prediction features are used as inout for each layer in PointRend's MLP.
|
||
|
cfg.MODEL.POINT_HEAD.COARSE_PRED_EACH_LAYER = True
|
||
|
cfg.MODEL.POINT_HEAD.COARSE_SEM_SEG_HEAD_NAME = "SemSegFPNHead"
|