项目介绍:controlnet-seg-room
项目背景
controlnet-seg-room 是一个由多个团队和组织合力打造的项目,目标是通过机器学习技术实现室内设计图像的生成。这个项目的成功离不开 Google 提供的 TPUv4 硬件支持,同时也要感谢 Huggingface 和 Diffusers 团队的组织与支持,以及 StabilityAI 开源的 Stable Diffusion 模型。
数据集介绍
为了构建这一项目,团队投入了大量时间来训练一个定制化模型。所使用的基础数据集是 LAION5B。为了使演示效果尽可能优秀,项目团队从海量的 LAION5B 中挑选了 130,000 张房间图片,这些图片涵盖了 15 种房间类型和接近 30 种设计风格。之后,这些图片被进一步加工,添加了元数据,比如通过 BLIP 标注模型生成的描述性文字(captions)和通过 HuggingFace 的 UperNetForSemanticSegmentation 模型生成的分割图(segmentation maps)。
模型介绍
团队使用上述的数据集来训练 controlnet 模型,以生成高质量的室内设计图像。这个模型通过使用分割图及语言提示作为条件信息(conditioning information),用户能够非常精细地控制他们希望在房间中放置的对象。训练从 lllyasviel/control_v11p_sd15_seg
检查点开始,后者是一个经过健壮训练的 controlnet 模型,依赖分割图进行条件生成训练。之后使用 JAX 框架在 TPUv4 上进行了微调训练,最终将其转化为 PyTorch 检查点,以便于与 diffusers 库的集成。
演示介绍
团队开发了一个 streamlit 演示,允许用户测试该模型的能力。用户可以利用该模型的图像到图像(image2image)转换和修补(inpainting)能力,保持房间的某些元素并改变图像的特定部分。您可以通过以下链接体验这个演示:Huggingface 演示页面。