DDS-LOGO

探访 T-Rex2 家族 Part 1:使用文本-视觉提示的模型基座 T-Rex2

一、为什么需要 T-Rex2

在人工智能视觉领域,目标检测一直面临着一个根本性挑战:如何让 AI 系统识别出任何我们想要的物体,而不仅限于预先定义的类别?想象一下这样的场景:你想让 AI 在照片中找出“那个带有特殊花纹的古董花瓶”或“某种热带雨林的不知名稀有植物”。传统 AI 可能对此束手无策,因为这些描述超出了它的预设类别范围。传统目标检测模型通常只能识别训练数据中出现过的物体类型,这极大限制了其在真实世界应用中的灵活性。

图一 对象类别.png 图1 对象类别分布图,展示了不同检测范式如何解决长尾问题。文本提示擅长处理常见对象,而视觉提示在稀有对象方面表现出色。

针对这一挑战,研究人员开发了T-Rex2——一个利用文本和视觉提示互补优势来实现更多功能的目标检测模型。文本提示擅长识别常见对象并传达抽象概念,而视觉提示(如点或框)提供了一种更直观的方式来识别那些难以用语言描述的稀有或视觉复杂的对象。

二、什么是 T-Rex2

2.1 T-Rex2 的核心洞见

研究表明,文本和视觉提示在物体频率谱系上展现出明显的互补性。 如下图所示,对于常见物体(频率排名前400),文本提示通常表现更好;而对于稀有物体(频率排名800-1200),视觉提示则显著优于文本提示。

图3 互补性.png 图2 文本和视觉提示在按频率排序的对象类别中的性能差异。文本提示在常见对象(正值)上表现更好,而视觉提示在稀有对象(负值)上表现更出色。

这种互补性正是T-Rex2设计的核心洞见——通过结合两种提示的优势,系统能够处理从常见到极其稀有的全谱系物体,比如:

(1)文本提示允许用户通过语言描述要检测的对象。比如输入“人”、“狗”或“自行车”等词汇,系统就能理解并检测相应物体。这种方式特别适合处理常见物体,因为:

a. 常见物体通常有明确的语言定义;

b. AI 系统已经从大量文本数据中学习了这些概念;

c. 文本提示能够传达抽象概念和类别信息。

例如,一位野生动物摄影师可以简单输入"狮子"、"斑马"和"大象",T-Rex2 就能在非洲草原的照片中标记出所有这些动物。

(2)视觉提示则允许用户通过点击或画框的方式直接在图像上指示想要检测的物体。这种方式特别适合处理稀有或视觉复杂的对象,因为:

a. 某些物体难以用语言准确描述;

b. 稀有物体在语言训练数据中可能几乎不存在;

c. 视觉提示直接展示了物体的视觉特征。

例如,一位昆虫学家研究一种罕见的热带甲虫,可能很难用准确的文字描述它,但只需在一张照片上框选这种甲虫,T-Rex2 就能在所有照片中找出类似的甲虫,即使系统从未"学习"过这种特定甲虫。

2.2 T-Rex2 的技术架构

T-Rex2 基于 DETR(DEtection TRansformer)架构构建,提供了端到端的目标检测框架。该模型包含几个关键组件:

图2 T-Rex2 的架构.png 图3 T-Rex2 架构图,展示了文本和视觉提示如何通过对比对齐机制(contrastive alignment mechanism)进行整合

(1)图像编码器:使用视觉骨干网络(如Swin Transformer)和带有可变形自注意力(deformable self-attention)的 transformer 编码器层从输入图像中提取多尺度特征图。

(2)视觉提示编码器:通过以下方式处理用户指定的视觉提示(点或框):

a. 使用固定的正弦-余弦嵌入层和线性投影进行位置嵌入;

b. 多尺度可变形交叉注意力(Multi-scale deformable cross-attention)从图像特征图中提取视觉提示特征。

(3)文本提示编码器:使用 CLIP 的文本编码器编码类别名称或短语,利用 [CLS] 标记输出作为文本提示嵌入。

(4)框解码器:使用类似 DETR 的解码器,通过解码器层的迭代细化预测边界框。该解码器使用提示嵌入作为分类层的权重。

(5)对比对齐(Contrastive Alignment)模块:这是 T-Rex2 最具创新性的部分,它实现了文本和视觉提示之间的"翻译"。通俗地说,这就像构建了一个桥梁,让系统能够:

a. 理解"猫"这个词和猫的视觉特征之间的关系;

b. 从文本描述中学习视觉特征,反之亦然;

c. 在共享特征空间中表示相同概念的不同提示。

通过这种机制,即使面对以前从未见过的物体,T-Rex2 也能建立文本描述和视觉特征之间的关联,大大增强了模型的通用性。

三、T-Rex2 的工作流和场景

T-Rex2的多功能架构支持四种不同的推理工作流程,每种都适合不同的应用场景:

(1)交互式视觉提示工作流:用户可以通过在图像上提供视觉提示(点或框)与模型交互。模型随后检测所指示对象的所有实例。

代码1.png

场景示例:医学影像分析

一位放射科医生正在分析肺部 CT 扫描。她发现一种异常结构,但不确定它的专业名称。她只需点击这个结构,T-Rex2 就能在所有患者的扫描中找出类似的异常,帮助医生快速比较不同病例。

代码1-1.png

(2)通用视觉提示工作流:用户可以提供来自不同图像的视觉示例,模型将在多个图像中检测类似对象。

代码2.png

场景示例:工业质检

一家电子元件制造商发现了一种新型产品缺陷。质检人员可以从不同角度拍摄几张存在这种缺陷的照片作为样本,系统便能自动在生产线上识别出所有具有类似缺陷的产品,即使这种缺陷没有标准化名称。

代码2-2.png

(3)文本提示工作流:用户可以使用自然语言描述对象,模型将检测所有匹配描述的实例。

代码3.png

场景示例:智能城市监控

城市管理人员需要分析交通摄像头录像,查找“行人”、“自行车”和“机动车”在特定区域的活动。通过简单的文本提示,T-Rex2能准确识别出所有相关对象。

代码3-1.png

(4)混合提示工作流:用户可以结合文本和视觉提示,利用两者的优势。

代码4.png

场景示例:考古研究

一位考古学家研究古埃及壁画,需要同时识别"法老像"和一种特殊的象形文字符号。她可以输入"法老"作为文本提示,同时用框选方式标记那个特殊符号,T-Rex2能同时检测这两类元素。

代码4-1.png

这些工作流程使 T-Rex2 能够高度适应从自动标注到交互式目标检测的各种应用场景。

四、T-Rex2 的优势与局限性

T-Rex2 在各种基准测试和场景中展示了强大的性能:

(1)零样本目标检测:T-Rex2 在 COCO 数据集上取得了有竞争力的结果,且无需在 COCO 类别上进行特定训练,展示了其对未见类别的泛化能力。

(2)长尾检测:在包含许多稀有类别的LVIS数据集上,T-Rex2 在稀有和常见类别上的表现尤为出色,优于仅文本或仅视觉的方法。

(3)跨域泛化:T-Rex2 在 ODinW(野外目标检测)基准和 Roboflow100 数据集上展示了强大的跨域泛化能力。

(4)消融研究:研究证实了文本和视觉提示之间的对比对齐显著提高了两种模态的性能,在各种基准测试中获得了 2-3 个 AP 点的提升。

除了性能指标外,研究人员还开发了名为 DetSA-1B 的大规模数据集创建流程,以改进视觉提示目标检测的训练数据:

图4 DetSA.png 图4 DetSA-1B 数据集创建流程,使用 T-Rex2 和文本标注模型(TAP)为 SA-1B 图像生成框和类别标注。

尽管取得了上述成就,T-Rex2 仍存在一定的局限性,这些也是未来的改进方向:

(1)提示干扰:在某些情况下,文本和视觉提示之间的对齐可能导致相互干扰而非增强效果。未来会专注于开发更复杂的对齐机制,以保留每种模态的独特优势

(2)视觉提示效率:目前的方法需要多个视觉示例才能对通用概念检测实现良好的性能。需要进一步研究如何在保持准确性的同时减少这种需求。

(3)数据引擎优化:在SA-1B等大型数据集中,物体分类的准确性需要提高,以增强视觉提示检测训练数据的质量。

(4)实时性能:虽然没有明确提到,但对交互式应用而言,提高处理速度将非常有价值。

结语

T-Rex2 通过在统一框架内融合文本与视觉提示,显著解决了目标检测领域的长尾问题。该模型通过使用对比对齐机制,使文本和视觉两种提示形式相互增强,创建了更通用、更强大的检测系统。与此同时,凭借 4 种灵活的推理工作流程,T-Rex2 能够适应更加丰富的应用场景。

T-Rex2 在各种基准测试中的强大表现,特别是在长尾类别和跨域泛化方面,展示了其作为通用目标检测实用工具的潜力。随着这一领域研究的继续,T-Rex2 为开发更复杂的通用目标检测方法提供了坚实基础,这些方法将有望用来处理现实世界对象和场景的全部多样性。

彩蛋

  1. 论文《T-Rex2: Towards Generic Object Detection via Text-Visual Prompt Synergy》,作者:Qing Jiang, Feng Li, Zhaoyang Zeng, Tianhe Ren, Shilong Liu, Lei Zhang。链接:https://arxiv.org/abs/2403.14610

  2. 基于 T-Rex2 开发的智能标注工具 T-Rex Label:https://www.trexlabel.com/?source=dds

  3. 基于 T-Rex2 的精准拍照计数工具 CountAnything:https://deepdataspace.com/products/countanything

  4. 调用 T-Rex2 API 请前往 DINO-X 开放平台:https://cloud.deepdataspace.com/