f3net:fusion,feedback and focus for salient object detection

论文笔记——F3Net: Fusion, Feedback and Focus for Salient Object Detection_随机ID的博客-CSDN博客1https://blog.csdn.net/qq_33445835/article/details/107194500这是篇显著性检测的文章,但是我看到他有在篡改检测领域的应用,目前的篡改检测领域核心思路就是分类和分割两种路子,而在文档篡改检测领域,主要还是以分割为主,加上阿里天池有连续开源了两拨数据集,还是大有裨益的。这篇文章,结构非常花哨,但是我实际觉得这种设计上花哨的东西,其实意义不大,但是本文虽然是在做显著性检测,但是loss提出的还挺有意思的。内容上面这篇介绍中讲的还是很细的。

loss:

一个是加权bce,一个是加权iou loss。但是加权bce其实不如用dice loss.

def structure_loss(pred, mask):
    """
    它独立计算每个像素的损失,忽略了图像的全局结构。
    在以背景为主的图片中,前景像素的损失会被稀释。
    它对所有像素权重相同。
    """
    # 损失函数由bce和加权iou组成
    # 1.每个像素点选了周边15个像素,stride=1,不做降采样,5是超参,和wbce进行相乘,加权bce更关注难像素,同时加入了局部结构信息
    weit = 1 + 5 * torch.abs(F.avg_pool2d(mask, kernel_size=31, stride=1, padding=15) - mask)
    wbce = F.binary_cross_entropy_with_logits(pred, mask, reduce='none')
    wbce = (weit * wbce).sum(dim=(2, 3)) / weit.sum(dim=(2, 3))

    # 2.加入全局结构信息,引入了加权iou
    pred = torch.sigmoid(pred)
    inter = ((pred * mask) * weit).sum(dim=(2, 3))
    union = ((pred + mask) * weit).sum(dim=(2, 3))
    wiou = 1 - (inter + 1) / (union - inter + 1)
    return (wbce + wiou).mean()

猜你喜欢

转载自blog.csdn.net/u012193416/article/details/126644225
今日推荐