news 2026/9/16 16:15:55

10分钟部署Grounding DINO:一句话定位图像中任意物体的实操清单

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
10分钟部署Grounding DINO:一句话定位图像中任意物体的实操清单

10分钟部署Grounding DINO:一句话定位图像中任意物体的实操清单

【免费下载链接】GroundingDINO[ECCV 2024] Official implementation of the paper "Grounding DINO: Marrying DINO with Grounded Pre-Training for Open-Set Object Detection"项目地址: https://gitcode.com/GitHub_Trending/gr/GroundingDINO

跟完本文,你在本地就能跑通 Grounding DINO——一个开放集目标检测模型:传入一张图和一句自然语言,它返回图中与文字匹配的物体框。全程约 10 分钟,命令不超过 4 条,无需标注数据、无需训练。适合第一次接触目标检测、或想快速验证"文本找物体"效果的读者。

项目速览:用文字做开放集目标检测

Grounding DINO(ECCV 2024 论文官方实现)把 DINO 检测器与文本接地预训练结合,输入是"图像 + 文本"对,输出是图中匹配该文本的边界框。它不依赖固定类别表,文字里写什么名词,就能检什么物体。

核心亮点:

  • 开放集检测:无训练类别限制,COCO 零样本评测约 48.5 AP(训练全程未用 COCO 数据)
  • 多物体一次输出:默认返回 900 个候选框,按文本相似度过滤,一句提示可框出多类目标
  • 官方集成生态:demo/ 目录提供 Gradio Web UI、与 Stable Diffusion 和 GLIGEN 结合的图像编辑 notebook

部署准备:环境依赖清单

项目要求说明
Python3.8+官方 environment.yaml 基于 3.9
PyTorch带 CUDA 版本模型含 C++/CUDA 算子,安装时会现场编译
CUDA_HOME 环境变量必配不配置则扩展不编译,运行时报_C未定义
磁盘约 1 GB权重文件约 400 MB,外加依赖包
GPU建议有无卡可加--cpu-only参数跑纯 CPU 模式,但推理慢

依赖列表见 requirements.txt:torch、torchvision、transformers、timm、opencv-python、supervision 等,pip install -e .会一并装上。

最短部署路径:3步装好Grounding DINO

第 1 步:拿代码

git clone https://gitcode.com/GitHub_Trending/gr/GroundingDINO cd GroundingDINO

第 2 步:装依赖(会现场编译 CUDA 扩展,耗时几分钟)

export CUDA_HOME=/usr/local/cuda # 改成你机器上 CUDA 的实际路径 pip install -e .

echo $CUDA_HOME确认非空。找不到路径时执行which nvcc查看,如输出/usr/local/cuda/bin/nvcc,就取/usr/local/cuda

第 3 步:下权重

  • 推荐方式:到项目的 Releases 页面(v0.1.0-alpha),下载 Swin-T 版groundingdino_swint_ogc.pth,存入weights/目录
  • 备选方式:HuggingFace 仓库ShilongLiu/GroundingDINO中的同名文件,可用huggingface-cli download拉取;国内网络先把HF_ENDPOINT指向 hf-mirror.com 镜像再执行

权重只有两个:Swin-T(本教程使用,零样本 48.4 AP)和 Swin-B(56.7 AP,文件更大)。

跑通验证:一条推理命令 + 成功标准

用仓库自带的猫狗示例图.asset/cat_dog.jpeg做输入:

python demo/inference_on_a_image.py \ -c groundingdino/config/GroundingDINO_SwinT_OGC.py \ -p weights/groundingdino_swint_ogc.pth \ -i .asset/cat_dog.jpeg -o outputs -t "cat . dog ."

成功标准:outputs/下生成两个文件——raw_image.jpg是原图,pred.jpg是标注图,图中应出现带 "cat"、"dog" 文字标签的矩形框。框住位置和文本对应,即模型工作正常。

它能帮你做什么:真实场景

  • 用一句话框出画面里任意物体:-t "chair"即可定位椅子,多类目标用.分隔,如cat . dog . person
  • 自动预标注数据集:对图片文件夹批量跑推理,把结果转成 COCO 格式(参考 demo/create_coco_dataset.py),省去人工画框
  • 浏览器里试用:python demo/gradio_app.py启动 Gradio 界面,上传图片、输入文字直接看框
  • 给生成式模型当地图:demo/ 下的 notebook 演示了先用它定位、再交给 Stable Diffusion 或 GLIGEN 做精确图像编辑

常见卡点速查:模型加载失败与无框排查

症状原因一行修复
NameError: name '_C' is not defined装依赖时CUDA_HOME未配置,扩展没编译设置export CUDA_HOME后重新 clone 并执行pip install -e .
输出图一个框都没有提示文本含冗余描述,或阈值过高文本只留名词并用.分隔,--box_threshold降到 0.25
推理极慢、显存为 0实际跑在 CPU 上GPU 机器检查 CUDA 版本匹配;只想试跑则显式加--cpu-only降低预期

后续路线:微调、集成与性能优化

  • Web 交互:python demo/gradio_app.py,可调 box/text 阈值实时看效果
  • COCO 零样本评测:python demo/test_ap_on_coco.py跑分,Swin-T 预期 48.5 AP 左右
  • 图像编辑集成:跑 demo/image_editing_with_groundingdino_stablediffusion.ipynb 和 GLIGEN 版 notebook
  • 换更强权重:下载 Swin-B 版groundingdino_swinb_cogcoor.pth,配置改为 groundingdino/config/GroundingDINO_SwinB_cfg.py

到这里,一条命令跑通开放集检测已经掌握。下一步建议:把-i换成你自己的一张业务图片,用真实文本提示再跑一遍demo/inference_on_a_image.py,确认效果符合预期。

【免费下载链接】GroundingDINO[ECCV 2024] Official implementation of the paper "Grounding DINO: Marrying DINO with Grounded Pre-Training for Open-Set Object Detection"项目地址: https://gitcode.com/GitHub_Trending/gr/GroundingDINO

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/16 16:14:57

STM32L496低功耗MCU上实现mbedtls TLS 1.2实战指南

简介:本资源是一套面向嵌入式开发者的STM32L4系列低功耗MCU实战工程,聚焦RT-Thread操作系统下基于mbedtls的TLS安全通信实现,适用于物联网终端设备安全接入、工业数据加密传输等典型场景,适合具备RTOS基础与C语言开发经验的中级以…

作者头像 李华
网站建设 2026/9/16 16:14:53

基于STM32的超声波测厚仪:从脉冲回波原理到工程落地

简介:基于STM32单片机设计的超声波测厚仪完整解决方案,面向嵌入式开发者、电子竞赛参赛者及测控类课程设计人员,解决在1.2mm~225mm范围内对物体厚度的非接触式精准测量问题,设计误差控制在(1%H0.1)mm以内。资源共44个文…

作者头像 李华
网站建设 2026/9/16 16:14:28

提示词工程:提升AI交互效果的核心技术

1. 提示词工程入门:从基础概念到核心价值提示词工程(Prompt Engineering)是当前人工智能交互领域最关键的实践技能之一。简单来说,它就是通过精心设计输入文本(即"提示词")来引导AI模型输出更符合…

作者头像 李华
网站建设 2026/9/16 16:13:51

基于PHP的微信小程序公众号SaaS管理系统架构与实现

简介:这份基于PHP的微信小程序公众号SaaS管理系统,为需要快速搭建微信生态多用户平台的开发者、中小企业及独立站长提供了一套可运行的后台解决方案。系统围绕小程序与公众号的账号管理、用户绑定、消息交互等典型场景组织代码,适合具备一定P…

作者头像 李华
网站建设 2026/9/16 16:12:46

大模型应用创业公司的市场格局与技术选型指南

1. 大模型应用创业公司的市场格局分析2023年全球大模型应用市场规模已突破200亿美元,年增长率超过300%。在这个爆发式增长的市场中,创业公司正通过垂直领域深耕、技术栈创新和商业模式重构三个维度建立竞争优势。根据技术路线差异,当前主流玩…

作者头像 李华
网站建设 2026/9/16 16:12:02

LBM多孔介质流动MATLAB仿真:D2Q9与D3Q19实现与渗透率标定

简介:面向LBM(格子玻尔兹曼方法)初学者与相关专业课程设计人群,内容是国外经典的D2Q9与D3Q19模型Matlab实现。代码采用参数化编程,清晰标注注释,可方便修改参数并直接运行,适合用于本科毕设、课…

作者头像 李华