T-Rex2 开放集目标检测快速上手:免训练的文本-视觉提示检测指南 T-Rex2 开放集目标检测快速上手免训练的文本-视觉提示检测指南【免费下载链接】T-Rex[ECCV2024] API code for T-Rex2: Towards Generic Object Detection via Text-Visual Prompt Synergy项目地址: https://gitcode.com/GitHub_Trending/tre/T-RexT-Rex2 是一个开放集目标检测模型它把文本提示与视觉提示合进同一个模型。做目标检测时不用为某个新类别重新训练给一张图、圈几个框或写一句文本就能拿到目标框和置信度。它解决的是传统检测器“每加一类就重训一轮”的问题。从场景到方案新类别检测的三条出路这一节讲传统检测器卡住的三类场景以及 T-Rex2 的对应解法。传统检测器是闭集模型训练时见过什么类别就只能检什么新加一个“鸭苗”或“零件缺口”就要重新收集数据、标注、调参训练一轮。另一类更麻烦的场景是目标没有现成的文字描述——比如某种外观独特的缺陷件写文本很难准确表达但你在图里指给它看一眼就清楚了。第三类是同一对象散落在多张图里需要检测器跨图像泛化而不是一张图一个模型。T-Rex2 的解法是把文本、框、点都变成“提示”由一个模型统一处理核心能力可以收束为文本提示用自然语言短语描述目标直接检出该类对象框/点视觉提示在图上拉一个矩形或点一下即可指定要检测的目标跨图泛化在参考图上标注到另一张图上检测相同对象嵌入复用把一批标注转成可反复调用的视觉嵌入零样本检测对训练集未覆盖的新类别无需重训即可使用5 分钟快速上手从克隆到第一次调用这一节给出从克隆仓库到第一次检测调用的最短路径。T-Rex2 以 API 形式提供仓库本身是一个轻量封装包安装只需三步git clone https://gitcode.com/GitHub_Trending/tre/T-Rex cd T-Rex pip install dds-cloudapi-sdk0.1.1 pip install -v -e .API token 通过邮件申请trex/model_wrapper.py的文档字符串里写明了申请方式token 拿到后填入封装类即可发起第一次调用from trex import TRex2APIWrapper, visualize trex2 TRex2APIWrapper(your_token) # prompts 为框或点提示列表详见 demo_examples/ 下的示例脚本 result trex2.visual_prompt_inference(target_image, prompts)[0]返回的result是{scores: ..., labels: ..., boxes: ...}结构boxes 为[xmin, ymin, xmax, ymax]像素坐标配合visualize可直接把结果画回原图。不想写代码的话仓库提供的gradio_demo.py和官方在线 demo 可以先跑起来看效果。官方在线 demo上传图像、给出提示后返回检测框结果它是怎么工作的提示、特征与相似度这一节用大白话讲清两种提示如何与检测器配合。可以把 T-Rex2 想象成“你指一件商品店员负责找满货架”的机制。输入图像先被编码成特征图文本提示走文本编码器框和点则通过位置编码变成位置特征二者与图像特征一起送入检测解码器。解码器里有一个“对比对齐”环节把每个候选框的视觉特征与文本特征、视觉提示特征逐一比较相似度高低就是判定“是否命中同类目标”的依据。所以文本描述适合“说得出名字”的目标框和点适合“说不出名字”的目标两者还能同时给出互相补充。这套流程让你无需关心模型内部参数只要给对提示格式。架构图图像编码器、文本编码器与视觉提示在解码器中做对比对齐输出检测框按使用方式过一遍能力四种典型用法这一节按你实际的使用方式把能力拆成四种用法。用框或点在图像里圈出新目标交互式视觉提示提示图和待测图是同一张你在图上标rect框或point点visual_prompt_inference就会返回图中所有同类目标的框。例如广场场景里只圈了两三只鸽子和一两个人模型会把满图飞鸟和行人全部框出适合需要精确指定目标的交互场景。交互式示例少量框提示后图中所有鸽子黄框与行人青框被逐一检出用一张参考图到另一张图里找相同对象通用视觉提示提示来自一张或多张参考图target_image是另一张图。demo_examples/generic_inference.py里用两张球场参考图给出三个框再到目标图上检测同一类球员实现“一次标注多张图复用”适合批量图像里追踪固定对象的场景。通用提示结果参考图中的提示迁移到目标图像后检出的目标框把一批标注转成可复用的嵌入这条链路组合了两个 API先用visual_prompt_inference(target_image, prompts, return_type[embedding])拿到嵌入base64 字符串官方示例存成 txt之后每次检测只需embedding_inference(target_image, embedding)不再需要重复传参考图。相当于给目标对象办了张“名片”批量处理同一类对象时最省事。用 Gradio 页面组合交互标注与两种提示pip install gradio-image-prompter后运行python gradio_demo.py --trex2_api_token token本地页面支持鼠标拉框、点点的交互标注并可在交互式同图与通用参考图目标图两种模式间切换适合在正式集成 API 前快速验证检测效果。Gradio 页面框/点标注、交互式与通用视觉提示模式的可视化操作界面效果与优势核对一张表看清能力与边界这一节用紧凑表格核对 T-Rex2 的能力与客观边界。维度仓库资料中的事实客观限定零样本对训练集未覆盖的新类别可直接检测无需重训仓库未附公开 benchmark 数值精度需在自己数据上验证调用形态HTTP API返回 scores/labels/boxes 三类字段推理在服务端运行需联网且持有 token结果过滤demo 脚本默认用 0.3 阈值过滤低分框API 本身不做过滤误检框需自行按 score 筛掉场景覆盖README 列出农业、工业、零售、交通、物流等官方已衍生 CountAnything 计数与 T-Rex Label 标注两款产品边界与注意事项三个容易踩的坑这一节列出使用 T-Rex2 时的三个注意点。API-only本仓库是 API 封装核心即trex/model_wrapper.py一个文件不含模型权重与本地推理代码token 通过邮件申请免费额度面向教育研究用途提示格式rect 为[xmin, ymin, xmax, ymax]像素坐标交互模式下提示图必须与目标图相同错用参考图会导致提示坐标错位许可仓库采用 IDEA License 1.0商用前建议先核对许可条款与 API 使用协议适合需要检测“新类别、叫不出名字的对象”且能接受 API 调用形态的你T-Rex2 可以成为零样本目标检测的第一选择。【免费下载链接】T-Rex[ECCV2024] API code for T-Rex2: Towards Generic Object Detection via Text-Visual Prompt Synergy项目地址: https://gitcode.com/GitHub_Trending/tre/T-Rex创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考