使用ComfyUI工作流进行图片打标的简易教程(附工作流)

目前lora训练有很多很好的打标工具,这次尝试使用comfyui工作流进行打标,使用的模型是MiniCPMv2.6,面壁者的小刚炮

工作流地址

https://github.com/pzc163/Comfyui_MiniCPMv2_6-prompt-generator
安装与准备
  1. 安装插件:在ComfyUI Manager中搜索并安装“MiniCPMv2_6-prompt-generator”插件,安装后重启。

  2. 下载模型:将模型下载至ComfyUI/custom_nodes/目录下。模型地址:

https://huggingface.co/pzc163/MiniCPMv2_6-prompt-generator

这是一个基于 MiniCPM-V 2.6 的 int4 量化版本的提示生成模型微调。微调模型在 midjourney 提示数据集上进行训练,并使用 2 个 4090 24GB GPU 进行训练。 该模型使用 3000 多个样本进行训练,其中包含来自 Midjourney 的图像和提示,该模型可以为具有自然语言风格的图像生成短提示和长提示。它可以用于在 lora 训练时制作图像标签。 使用 int4 版本运行时将使用较低的 GPU 内存(约 7GB)。

工作流

在这里插入图片描述

该工作流能读取图片目录并生成相应的文本提示文件,支持两种打标方式:

短提示生成

  • 上传图片。

  • caption_method设置为short_prompt

在这里插入图片描述

长提示生成

  • 上传图片。

  • caption_method设置为long_prompt

在这里插入图片描述

这两种方式可以根据具体的LoRA训练需求灵活选择。该工具帮助快速生成自然语言风格的图像标签,非常适合高效打标。

谢谢你的关注和喜欢🥰

感恩分享和点赞👍

在这里插入图片描述

### 使用YOLOv8进行图像注 对于使用YOLOv8进行图像注的任务,实际上并不直接由YOLOv8本身完成。YOLOv8主要用于目检测模型的训练和推理过程中的对象识别工作。然而,在准备用于训练YOLOv8的数据集时,确实需要对大量图片进行注。 为了准备这些带有签的数据集,通常会借助专门设计的图像注工具来记物体的位置以及类别信息。根据描述,LabelImg是一个广泛使用的图形化图像注释工具[^2]。尽管LabelImg不是专门为YOLOv8定制的,但它可以生成适合YOLO格式的注文件,从而方便后续导入到YOLOv8项目中去。 #### 安装 LabelImg 工具 要安装LabelImg,可以通过pip命令轻松获取最新版本: ```bash pip install labelimg ``` 启动LabelImg应用程序的方法取决于操作系统;一般情况下可以在命令行输入`labelImg`即可打开程序窗口。 #### 创建注并导出为 YOLO 格式 当使用LabelImg创建新的注时,默认保存的是PASCAL VOC XML格式。但是,也可以选择其他格式如YOLO txt文件形式存储边界框坐与类名索引。具体操作是在菜单栏内找到`Preferences -> Format`选项卡,并切换至所需的输出格式。 一旦选择了正确的格式,就可以按照常规流程绘制矩形区域围绕感兴趣的对象,并指定相应的类别名称。完成后记得点击“Save”按钮将当前页面上的所有更改持久化到磁盘上。 #### 数据预处理脚本示例 (Python) 有时可能还需要编写简单的转换脚本来调整不同目录结构下的路径匹配关系或是进一步清理数据集中存在的异常情况。下面给出了一段简化版的例子用来说明如何读取已有的`.txt`类型的YOLO风格注记录: ```python import os def read_yolo_labels(label_file_path): labels = [] with open(label_file_path, 'r') as f: lines = f.readlines() for line in lines: parts = line.strip().split(' ') class_id = int(parts[0]) x_center = float(parts[1]) y_center = float(parts[2]) width = float(parts[3]) height = float(parts[4]) labels.append({ "class": class_id, "bbox": [x_center, y_center, width, height] }) return labels if __name__ == "__main__": dir_path = "./data/labels" files = os.listdir(dir_path) for file_name in files: if file_name.endswith(".txt"): full_path = os.path.join(dir_path, file_name) print(f"Parsing {full_path}") parsed_data = read_yolo_labels(full_path) # 这里可以根据需求做更多处理... ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值