示例#1
0
def ResNet_roi_conv5_head_for_masks(dim_in):
    """ResNet "conv5" / "stage5" head for predicting masks."""
    dilation = cfg.MRCNN.DILATION
    stride_init = cfg.MRCNN.ROI_XFORM_RESOLUTION // 7  # by default: 2
    module, dim_out = ResNet.add_stage(dim_in, 2048, 512, 3, dilation,
                                       stride_init)
    return module, dim_out
示例#2
0
def add_ResNet_roi_conv5_head_for_masks(
        model, blob_in, dim_in, spatial_scale, preprefix='_[mask]_',
        dilation=1, shared=False):
    assert not shared, \
        'Using shared ResNet stage not supported (temporarily)'
    model.RoIFeatureTransform(
        blob_in,
        blob_out=preprefix + 'pool5',
        blob_rois='mask_rois',
        method=cfg.MRCNN.ROI_XFORM_METHOD,
        resolution=cfg.MRCNN.ROI_XFORM_RESOLUTION,
        sampling_ratio=cfg.MRCNN.ROI_XFORM_SAMPLING_RATIO,
        spatial_scale=spatial_scale)

    stride_init = int(cfg.MRCNN.ROI_XFORM_RESOLUTION / 7)  # by default: 2
    if not shared:
        s, dim_in = ResNet.add_stage(
            model, preprefix + 'res5', preprefix + 'pool5',
            3, dim_in, 2048, 512, dilation, stride_init=stride_init)
    else:
        s, dim_in = ResNet.add_stage_shared(
            model, preprefix, 'res5', preprefix + 'pool5',
            3, dim_in, 2048, 512, dilation, stride_init=stride_init)

    return s, 2048, spatial_scale
示例#3
0
def add_ResNet_roi_conv5_head_for_keypoints(model, blob_in, dim_in,
                                            spatial_scale):
    """Add a ResNet "conv5" / "stage5" head for Mask R-CNN keypoint prediction.
    """
    model.RoIFeatureTransform(
        blob_in,
        '_[pose]_pool5',
        blob_rois='keypoint_rois',
        method=cfg.KRCNN.ROI_XFORM_METHOD,
        resolution=cfg.KRCNN.ROI_XFORM_RESOLUTION,
        sampling_ratio=cfg.KRCNN.ROI_XFORM_SAMPLING_RATIO,
        spatial_scale=spatial_scale)
    # Using the prefix '_[pose]_' to 'res5' enables initializing the head's
    # parameters using pretrained 'res5' parameters if given (see
    # utils.net.initialize_gpu_0_from_weights_file)
    s, dim_in = ResNet.add_stage(model,
                                 '_[pose]_res5',
                                 '_[pose]_pool5',
                                 3,
                                 dim_in,
                                 2048,
                                 512,
                                 cfg.KRCNN.DILATION,
                                 stride_init=int(
                                     cfg.KRCNN.ROI_XFORM_RESOLUTION / 7))
    return s, 2048
示例#4
0
def add_ResNet_roi_conv5_head_for_masks(model, blob_in, dim_in, spatial_scale):
    """Add a ResNet "conv5" / "stage5" head for predicting masks."""
    model.RoIFeatureTransform(
        blob_in,
        blob_out='_[mask]_pool5',
        blob_rois='mask_rois',
        method=cfg.MRCNN.ROI_XFORM_METHOD,
        resolution=cfg.MRCNN.ROI_XFORM_RESOLUTION,
        sampling_ratio=cfg.MRCNN.ROI_XFORM_SAMPLING_RATIO,
        spatial_scale=spatial_scale)

    dilation = cfg.MRCNN.DILATION
    stride_init = int(cfg.MRCNN.ROI_XFORM_RESOLUTION / 7)  # by default: 2

    s, dim_in = ResNet.add_stage(model,
                                 '_[mask]_res5',
                                 '_[mask]_pool5',
                                 3,
                                 dim_in,
                                 2048,
                                 512,
                                 dilation,
                                 stride_init=stride_init)

    return s, 2048
def add_ResNet_roi_conv5_head_for_keypoints(
    model, blob_in, dim_in, spatial_scale
):
    """Add a ResNet "conv5" / "stage5" head for Mask R-CNN keypoint prediction.
    """
    model.RoIFeatureTransform(
        blob_in,
        '_[pose]_pool5',
        blob_rois='keypoint_rois',
        method=cfg.KRCNN.ROI_XFORM_METHOD,
        resolution=cfg.KRCNN.ROI_XFORM_RESOLUTION,
        sampling_ratio=cfg.KRCNN.ROI_XFORM_SAMPLING_RATIO,
        spatial_scale=spatial_scale
    )
    # Using the prefix '_[pose]_' to 'res5' enables initializing the head's
    # parameters using pretrained 'res5' parameters if given (see
    # utils.net.initialize_gpu_0_from_weights_file)
    s, dim_in = ResNet.add_stage(
        model,
        '_[pose]_res5',
        '_[pose]_pool5',
        3,
        dim_in,
        2048,
        512,
        cfg.KRCNN.DILATION,
        stride_init=int(cfg.KRCNN.ROI_XFORM_RESOLUTION / 7)
    )
    return s, 2048
示例#6
0
def add_ResNet_roi_conv5_head_for_masks(model, blob_in, dim_in, spatial_scale):
    """Add a ResNet "conv5" / "stage5" head for predicting masks."""
    model.RoIFeatureTransform(
        blob_in,
        blob_out='_[mask]_pool5',
        blob_rois='mask_rois',
        method=cfg.MRCNN.ROI_XFORM_METHOD,
        resolution=cfg.MRCNN.ROI_XFORM_RESOLUTION,
        sampling_ratio=cfg.MRCNN.ROI_XFORM_SAMPLING_RATIO,
        spatial_scale=spatial_scale
    )

    dilation = cfg.MRCNN.DILATION
    stride_init = int(cfg.MRCNN.ROI_XFORM_RESOLUTION / 7)  # by default: 2

    s, dim_in = ResNet.add_stage(
        model,
        '_[mask]_res5',
        '_[mask]_pool5',
        3,
        dim_in,
        2048,
        512,
        dilation,
        stride_init=stride_init
    )

    return s, 2048
def add_ResNet_roi_conv5_head_for_keypoints(
        model, blob_in, dim_in, spatial_scale):
    model.RoIFeatureTransform(
        blob_in, '_[pose]_pool5',
        blob_rois='keypoint_rois',
        method=cfg.KRCNN.ROI_XFORM_METHOD,
        resolution=cfg.KRCNN.ROI_XFORM_RESOLUTION,
        sampling_ratio=cfg.KRCNN.ROI_XFORM_SAMPLING_RATIO,
        spatial_scale=spatial_scale)
    s, dim_in = ResNet.add_stage(
        model, '_[pose]_res5', '_[pose]_pool5',
        3, dim_in, 2048, 512, cfg.KRCNN.DILATION,
        stride_init=int(cfg.KRCNN.ROI_XFORM_RESOLUTION / 7))
    return s, 2048, spatial_scale
示例#8
0
def add_ResNet_roi_conv5_head_for_keypoints(model, blob_in, dim_in,
                                            spatial_scale):
    model.RoIFeatureTransform(
        blob_in,
        '_[pose]_pool5',
        blob_rois='keypoint_rois',
        method=cfg.KRCNN.ROI_XFORM_METHOD,
        resolution=cfg.KRCNN.ROI_XFORM_RESOLUTION,
        sampling_ratio=cfg.KRCNN.ROI_XFORM_SAMPLING_RATIO,
        spatial_scale=spatial_scale)
    s, dim_in = ResNet.add_stage(model,
                                 '_[pose]_res5',
                                 '_[pose]_pool5',
                                 3,
                                 dim_in,
                                 2048,
                                 512,
                                 cfg.KRCNN.DILATION,
                                 stride_init=int(
                                     cfg.KRCNN.ROI_XFORM_RESOLUTION / 7))
    return s, 2048, spatial_scale
示例#9
0
def ResNet_roi_conv5_head_for_masks(dim_in):
    """ResNet "conv5" / "stage5" head for predicting masks."""
    dilation = cfg.MRCNN.DILATION
    stride_init = cfg.MRCNN.ROI_XFORM_RESOLUTION // 7  # by default: 2
    module, dim_out = ResNet.add_stage(dim_in, 2048, 512, 3, dilation, stride_init)
    return module, dim_out