论文阅读——What Can Human Sketches Do for Object Detection?(cvpr2023)

论文:https://openaccess.thecvf.com/content/CVPR2023/papers/Chowdhury_What_Can_Human_Sketches_Do_for_Object_Detection_CVPR_2023_paper.pdf

代码:What Can Human Sketches Do for Object Detection? (pinakinathc.me)

一、

Baseline SBIR Framework:给一组图片:轮廓和图片,学习到对应的两个特征,然后使用余弦距离计算triplet loss。

本文使用hard-triplet loss,再加上一个分类损失

二、

        使用RPN或者selective search生成框和对应的特征,输入到分类头检测头得到两个分数。通过这两个来判断图片中是否出现某个类别。分类头分数分别判断每个区域属于某个类别的概率,检测头分数判断这个patch对属于被分到的这个类别的贡献度。

labels:

论文阅读——What Can Human Sketches Do for Object Detection?(cvpr2023)_第1张图片

论文阅读——What Can Human Sketches Do for Object Detection?(cvpr2023)_第2张图片

,  

论文阅读——What Can Human Sketches Do for Object Detection?(cvpr2023)_第3张图片

三、

下面是微调框:

论文阅读——What Can Human Sketches Do for Object Detection?(cvpr2023)_第4张图片

因为没有坐标标注,所以使用了一个迭代微调分类器对每个ROI预测一个精细的类别分数,标签从第k-1步迭代获得:

1、计算每个类别分数最高的patch

2、和这个patch重叠度高的(iou>0.5)patch都是一个类别

3、如果某个区域和任何一个分数高的patch重合度都不高,就是背景。

4、如果某个类别没出现在图片中,也是0

损失函数:

论文阅读——What Can Human Sketches Do for Object Detection?(cvpr2023)_第5张图片

论文阅读——What Can Human Sketches Do for Object Detection?(cvpr2023)_第6张图片

四、

然后检测一般是预先固定多少类别,作者克服了这个限制

论文阅读——What Can Human Sketches Do for Object Detection?(cvpr2023)_第7张图片

每个头原本预测分数,改为计算嵌入向量

用预训练的Fs编码patch得到

计算分数:

多加了一个来自原始图片的监督Fp,

最终损失为:

论文阅读——What Can Human Sketches Do for Object Detection?(cvpr2023)_第8张图片

五、

泛化到开放词汇检测:

轮廓向量集合:

图片向量集合:

映射到ViT第一层,以诱导CLIP学习下游轮廓/照片分布

ViT权重冻结,CLIP学习到知识被蒸馏为prompts的权重。

最后新的轮廓和图片encoder为使用sketch prompt和图片prompt的CLIP’s image encoder,

只训练Vs和Vp

学习跨类别的FGSBIR:

论文阅读——What Can Human Sketches Do for Object Detection?(cvpr2023)_第9张图片

你可能感兴趣的:(论文,人工智能)