taggui

taggui

高效智能的AI图像数据集标注应用

TagGUI是一款跨平台桌面应用,专为AI模型数据集制作而设计。该工具提供快速标记、标签自动完成和Stable Diffusion令牌计数等功能。支持CogVLM、LLaVA等模型的自动描述生成,并具备批量标签操作和高级图像过滤能力。TagGUI简化了图像标注流程,提高了AI数据集准备的效率。

TagGUI图像标签自动生成标签数据集创建AI模型Github开源项目

TagGUI

<img src='https://yellow-cdn.veclightyear.com/835a84d5/29055722-a887-4e7d-9e3a-3e1af864c650.png' alt='TagGUI图标' width='128'>

TagGUI是一款跨平台桌面应用程序,用于快速添加和编辑图像标签和说明文字,主要面向创建用于Stable Diffusion等生成式AI模型的图像数据集的创作者。

<img src='https://yellow-cdn.veclightyear.com/835a84d5/bf48b9a3-c97a-4920-9b32-511228dd3977.png' alt='TagGUI截图' width='100%'>

功能特点

  • 键盘友好的界面,便于快速标记
  • 基于您最常用标签的标签自动完成功能
  • 集成Stable Diffusion令牌计数器
  • 使用包括CogVLM、LLaVA、WD Tagger等多种模型自动生成说明文字和标签
  • 批量标签操作,支持重命名、删除和排序标签
  • 高级图像列表筛选功能

安装

使用本应用程序最简单的方法是从发布页面下载最新版本。选择适合您操作系统的文件,解压到任意位置,然后运行里面的可执行文件。如果您的系统中没有安装7-Zip,可能需要先安装它来解压文件。

  • macOS用户:由于需要运行该操作系统的设备,而我没有,所以没有macOS版本。您仍可以手动安装和运行程序(见下文)。
  • Linux用户:您可能需要安装libxcb-cursor0。(参见这个Stack Overflow回答)如果在尝试使用CogVLM2模型时出现错误,您可能还需要安装python3.11-devpython3.10-dev(取决于您的Python版本)。(参见这个问题

另外,您也可以通过克隆此仓库并安装requirements.txt中的依赖项来手动安装。运行taggui/run_gui.py启动程序。推荐使用Python 3.11,但Python 3.10也应该可以正常工作。

使用方法

点击窗口中央的"加载目录"按钮(或选择"文件"->"加载目录")来加载包含您图像的目录。标签从目录中与图像同名的.txt文件中加载。您对标签所做的任何更改也会自动保存到这些.txt文件中。

自动生成说明文字

<img src='https://yellow-cdn.veclightyear.com/835a84d5/9c20bf78-329d-4014-8521-fbff9243c5d2.png' alt='自动生成说明文字截图' width='100%'>

除了手动标记外,您还可以在TagGUI中自动为图像生成说明文字或标签。GPU生成需要兼容的NVIDIA GPU,也支持CPU生成。

要使用此功能,请在图像列表中选择您想要生成说明文字的图像,然后在自动生成说明文字面板中选择您想使用的模型。如果您有包含之前下载模型的本地目录,可以在"文件"->"设置"中设置它,以将这些模型包含在模型列表中。点击"开始自动生成说明文字"按钮开始生成。您可以选择多张图像,为所有图像批量生成说明文字。首次使用时,下载和加载模型可能需要几分钟,但后续生成会快得多。

生成参数

"提示词":给予说明文字生成模型的指令。提示词格式会根据所选模型自动处理。您可以使用以下模板变量,将有关每张图像的信息动态插入提示词中:

  • {tags}:图像的标签,用逗号分隔。
  • {name}:不带扩展名的图像文件名。
  • {directory}{folder}:包含图像的目录名称。

使用模板变量的示例提示词可以是"使用以下标签作为上下文描述图像:{tags}"。使用这个提示词时,在发送给模型之前,{tags}会被替换为每张图像现有的标签。

"说明文字开头":生成的说明文字将以此文本开头。

"移除说明文字中的标签分隔符":如果选中,生成的说明文字中将移除标签分隔符(默认为逗号)。

"说明文字中不应出现":不应出现在生成的说明文字中的词语或短语。您可以用逗号(,)分隔多个词语或短语。例如,您可以输入appears,seems,possibly以防止模型在说明文字中使用不确定的语气。由于分词相关的限制,这些词语仍可能被生成。

"说明文字中应包含":应出现在生成的说明文字某处的词语或短语。您可以用逗号(,)分隔多个词语或短语。您还可以让说明文字生成模型从一组词语或短语中选择,方法是用|分隔它们。例如,如果您输入cat,orange|white|black,模型将尝试生成包含catorangewhiteblack中任一词的说明文字。不能保证所有指定要求都会得到满足。

"排除标签"(WD Tagger模型):不应生成的标签,用逗号分隔。

其他许多生成参数在Hugging Face文档中有描述。

高级图像列表筛选

通过点击"所有标签"面板中的标签,可以实现筛选包含特定标签的图像的基本功能。除此之外,您还可以在"图像"面板顶部的"筛选图像"框中构建更复杂的筛选条件。

<details> <summary> 点击此处查看筛选语法的完整文档。 </summary>

筛选条件

以下是您可以用来指定筛选条件的前缀:

  • tag::将筛选词作为标签的图像
    • tag:cat将匹配带有cat标签的图像。
  • caption::说明文字中包含筛选词的图像
    • 说明文字是指.txt文件中出现的标签列表作为单个字符串。
    • caption:cat将匹配说明文字中任何位置包含cat的图像。例如,带有orange cat标签或catastrophe标签的图像。
  • name::文件名中包含筛选词的图像
    • name:cat将匹配如cat-1.jpglarge_cat.png等图像。
  • path::完整文件路径中包含筛选词的图像
    • path:cat将匹配如C:\Users\cats\dog.jpg/home/dogs/cat.jpg等图像。
  • 您也可以使用不带前缀的筛选词,以筛选说明文字或文件路径中包含该词的图像。
    • cat将匹配说明文字或文件路径中包含cat的图像。

以下是用于数值筛选的前缀。运算符===也可以)、!=<><=>=用于指定比较类型。

  • tags:具有指定标签数量的图像
    • tags:=13 将匹配恰好有13个标签的图像。
    • tags:!=7 将匹配不恰好有7个标签的图像(少于7个或多于7个标签的图像)。
  • chars:图像说明中具有指定字符数的图像
    • chars:<100 将匹配说明中字符数少于100的图像。
    • chars:>=30 将匹配说明中字符数大于或等于30的图像。
  • tokens:图像说明中具有指定标记数的图像
    • tokens:>75 将匹配说明中标记数超过75的图像。
    • tokens:<=50 将匹配说明中标记数小于或等于50的图像。

空格和引号

如果过滤词包含空格,必须用引号(单引号或双引号)将其括起来。 例如,要查找带有"orange cat"标签的图像,必须使用 tag:"orange cat"tag:'orange cat'。 如果过滤词中同时包含空格和引号,可以用反斜杠转义引号。 例如,可以使用 tag:"orange \"cat\"" 来匹配标签 orange "cat"。 另一种方法是对外部和内部引号使用不同类型的引号,如:tag:'orange "cat"'

通配符

可以使用 * 字符作为通配符匹配任意数量的任意字符,使用 ? 字符匹配任意单个字符。 例如,tag:*cat 将匹配带有 orange catlarge catcat 等标签的图像。

组合过滤器

可以使用逻辑运算符组合多个过滤器:

  • NOT:不匹配该过滤器的图像
    • NOT tag:cat 将匹配没有 cat 标签的图像。
  • AND:同时匹配运算符前后两个过滤器的图像
    • tag:cat AND tag:orange 将匹配同时具有 catorange 标签的图像。
  • OR:匹配运算符前后任一过滤器的图像
    • tag:cat OR tag:dog 将匹配具有 catdog 标签,或同时具有两者的图像。

这些运算符的小写版本也可以使用:notandor

运算符优先级为 NOT > AND > OR,因此默认情况下,先计算 NOT,然后是 AND,最后是 OR。 可以使用括号改变这个顺序。 例如,在 tag:cat AND (tag:orange OR tag:white) 中,先计算 OR,匹配具有 cat 标签,且具有 orangewhite 标签的图像。 可以嵌套括号和运算符来创建任意复杂的过滤器。

控制

  • ⭐ 上一张/下一张图片:Ctrl+上箭头/下箭头(在某些情况下,单独使用上箭头/下箭头也可以)
  • 跳转到第一张未标记的图片:Ctrl+J
  • 聚焦"过滤图像"框:Alt+F
  • 聚焦"添加标签"框:Alt+A
  • 聚焦"图像标签"列表:Alt+I
  • 聚焦"搜索标签"框:Alt+S
  • 聚焦"开始自动生成说明"按钮:Alt+C

图像面板

  • 第一张/最后一张图片:Home/End
  • 选择多张图片:按住 CtrlShift 并点击图片
  • 选择所有图片:Ctrl+A
  • 反转选择:Ctrl+I
  • 右键点击图片将弹出上下文菜单,包括复制和粘贴标签、将选定图片移动或复制到其他目录等操作。

图像标签面板

  • 添加标签:在"添加标签"框中输入标签并按 Enter
  • ⭐ 添加自动完成建议的第一个标签:Ctrl+Enter
  • 为多张图片添加标签:在图片列表中选择图片并添加标签
  • 删除标签:选择标签并按 Delete
  • 重命名标签:双击标签,或选择标签并按 F2
  • 重新排序标签:拖放标签
  • 选择多个标签:按住 CtrlShift 并点击标签

所有标签面板

  • 显示包含某个标签的所有图片:选择该标签(当"标签点击操作"设置为"为标签过滤图片"时)
  • 为选定图片添加标签:点击标签(当"标签点击操作"设置为"为选定图片添加标签"时)
  • 删除某个标签的所有实例:选择标签并按 Delete
  • 重命名某个标签的所有实例:双击标签,或选择标签并按 F2

"编辑"菜单包含批量标签操作的其他功能,如"查找和替换"(Ctrl+R)和"批量重新排序标签"(Ctrl+B)。

编辑推荐精选

iTerms

iTerms

企业专属的AI法律顾问

iTerms是法大大集团旗下法律子品牌,基于最先进的大语言模型(LLM)、专业的法律知识库和强大的智能体架构,帮助企业扫清合规障碍,筑牢风控防线,成为您企业专属的AI法律顾问。

SimilarWeb流量提升

SimilarWeb流量提升

稳定高效的流量提升解决方案,助力品牌曝光

稳定高效的流量提升解决方案,助力品牌曝光

Sora2视频免费生成

Sora2视频免费生成

最新版Sora2模型免费使用,一键生成无水印视频

最新版Sora2模型免费使用,一键生成无水印视频

Transly

Transly

实时语音翻译/同声传译工具

Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

AI助手热门AI工具AI创作AI辅助写作讯飞绘文内容运营个性化文章多平台分发
TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

热门AI工具生产力协作转型TraeAI IDE
商�汤小浣熊

商汤小浣熊

最强AI数据分析助手

小浣熊家族Raccoon,您的AI智能助手,致力于通过先进的人工智能技术,为用户提供高效、便捷的智能服务。无论是日常咨询还是专业问题解答,小浣熊都能以快速、准确的响应满足您的需求,让您的生活更加智能便捷。

imini AI

imini AI

像人一样思考的AI智能体

imini 是一款超级AI智能体,能根据人类指令,自主思考、自主完成、并且交付结果的AI智能体。

Keevx

Keevx

AI数字人视频创作平台

Keevx 一款开箱即用的AI数字人视频创作平台,广泛适用于电商广告、企业培训与社媒宣传,让全球企业与个人创作者无需拍摄剪辑,就能快速生成多语言、高质量的专业视频。

即梦AI

即梦AI

一站式AI创作平台

提供 AI 驱动的图片、视频生成及数字人等功能,助力创意创作

下拉加载更多