ODISE
利用预训练扩散模型实现任意文本驱动的全景分割,CVPR 2023 Highlight 论文
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
利用预训练扩散模型实现任意文本驱动的全景分割,CVPR 2023 Highlight 论文
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象这样一个场景:你是一位自动驾驶公司的算法工程师,正在调试车辆的感知系统。某天产品经理告诉你:"能不能让系统识别出视频里的外卖电动车骑手?"——按照传统方法,你需要手动标注数千张包含电动车的图片,训练一个专用检测器,前后折腾两三周。但有了 ODISE,你只需要输入一句话"外卖骑手"("delivery rider"),系统就能在一帧画面中精准分割出所有外卖骑手的轮廓——哪怕训练集中从未出现过这个类别。
这就是 ODISE(Open-Vocabulary DIffusion-based Panoptic SEgmentation)带来的范式转变。
ODISE 是什么? 简单来说,它是一个开放词汇的全景分割(Panoptic Segmentation)框架,能够根据任意文本描述,对图像中的所有物体和场景区域同时进行语义分割和实例分割。
全景分割是计算机视觉中一项极具挑战的任务——它要求算法不仅要识别"画面里有什么"(语义分割),还要区分"哪块区域属于哪个具体物体"(实例分割)。传统方法只能识别预先定义好的固定类别(如 COCO 数据集的 80 类),无法泛化到训练集外的概念。
ODISE 由 NVIDIA 研究团队提出,论文发表于 CVPR 2023 并获得了 Highlight 论文的荣誉(仅约 5% 的录用论文获此殊荣)。作者团队来自 NVIDIA Research、UC San Diego 和 Facebook AI Research,阵容豪华。
这项工作的核心洞察在于:大型预训练的文本-图像生成模型(如 Stable Diffusion)蕴含了极其丰富的视觉-语义对齐知识,这些知识可以迁移到开放词汇分割任务中。
ODISE 的架构设计精妙地融合了两类预训练模型的优势:
1. 文本-图像扩散模型(Stable Diffusion)
Stable Diffusion 不仅仅是一个图像生成器,其 U-Net 编码器在训练过程中积累了大量的视觉-语义对应关系。当模型学会"根据文字生成图片"时,它实际上建立了从语言空间到视觉空间的精细映射。ODISE 直接从扩散模型的 UNet 特征中蒸馏出开放词汇的语义信息。
2. 判别式视觉模型(CLIP / Open-CLIP)
CLIP 擅长理解图像和文本的对应关系,但其视觉编码器本身不具备像素级的分割能力。ODISE 利用 CLIP 的文本-图像匹配能力来校准和增强从扩散模型中提取的语义特征。
核心流程:
从代码结构来看,项目基于 Meta 的 Detectron2 框架构建(这是 Mask2Former、DETR 等知名分割模型的底层框架),提供了 odise/modeling/wrapper/OpenPanopticInference 等核心模块,并在 demo/app.py 中集成了 Gradio UI,支持零代码交互式体验。
ODISE 在多个标准数据集上刷新了开放词汇全景分割的 SOTA(当前最优)性能:
典型应用场景:
项目在 GitHub 上提供了两个预训练模型检查点(通过 GitHub Releases 分发),分别基于 COCO 标注和 Caption(图像描述)训练,可直接下载使用。
ODISE 展现了 NVIDIA 研究团队一贯的高质量工程水平:
优点:
docker/Dockerfile,基于 pytorch/pytorch:1.13.1-cuda11.6 镜像,依赖预装demo/app.py),一行命令启动可视化界面pip install -e . 一键安装,setup.py 自动处理模型 zoo 配置门槛:
图1:ODISE 整体架构,双模型协同提取开放词汇语义特征
图2:COCO 数据集分割效果,开放词汇支持任意文本查询
图3:ADE20K 室内场景分割,细粒度区域精准识别
图4:Ego4D 第一人称视频分割,展示跨领域泛化能力
ODISE 并非完美,在实际落地中需要注意:
ODISE 代表了 2023 年 CV 领域的一个重要趋势:将生成式模型的语义知识迁移到判别式任务中。它证明了 Stable Diffusion 这类大型生成模型不仅仅能画画,其内部表征中蕴含着丰富的可迁移视觉知识。
这一思路随后被大量后续工作继承和发展,推动了开放词汇感知领域的快速发展。对于希望在视觉系统中快速引入新类别的团队来说,ODISE 提供了可参考的技术路线和高质量的参考实现。