【问题标题】:Segmentation Mask RCNN and FPN分割掩码 RCNN 和 FPN
【发布时间】:2018-10-21 23:57:10
【问题描述】:

我正在阅读来自 Facebook Research 的论文 https://research.fb.com/wp-content/uploads/2017/08/maskrcnn.pdf

Mask RCNN 基于检测器 Faster RCNN,但进行了一些改进,例如 FPN(特征金字塔网络),ROI align 似乎比 ROI 池更准确。但是,我不了解有关 FPN 的架构和 Mask RCNN 中的掩码。事实上,FPN 允许获取不同比例的特征图,但是看着纸上的图像我不明白他们是否只使用了 FPN 上的最后一个特征图。

所以,问题是:我们是只使用 RPN 的最后一个特征图,然后使用一些 conv 层来预测掩码(用于分割)还是我们也使用 RPN 的中间层?

【问题讨论】:

    标签: deep-learning computer-vision image-segmentation image-recognition


    【解决方案1】:

    掩码 R-CNN 中掩码分支中的 FCN 使用 FPN 生成的所有特征图。
    Here is 掩码 R-CNN 的一个这样的实现。 这是代码中的 sn-p:

    # Attach 3x3 conv to all P layers to get the final feature maps.
    P2 = KL.Conv2D(256, (3, 3), padding="SAME", name="fpn_p2")(P2)
    P3 = KL.Conv2D(256, (3, 3), padding="SAME", name="fpn_p3")(P3)
    P4 = KL.Conv2D(256, (3, 3), padding="SAME", name="fpn_p4")(P4)
    P5 = KL.Conv2D(256, (3, 3), padding="SAME", name="fpn_p5")(P5)
    # P6 is used for the 5th anchor scale in RPN. Generated by
    # subsampling from P5 with stride of 2.
    P6 = KL.MaxPooling2D(pool_size=(1, 1), strides=2, name="fpn_p6")(P5)
    
    # Note that P6 is used in RPN, but not in the classifier heads.
    rpn_feature_maps = [P2, P3, P4, P5, P6]
    mrcnn_feature_maps = [P2, P3, P4, P5]  <--------------
    


    This是作者使用FPN特征图的那一行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-24
      • 2020-01-14
      • 2021-04-08
      • 2020-06-14
      • 2021-05-11
      • 2020-09-06
      • 2021-04-15
      • 2020-01-14
      相关资源
      最近更新 更多