DataDreamer

快速开始
Command Line
1pip install datadreamer
2datadreamer --class_names person moon robot- Google Colab 笔记本,包含生成数据集、训练模型并导出到 RVC2/RVC3 的指导:DataDreamer 快速开始
- 安全帽检测示例:安全帽检测
- 更多信息请查看 DataDreamer GitHub 仓库
概述

DataDreamer 是一个高级工具包,旨在促进边缘 AI 模型的开发,无论初始数据是否可用。DataDreamer 的独特功能包括:- 合成数据生成:消除 AI 训练对大量数据集的依赖。DataDreamer 使用户能够利用先进的 AI 算法从零开始生成合成数据集,这些算法能够产生高质量、多样化的图像。
- 从基础模型中提取知识:
DataDreamer利用强大的预训练 AI 模型中蕴含的潜在知识。这种能力允许将来自这些“基础模型”的广泛理解转移到更小的定制模型中,显著增强其性能。 - 高效且强大的模型:
DataDreamer的主要目标是创建既小巧(适合集成到 任何设备)又在特定任务上性能强劲的紧凑模型。
功能特性
- 提示生成:使用强大的语言模型自动创建图像提示。提供的类别名称:["horse", "robot"]生成的提示:"A photo of a horse and a robot coexisting peacefully in the midst of a serene pasture."(注:提示本身为英文,通常保持原样,但为完整理解,此处保留英文)
- 图像生成:使用最先进的生成模型生成合成数据集。

- 数据 集标注:利用基础模型自动标注数据集。

- 边缘模型训练:训练高效的小规模神经网络用于边缘部署。(不属于本库范围)
安装
Command Line
1pip install datadreamer可用模型
| 模型类别 | 模型名称 | 描述/备注 |
|---|---|---|
| 提示生成 | Mistral-7B-Instruct-v0.1 | 语义丰富的提示 |
| TinyLlama-1.1B-Chat-v1.0 | 小型语言模型 | |
| 简单随机生成器 | 随机组合所选对象名称 | |
| 图像生成 | SDXL-1.0 | 慢速且准确(1024x1024 图像) |
| SDXL-Turbo | 快速但精度较低(512x512 图像) | |
| SDXL-Lightning | 快速且准确(1024x1024 图像) | |
| 图像标 注 | OWLv2 | 开放词汇目标检测器 |
示例
Command Line
1datadreamer --save_dir path/to/save_directory --class_names person moon robot --prompts_number 20 --prompt_generator simple --num_objects_range 1 3 --image_generator sdxl-turbo实用技巧
- 批量生成:为加快生成过程,请考虑使用
--batch_size_prompt、--batch_size_image和--batch_size_annotation参数增加批量大小。如果遇到内存不足,请尝试减小批量大小。 - 更佳图像质量:为获得更好的图像质量,请考虑调整以下参数:
--image_generator:选择图像质量更高的模型。SDXL-Turbo → SDXL-Lightning → SDXL(从最快到最慢,从最低质量到最高质量)。--use_image_tester和--image_tester_patience:启用迭代图像生成,并使用 CLIP 模型选择最佳图像。考虑增加耐心阈值以获得更好的结果。
- 每张图像的对象数量:要生成具有不同对象数量的图像,请使用
--num_objects_range参数。例如,--num_objects_range 1 3生成包含 1、2 或 3 个对象的图像。不建议使用大于 3 的值,因为当前模型生成复杂场景的能力有限。 - 提示生成:要生成更多样化的提示,请考虑使用
--prompt_generator tiny生成器,它使用小型语言模型生成提示。