基于GroundingDINO构建目标检测数据集自动标注工具-支持COCO和VOC格式

2023-11-17

0.介绍

GroundingDINO是最新发布的zero-shot目标检测器,在多个数据集上取得了很好的结果。在该方法的基础上,本人修复该方法自动标注的bug,并增加VOC格式。

1.安装GroundingDINO

根据github提供的源码和说明,配置环境和下载权重文件。链接如下:

https://github.com/IDEA-Research/GroundingDINO

2.修改bug

直接运行:

python demo/create_coco_dataset.py

当图片中没有检测到目标时将会报错:

  File "/media/vv/detection/GroundingDINO/groundingdino/util/inference.py", line 84, in predict
    return boxes, logits.max(dim=1)[0], phrases

RuntimeError: cannot perform reduction function max on tensor with no elements because the operation does not have an identity

这是因为当没有检测到目标时,boxes的输出上tensor([ ]),但是logits和phrases上完全没有输出的,所以无法return回来。

我们对该代码进行简单修改,在83行后,将return替换:

    if len(logits) == 0:
        logits = []
        phrases = []
        return boxes, logits, phrases
    else:
        return boxes, logits.max(dim=1)[0], phrases

综上,我们就可以直接运行代码了。

3.增加VOC格式

将create_coco_dataset.py复制一份,命名为create_voc_dataset.py,将68行

    if export_dataset:
        dataset.export(
            'coco_dataset',
            dataset_type=fo.types.COCODetectionDataset,
        )

修改为:

    if export_dataset:
        dataset.export(
            'voc_dataset',
            dataset_type=fo.types.VOCDetectionDataset,
        )
        

4.注意事项

4.1超参数设置

 (1)源代码box_threshold设置为0.15,在生成数据集时有大量误报,建议设置为0.4以上

 (2) text_prompt设置的类别越多,检测效果会下降;

 (3)export_dataset默认上false,需要设置为true;

4.2数据清洗

该算法标注的数据集包括大量无目标标注数据,如果使用VOC格式,可以参考本人另一篇博客,删除无目标标注数据。

VOC格式数据集的图片和标注文件有效性检查

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

基于GroundingDINO构建目标检测数据集自动标注工具-支持COCO和VOC格式 的相关文章

  • 喜报|华测导航荣获“张江之星”领军型企业称号

    近日 2023年度 张江之星 企业培育名单发布 上海华测导航荣获2023年度 张江之星 领军型企业称号 据悉 张江之星 企业培育是上海科创办为落实 关于推进张江高新区改革创新发展建设世界领先科技园区的若干意见 张江高新区加快世界领先科技园区
  • Soul App:年轻人的社交状态,还有多少种可能?

    查尔斯 狄更斯在 双城记 的开篇写下 这是最好的时代 这是最坏的时代 这是智慧的时代 这是愚蠢的时代 这是信仰的时期 这是怀疑的时期 人们面前有着各样事物 人们面前一无所有 既然万事万物都和狄更斯所说般 好坏参半 那又何必执着于过去 苦恼于
  • 面对AI革新时,Soul App等社交应用的“出圈”解法是什么?

    2023年初 ChatGPT掀开海内外互联网 AI革新 的序幕 公众在惊讶于ChatGPT对于海量信息富有逻辑的整合归纳 帮助大家提升工作及学习效率之余 更为期待的莫过于有一天人工智能的 意识觉醒 十余年前由斯派克 琼斯 Spike Jon
  • 扬帆证券:三只松鼠去年扣非净利预增超1.4倍

    在 高端性价比 战略驱动下 三只松鼠 300783 重拾增势 1月15日晚间 三只松鼠发布成绩预告 预计2023年度净赢利为2亿元至2 2亿元 同比增加54 97 至70 47 扣非后净赢利为1亿元至1 1亿元 同比增速达146 9 至17
  • 明日 15:00 | NeurIPS 2023 Spotlight 论文

    点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入 哔哩哔哩直播通道 扫码关注AITIME哔哩哔哩官方账号预约直播 1月17日 15 00 16 00 讲者介绍 黄若孜 腾讯AI LAB游戏AI研究员 2020年复旦大学硕士毕业后
  • 性能大减80%,英伟达芯片在华“遇冷”,我方霸气回应:不强求

    中国这么大一块市场 谁看了不眼馋 在科技实力大于一切的今天 高端芯片的重要性不言而喻 作为半导体产业发展过程中不可或缺的一环 芯片技术也一直是我国技术发展的一大 心病 在美西方等国的联手压制下 我国芯片技术发展处处受阻 至今也未能在高端芯片
  • 作物叶片病害识别系统

    介绍 由于植物疾病的检测在农业领域中起着重要作用 因为植物疾病是相当自然的现象 如果在这个领域不采取适当的护理措施 就会对植物产生严重影响 进而影响相关产品的质量 数量或产量 植物疾病会引起疾病的周期性爆发 导致大规模死亡 这些问题需要在初
  • 2024 人工智能与大数据专业毕业设计(论文)选题指导

    目录 前言 毕设选题 选题迷茫 选题的重要性 更多选题指导 最后 前言 大四是整个大学期间最忙碌的时光 一边要忙着备考或实习为毕业后面临的就业升学做准备 一边要为毕业设计耗费大量精力 近几年各个学校要求的毕设项目越来越难 有不少课题是研究生
  • 如何快速申请GPT账号?

    详情点击链接 如何快速申请GPT账号 一OpenAI 1 最新大模型GPT 4 Turbo 2 最新发布的高级数据分析 AI画图 图像识别 文档API 3 GPT Store 4 从0到1创建自己的GPT应用 5 模型Gemini以及大模型
  • 手把手教你用 Stable Diffusion 写好提示词

    Stable Diffusion 技术把 AI 图像生成提高到了一个全新高度 文生图 Text to image 生成质量很大程度上取决于你的提示词 Prompt 好不好 前面文章写了一篇文章 一份保姆级的 Stable Diffusion
  • 机器学习算法实战案例:时间序列数据最全的预处理方法总结

    文章目录 1 缺失值处理 1 1 统计缺失值 1 2 删除缺失值 1 3 指定值填充 1 4 均值 中位数 众数填充
  • 用通俗易懂的方式讲解:使用 LlamaIndex 和 Eleasticsearch 进行大模型 RAG 检索增强生成

    检索增强生成 Retrieval Augmented Generation RAG 是一种结合了检索 Retrieval 和生成 Generation 的技术 它有效地解决了大语言模型 LLM 的一些问题 比如幻觉 知识限制等 随着 RAG
  • 不要再苦苦寻觅了!AI 大模型面试指南(含答案)的最全总结来了!

    AI 大模型技术经过2023年的狂飙 2024年必将迎来应用的落地 对 IT 同学来讲 这里蕴含着大量的技术机会 越来越多的企业开始招聘 AI 大模型岗位 本文梳理了 AI 大模型开发技术的面试之道 从 AI 大模型基础面 AI 大模型进阶
  • AI在保护环境、应对气候变化中的作用

    对于AI生命周期数据领域的全球领导者而言 暂时搁置我们惯常的AI见解和AI生命周期数据内容产出 来认识诸如世界地球日这样的自然环境类活动日 似乎是个奇怪的事情 我们想要知道 数据是否真的会影响我们的地球环境 简而言之 是 确实如此 但作为一
  • AI在广告中的应用——预测性定位和调整

    营销人员的工作就是在恰当的时间将适合的产品呈现在消费者面前 从而增加他们购买的可能性 随着时间的推移 营销人员能够深入挖掘越来越精准的客户细分市场 他们不仅具备了实现上述目标的能力 而且这种能力还在呈指数级提升 在AI技术帮助下 现在的营销
  • CorelDRAW2024官方中文版重磅发布更新

    35年专注于矢量设计始于1988年并不断推陈出新 致力为全球设计工作者提供更高效的设计工具 CorelDRAW 滋养并见证了一代设计师的成长 在最短的时间内交付作品 CorelDRAW的智能高效会让你一见钟情 CorelDRAW 全称 Co
  • 蒙特卡洛在发电系统中的应用(Matlab代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码实现
  • 3D点云检测神技 | UFO来了!让PointPillars、PV-RCNN统统涨点!

    作者 AI驾驶员 编辑 智驾实验室 点击下方 卡片 关注 自动驾驶之心 公众号 ADAS巨卷干货 即可获取 点击进入 自动驾驶之心 3D目标检测 技术交流群 本文只做学术分享 如有侵权 联系删文 在这篇论文中提出了一个关于在3D点云中检测未
  • 考虑光伏出力利用率的电动汽车充电站能量调度策略研究(Matlab代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码 数据
  • 基于节点电价的电网对电动汽车接纳能力评估模型研究(Matlab代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码 数据

随机推荐

  • Shell自动补全传参简单demo

    准备两个文件 File1 env bash buildsh prompt COMPREPLY local cur COMP WORDS COMP CWORD local cmd COMP WORDS COMP CWORD 1 local o
  • 机器学习模型评价指标(准确率、精度、召回率)

    模型评价指标 准确率 精度 召回率 机器学习中我们常常使用准确率 精度 召回率三大指标评价一个模型训练的好坏 那么这三大参数分别代表什么意义 在介绍评价指标前 需要先明确几个计算指标 真正例 True Positive TP 模型将测试样本
  • Python报错:ImportError: cannot import name XXX

    Python报错 ImportError cannot import name XXX 起因 在使用sklearn部分包库时出现该问题 尝试多种方法无果 解释及解决方法 语句中涉及的包库和已安装的包库出现了版本不一致的问题 比如你导入的包库
  • python利用百度/高德地图获取地理位置并转换

    提示 作者原创 转载请注明 文章目录 一 地理编码与逆编码 二 高德地图地理编码 三 百度地图地理编码 四 坐标转换和空间化 一 地理编码与逆编码 地理编码与逆编码表示的是地名地址与地理坐标 经纬度 互相转换的过程 其中 将地址信息映射为地
  • tensorflow遇到的坑

    tensorflow遇到的坑 tf norm norm pow 2 tf pow tf norm from centralized axis 1 2 2 norm sqrt sum square tensor norm pow 2 tf r
  • 龙湖股价快速收复失地,近4日累计上涨27.8%

    11月7日早盘 龙湖集团股价快速冲高 截至10点 报13 1港元 对应涨幅为2 5 全面收付上周一深调失地 从近期表现来看 龙湖集团股价已连续反弹多日 截至上周五收盘 4个交易日内累计上涨27 8 在过去一周内 多家地产公司的波动令市场情绪
  • 手写数字的识别分类+技术总结

    1 学习转载一篇关于机器学习手写数字的识别 Python 3 利用机器学习模型 进行手写体数字检测 Python 3 生成手写体数字数据集 2 技术总结 机器学习代码实现的初级阶段 既要自己上手项目 也要多看其他前辈的博文 特别是一些附加有
  • 测试工程师要进阶,就得明白这3点...

    在大型互联网公司带测试团队多年 也做过多年的测试工程师招聘工作 对测试工程师的能力也见过高高低低各种 今天 分享下这些年带领测试团队提高的一点思路和方法 还在成长期的测试工程师可以用来指导自己的学习 用这套框架给自己制定一套目标和学习框架
  • Word、WPS中表格的第一行和第二行中间间距,如何去掉,使得跟其他行间距相同

    Word WPS中表格的第一行和第二行中间间距 如何去掉 使得跟其他行间距相同 Word或wps表格已经设计好了很多表格样式供大家使用 如图1 图1 当不想第一行和第二行的间距相同时 取消首行填充即可 如果不间距未变 再将首行删除必行
  • 嵌入式Linux开发笔记之手动设置交叉编译工具链

    快速索引 开发平台 拷贝交叉编译工具链到Linux主机 1 通过 MobaXterm 远程登录 Linux主机 安装交叉编译工具链 1 创建 imx6ull toolchain目录存放交叉编译工具链 2 解压交叉编译工具 3 设置工具链永久
  • 博弈论

    文章目录 博弈论 什么是博弈论 博弈的前提 博弈的要素 博弈的分类 非合作博弈 有限两人博弈囚徒困境 合作博弈 无限多人博弈囚徒困境 常见的博弈定律 零和博弈 重复博弈 智猪博弈 斗鸡博弈 猎鹿博弈 蜈蚣博弈 酒吧博弈 枪手博弈 警匪博弈
  • react使用阿里云对象存储,ali-oss, antd upload to ali-oss

    最近写阿里云图片上传 碰到一些小问题 在此总结一下 项目环境 create react app antd node6 1 0 看了阿里云oss对象存储sdk 直接采用node 的安装方式 在使用的时候碰到了问题 yield client p
  • Partial Evaluation

    Scrapping your Inefficient Engine Using Partial Evaluation to Improve Domain Specific Language Implementation AnyDSL A P
  • C++程序基础(15):C++while循环例题

    C while循环例题 前言 例题 1 1 含k个3的数 做法分析 完整代码演示 前言 通过上节的介绍 大家对while循环语句想必也有了一定的了解 那么在本篇中我们将来看一道较为复杂的例题 帮助大家巩固和进一步理解while循环语句 例题
  • 四大含金量高的算法证书考试

    证书考试推荐 一 PAT 计算机程序设计能力测试 二 CCF CSP认证 三 团体程序设计天梯赛 四 蓝桥杯大赛 一 PAT 计算机程序设计能力测试 官网 PAT 计算机程序设计能力测试 PAT为浙江大学出的一款程序设计的测试网站 分为乙级
  • 在VS里面怎么用scanf函数

    大家请看这个页面 认为scanf函数不安全 考虑使用scanf s替换 但是这个scanf s函数是VS这个IDE提供的 不是C语言标准库中的函数 这就意味着你在你代码中使用了scanf函数 你的代码在VS编译器上是不能通过编译的 如果不用
  • 【Linux学习笔记】管理Linux操作系统:简单的关闭防火墙

    临时关闭防火墙 命令查看防火墙状态 root rst firewall cmd state running 防火墙处于开启状态 停止防火墙 root rst systemctl stop firewalld service root rst
  • 使用Java播放MP3或Wav音频

    JavaSound是一个小巧的低层应用程序接口 API 它支持数字音频和乐器数字接口 MIDI 数据的记录和回放 在JDK 1 3 0之前 JavaSound是一个标准的Java扩展API 但从Java 2的1 3 0版开始 JavaSou
  • Git Bash 中使用 Python 命令

    Git Bash 中使用 Python 命令 在 Windows 系统中 安装 Git 后可以在任何位置右键点击使用 Git Bash 在 Git Bash 中可以使用 Linux 中的命令 在 Git Bash 中可以使用 python
  • 基于GroundingDINO构建目标检测数据集自动标注工具-支持COCO和VOC格式

    0 介绍 GroundingDINO是最新发布的zero shot目标检测器 在多个数据集上取得了很好的结果 在该方法的基础上 本人修复该方法自动标注的bug 并增加VOC格式 1 安装GroundingDINO 根据github提供的源码