论文阅读——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:

,  

三、

下面是微调框:

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

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

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

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

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

损失函数:

四、

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

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

用预训练的Fs编码patch得到

计算分数:

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

最终损失为:

五、

泛化到开放词汇检测:

轮廓向量集合:

图片向量集合:

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

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

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

只训练Vs和Vp

学习跨类别的FGSBIR:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/161321.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

eBPF BCC开源工具简介

目录 官方链接 编译安装 ubuntu版本 安装 examples tools hello_world.py demo 运行报错 网上目前的解决办法 错误分析过程 python版本检测 libbcc库检查 python3 bcc库检查 正常输出 监控进程切换 运行输出 监控CPU直方图 缓存命中率监控:caches…

uni-app学习笔记

目录 一、前期准备 1、项目认识 2、pages.json基本配置 3、创建页面 二、tabBar 1、获取图标 2、代码配置 三、基础认识 1、页面生命周期 2、App.vue应用生命周期 四、基础组件 1、scroll-view可滚动视图区域 2、提示框 3、swiper滑块视图容器 4、form表单组件 一…

5.数据表基本操作

目录 1.创建数据表 创建数据表的语法格式: 查看当前数据库的表: 主键 1.单字段主键 (1)在定义列的同时指定主键,语法规则如下: (2)在定义完所有列之后指定主键。 2.多字段联合主键 外键: 非空约束&#xff1…

uniapp: 前端利用百度云OCR实现文字识别(身份证识别功能,别的功能类似)

第一章 前言 介绍如何使用百度智能云实现我们想要的效果,需要在下面这个网址注册账号: 百度智能云-云智一体深入产业 使用文档在该网址上: 简介 - 文字识别OCR 请求成功的效果,如下图: 搜索产品(例如文字…

python脚本-网页爬虫获取网页图片

python脚本-网页爬虫获取网页图片 代码 import requests import re import time url"http://10.9.47.154/python-spider/" # 爬取网站的url headers {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like …

Linux中的高级IO

文章目录 1.IO1.1基本介绍1.2基础io的低效性1.3如何提高IO效率1.4五种IO模型1.5非阻塞模式的设置 2.IO多路转接之Select2.1函数的基本了解2.2fd_set理解2.3完整例子代码(会在代码中进行讲解)2.4优缺点 3.多路转接之poll3.1poll函数的介绍3.2poll服务器3.…

51单片机汇编-点亮一个led

文章目录 前言1.打开IDE2.设置编辑器3.设置输出4. 原理图5.编写代码6 编译7.下载8.其它代码1.LED闪烁2.跑马灯 前言 51单片机基础 本章主要介绍打开一个led,具体采用51汇编 1.打开IDE 选择STC89C52RC 后缀是.asm 2.设置编辑器 3.设置输出 4. 原理图 5.编写代码 ORG 00H;伪代…

linux之按键中断

查看原理图确认引脚 可以看到按键有两个,分别对应GPIO5_1和GPIO4_14 配置pinctrl,配置成GPIO模式 1.使用官方工具,配置下引脚 2.将生成的代码复制到设备树里 创建设备节点 生成二进制设备树文件 在工具链表下使用 make dtbs 或者使…

加法运算、 || 、 赋值运算

一、加法运算 在这里插入图片描述 二、&& || 三、赋值运算 四、js类型就八种: 五、css权重、 六:布局,尽量使用块盒。 七、小数精度存储的问题:存的不精确,算的肯定也是有问题的。 八、找单身狗算法题…

Unity之UI、模型跟随鼠标移动(自适应屏幕分辨率、锚点、pivot中心点)

一、效果 UI跟随鼠标移动, 动态修改屏幕分辨率、锚点、pivot等参数也不会受到影响。同时脚本中包含3d物体跟随ui位置、鼠标位置移动 二、屏幕坐标、Canvas自适应、锚点、中心点 在说原理之前我们需要先了解屏幕坐标、Canvas自适应、锚点、中心的特性和之间的关系。 1.屏幕坐标…

Leetcode—110.平衡二叉树【简单】

2023每日刷题(十九) Leetcode—110.平衡二叉树 实现代码 /*** Definition for a binary tree node.* struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* };*/ int preFunc(struct TreeNode* root) {if(root…

【入门Flink】- 06Flink作业提交流程【待完善】

Standalone 会话模式作业提交流程 代码生成任务的过程: 逻辑流图(StreamGraph)→ 作业图(JobGraph)→ 执行图(ExecutionGraph)→物理图(Physical Graph)。 作业图算子链…