PFNet:Camouflaged Object Segmentation with Distraction Mining——论文简述
一、简介
针对伪装目标检测,本论文提出了Positioning and Focus Network (PFNet),该网络包含两个模块,定位(positioning module,PM)和聚焦(focus module,FM)。其中,定位模块从全局定位目标可能所在的位置,聚焦模块对区域进行识别并消除干扰来完善分割结果。
二、模型
对于一张RGB图像,先用Resnet-50做backbone,提取出的多层特征,再送入四层卷积层减小通道数量;然后通过PM模块定位可能的目标位置;最后通过多个FM模块来发现和移除 false-positive 和 false-negative 的 distractions。
def __init__(self, backbone_path=None):super(PFNet, self).__init__()# params# backboneresnet50 = resnet.resnet50(backbone_path)self.layer0 = nn.Sequential(resnet50.conv1, resnet50.bn1, resnet50.relu)self.layer1 = nn.Sequential(resnet50.maxpool, resnet50.layer1)self.layer2 = resnet50.layer2self.layer3 = resnet50.layer3self.layer4 = resnet50.layer4# channel reductionself.cr4 = nn.Sequential(nn.Conv2d(2048, 512, 3, 1, 1), nn.BatchNorm2d(512), nn.ReLU())self.cr3 = nn.Sequential(nn.Conv2d(1024, 256, 3, 1, 1), nn.BatchNorm2d(256), nn.ReLU())self.cr2 = nn.Sequential(nn.Conv2d(512, 128, 3, 1, 1), nn.BatchNorm2d(128), nn.ReLU())self.cr1 = nn.Sequential(nn.Conv2d(256, 64, 3, 1, 1), nn.BatchNorm2d(64), nn.ReLU())# positioningself.positioning = Positioning(512)# focusself.focus3 = Focus(256, 512)self.focus2 = Focus(128, 256)self.focus1 = Focus(64, 128)for m in self.modules():if isinstance(m, nn.ReLU):m.inplace = True
2.1 Positioning Module
PM包括一个 channel attention block
和一个 spatial attention block
。
channel attention block
中:
通过输入的 C x H x W 的张量 F 获得 k、q、v,在 C 上做attention,i 和 j 的关系是C上的关系,输出得到 F’,对于 F‘ 乘上一个可学习的超参数,并累加一个identify mapping。
spatial attention block
中:
首先对 F’ 用1 x 1的卷积改变其通道数来获得q’ 和 k’,v‘ 的通道数不变,在空间上做attention,i 和 j 的关系是位置 N=H x W上的关系,接下来的操作同 CA 类似。
2.2 Focus Module
FM的目的就是发现和消除 false-positive 和 false-negative 的错误预测。
具体步骤见如下代码及注释。
def forward(self, x, y, in_map):# x; current-level features# y: higher-level features# in_map: higher-level predictionup = self.up(y) # Conv+BN+ReLU+双线性插值上采样input_map = self.input_map(in_map)f_feature = x * input_map # foreground-attentive featuresb_feature = x * (1 - input_map) # background-attentive featuresfp = self.fp(f_feature) # Context Explorationfn = self.fn(b_feature) # Context Explorationrefine1 = up - (self.alpha * fp) # 抑制模糊的背景(false-positive)refine1 = self.bn1(refine1)refine1 = self.relu1(refine1)refine2 = refine1 + (self.beta * fn) # 增强丢失的目标(false-negative)refine2 = self.bn2(refine2)refine2 = self.relu2(refine2)output_map = self.output_map(refine2)return refine2, output_map
其中的Context Exploration Block如下所示。
DConv是膨胀卷积,目的是增加模型的感受野。
通过CE,模型能获得大尺度上感知上下文的特征的能力。
2.3 损失函数
在PFNet中有4个输出的预测值,一个是PM,另外的是FM,
对于PM模块,使用bce和iou损失。
对于FM模块,使用weighted bce和weighted iou损失。
最后的一个总损失即:
三、实验
消融实验:
PFNet:Camouflaged Object Segmentation with Distraction Mining——论文简述相关推荐
- [读论文]Referring Camouflaged Object Detection
摘要 In this paper, we consider the problem of referring camouflaged object detection (Ref-COD), a new ...
- 论文阅读:TensorMask: A Foundation for Dense Object Segmentation
Tensor Mask 文章 何恺明还有RBG大神的新作(一作陈鑫磊这个名字也很熟悉啊).之前在instance segmentation方面只看过mask R-CNN的论文,看到这篇文章是de ...
- Motion-Attentive Transition for Zero-Shot Video Object Segmentation论文浅读
cccMotion-Attentive Transition for Zero-Shot Video Object Segmentation(2020 AAAI)_行走江湖要用艺名的博客-CSDN博客 ...
- 【论文阅读】Rethinking S-T Networks with Improved Memory Coverage for Efficient Video Object Segmentation
一篇NeurIPS 2021的关于VOS (video object segmentation) 的文章,文章的思想很有借鉴价值. 论文链接 Rethinking Space-Time Network ...
- MaskRNN Instance Level Video Object Segmentation 论文翻译
摘要 实例级视频对象分割是视频编辑和压缩的一项重要技术.为了捕获时间的一致性,本文中,我们开发了MaskRNN,一个递归的神经网络方法,它在每个框架中融合了两个深网的输出,每个对象实例--一个提供一个 ...
- CVPR2020交互式分割算法IOG的配置(Interactive Object Segmentation with Inside-Outside Guidance)
目标跟踪.目标检测.前景分割不分家,如SiamMask.SiamR-CNN 这篇文章针对目标框可起到很好地分割效果. 注:原代码的运行环境为Ubuntu,本文在Windows10系统下完成配置. 1. ...
- Sparse R-CNN: End-to-End Object Detection with Learnable Proposals论文翻译
Sparse R-CNN: End-to-End Object Detection with Learnable Proposals论文翻译 摘要 1.介绍 2.相关工作 3.Sparse R-CNN ...
- 文献阅读20期:Transformer Transforms Salient Object Detection and Camouflaged Object Detection
[ 文献阅读 ] Transformer Transforms Salient Object Detection and Camouflaged Object Detection [1] 表现SOTA ...
- Video Object Segmentation with Adaptive Feature Bank and Uncertain-Region Refinement
论文信息 Paper: [NeurIPS 2020] Video Object Segmentation with Adaptive Feature Bank and Uncertain-Region ...
最新文章
- 英特尔内存革新助平安云 Redis 云服务降本增效
- R语言使用caret包的confusionMatrix函数计算混淆矩阵、使用编写的自定义函数可视化混淆矩阵(confusion matrix)
- 企业数字化转型,一文通读什么是数字化中台?
- linux内核杂记(17)-内核链表结构(1)
- java文件与流_Java文件和流深入
- java oauth2.0_OAuth 2.0 Java指南:5分钟保护您的应用程序安全
- SharePoint List item数量超过5000的解决办法
- java同事只有竞争吗_如何防止同事竞争破坏公司文化
- oracle中常用的方法,oracle常用方法
- 股票历史数据-股票前复权数据下载
- java验证码图片工具类_工具类:VerifyCode.java:图片验证码
- 各品牌智能电视刷机怎么寻找对应固件包?详细图文教程分享
- 二元Weierstrass逼近定理及其证明
- 服务器防火墙的作用是什么?如何设置?
- 阿里云购买云服务器流程及注意事项(新手用户必看图文教程)
- 史上最全面、最详细的Cookie总结
- EditText的属性!
- 西门子PLC1200学习之比较指令
- mysql导入指定数据库_mysql命令行导入sql文件到指定数据库的方法
- 阿里二面: 说一下从url输入到返回请求的过程
热门文章
- citrify免费在线图片处理云软件
- 荣耀手表2给女生带来无数次无法拒绝的心动
- 如何看待陈皓在微博上对闭源和开源软件的评论?
- 健身教练演示背阔肌锻炼方法动作图解
- 使用Java来解决鸡兔同笼的问题,现在一个笼子里(只有鸡和兔子)有35个头,94只足,请求出鸡与兔个多少?
- R.layout是什么?
- www.starky99.com
- 东半球最强饭局,大佬们都吃了啥?App Store 已为中国开发者获利 170 亿美元
- Oracle Advanced Queuing 触发器入列和异步通知消息出列
- ERP IPQC是什么意思 IPQC工作职责和IPQC工作流程