DreamBench++ 使用教程
dreambench_plus 项目地址: https://gitcode.com/gh_mirrors/dr/dreambench_plus
1. 项目介绍
DreamBench++ 是一个面向个性化图像生成任务的人类对齐基准。该项目收集了150张多样化的图像和1350个包含简单、风格化和想象性内容的提示。通过使用多模态大型语言模型(例如 GPT4o)构建自动化评估指标,与人类偏好保持一致。
DreamBench++ 包含三个类别:生物主体(动物和人类)、物体和风格,共计150张图像。其中,120张为照片级真实图像,30张为非照片级图像。每张图像对应9个提示,每个提示的难度不同,包括4个照片级风格提示,3个非照片级风格提示,以及2个复杂和想象力内容提示。
2. 项目快速启动
安装必要的包
首先,需要安装项目所需的包:
git clone https://github.com/yuangpeng/dreambench_plus.git
cd dreambench_plus
pip install -e .
生成图像
(可选)如果您想评估 DreamBooth 或 Textual Inversion,您首先需要在 DreamBench++ 样本上进行训练:
python dreambench_plus/generate_models.py \
--method dreambooth_sd \
--start 0 --end 150
然后,您可以使用以下命令生成图像。如果您评估 DreamBooth 或 Textual Inversion,您需要指定 --db_or_ti_output_dir
为上述训练模型的输出目录:
torchrun dreambench_plus/generate_images.py \
--method blip_diffusion \
--use_default_params True
您也可以使用其他超参数进行推理。所有参数列表可以通过运行 torchrun dreambench_plus/generate_images.py --help
查询。
评估生成的图像
您可以使用 DINO 和 CLIP 对生成的图像进行评估。运行以下命令来评估生成的图像。--dir
参数指定生成图像的目录,--nproc-per-node
参数指定用于评估的 GPU 数量:
torchrun --nproc-per-node=8 dreambench_plus/eval_clip_and_dino.py --dir samples/blip_diffusion_gs7_5_step100_seed42_torch_float16
获取 GPT 评分
首先,您需要将方法和对应生成图像的目录写入 dreambench_plus/constants.py
中的 METHODS
,并填写您的 openai api 密钥。
然后,您可以运行以下命令使用 GPT 对生成的图像进行评估。对于概念保持的评估,您需要指定 --category
使用不同的提示进行评估。对于提示跟随评估,无需此参数:
python --method "DreamBooth LoRA SDXL" \
--out_dir data_gpt_rating/concept_preservation_full/dreambooth_lora_sdxl \
--category subject \
--ablation_settings full
运行上述命令后,您可以在 out_dir
目录中获得 GPT 评分结果。然后,您可以运行以下命令获取最终评分:
python dreambench_plus/benchmarking.py
3. 应用案例和最佳实践
- 案例一:使用 DreamBench++ 生成个性化艺术风格图像,为用户提供独特的艺术作品。
- 案例二:在游戏开发中,利用 DreamBench++ 生成具有一致风格的角色和场景图像。
- 案例三:通过 DreamBench++ 创建个性化教学素材,提高学习效率和兴趣。
4. 典型生态项目
- 项目一:DreamBooth,一种基于 DreamBench++ 的图像生成技术,能够生成高质量的个性化图像。
- 项目二:Textual Inversion,结合 DreamBench++ 的文本转换技术,用于图像风格转换和生成。
dreambench_plus 项目地址: https://gitcode.com/gh_mirrors/dr/dreambench_plus
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考