Spaces:
Runtime error
Runtime error
from detectron2.config import LazyCall as L | |
from detectron2.layers import ShapeSpec | |
from detectron2.modeling.box_regression import Box2BoxTransform | |
from detectron2.modeling.matcher import Matcher | |
from detectron2.modeling.roi_heads import FastRCNNOutputLayers, FastRCNNConvFCHead, CascadeROIHeads | |
from .mask_rcnn_fpn import model | |
# arguments that don't exist for Cascade R-CNN | |
[model.roi_heads.pop(k) for k in ["box_head", "box_predictor", "proposal_matcher"]] | |
model.roi_heads.update( | |
_target_=CascadeROIHeads, | |
box_heads=[ | |
L(FastRCNNConvFCHead)( | |
input_shape=ShapeSpec(channels=256, height=7, width=7), | |
conv_dims=[], | |
fc_dims=[1024, 1024], | |
) | |
for k in range(3) | |
], | |
box_predictors=[ | |
L(FastRCNNOutputLayers)( | |
input_shape=ShapeSpec(channels=1024), | |
test_score_thresh=0.05, | |
box2box_transform=L(Box2BoxTransform)(weights=(w1, w1, w2, w2)), | |
cls_agnostic_bbox_reg=True, | |
num_classes="${...num_classes}", | |
) | |
for (w1, w2) in [(10, 5), (20, 10), (30, 15)] | |
], | |
proposal_matchers=[ | |
L(Matcher)(thresholds=[th], labels=[0, 1], allow_low_quality_matches=False) | |
for th in [0.5, 0.6, 0.7] | |
], | |
) | |