东莞企业网站排名优化,天津建设网投标网站,网站建设图片编辑,网站内嵌地图ControlNet 和 T2I-Adapter 的突破性在哪里#xff1f;有什么区别#xff1f;其它为 T2I 扩散模型施加条件引导的相关研究ControlNet 和 T2I-Adapter 的实际应用效果如何#xff1f;使用体验上#xff0c;跟 SD原生支持的 img2img 有什么区别#xff1f;ControlNet 在插画…ControlNet 和 T2I-Adapter 的突破性在哪里有什么区别其它为 T2I 扩散模型施加条件引导的相关研究ControlNet 和 T2I-Adapter 的实际应用效果如何使用体验上跟 SD原生支持的 img2img 有什么区别ControlNet 在插画创作上的潜力多种条件引导的组合使用ControlNet 在3D和动画创作上的潜力哪里可以免安装且免费玩上论文和模型这几天 AIGC 社区的兴奋程度达到了几个月内的高峰快赶上去年 Stable Diffusion 首次发布的热闹劲。主角就是 ControlNet一个基于 Stable Diffusion 1.5 的轻型预训模型能利用输入图片input image里的边缘特征、深度特征 或 人体姿势的骨架特征posture skeleton配合文字 prompt精确引导图像在 SD 1.5 里的生成结果。下图来自 ControlNet 论文的 demo使用 Canny 坎尼边缘检测提取了输入图片里鹿的轮廓特征用 Prompt “a high-quality, detailed, and professional image” 在 SD 1.5 里生成的 4 张结果图片。ControlNet 的预印本 发布于 2 月 10 日同时开源了预训模型的和论文里所有 input condition detector 的权重。社区迅速在 Huggingface 部署了可以试用的 Demo, 并打包成可在 Stable Diffusion WebUI 里使用的外挂插件。6 天后腾讯 ARC 也发布了类似解决方案 T2I-Adapter。ControlNet 和 T2I-Adapter 的突破性在哪里有什么区别抛开如何在扩散模型里融合额外的模态输入这样的技术细节因为我看不懂大面上看这两者思路很相近。突破点都是 如何在已有的模型基础上添加可训练参数控制预先训练好的大型扩散模型以支持额外的输入条件 (input condition)达到在新任务上的效果迁移。即使在训练数据集很小的情况下也能达到稳健的学习效果。通过建立一个框架在保留大型模型从数十亿图像中获得的优势和能力时同时拥有快速训练方法在可接受的时间和算力资源条件内利用预训练的权重以及微调策略或转移学习将大型模型优化后用于特定任务。兼顾对泛问题的处理能力和满足具体任务中用户对生成控制需求的灵活性最大程度的保留原模型的生成能力。ControlNet 和 T2I-Adapter 的框架都具备灵活小巧的特征训练快成本低参数少很容易地被插入到现有的文本-图像扩散模型中不影响现有大型模型的原始网络拓扑结构和生成能力。同时它俩都能兼容其它基于 Stable Diffsuion 的 fine-tune 的图像生成模型而无需重训比如 Anything v 4.0 (二次元风格的 SD 1.5 fine-tune 模型)。训练一种新输入条件模型 (input condition detector model)比如支持一种新的边缘或深度检测算法的模型在这类框架思路下可以做到和常见 fine-tune 一样快。ControlNet 在论文里提到Canny Edge detector 模型的训练用了 300 万张边缘-图像-标注对的语料A100 80G 的 600个 GPU 小时。Human Pose 人体姿态骨架模型用了 8 万张 姿态-图像-标注 对的语料, A100 80G 的 400 个 GPU 时。而 T2I-Adapter 的训练是在 4 块 Tesla 32G-V100 上只花了 2 天就完成包括 3 种引导条件sketch15 万张图片语料Semantic segmentation map16 万张和 Keypose15 万张。两者的差异ControlNet 目前提供的预训模型可用性完成度更高支持更多种的条件引导9 大类。而 T2I-Adapter“在工程上设计和实现得更简洁和灵活更容易集成和扩展”by 读过其代码的 virushuo此外T2I-Adapter 支持一种以上的引导条件比如可以同时使用 sketch 和 segmentation map 作为输入条件或 在一个蒙版区域 (也就是 inpaint ) 里使用 sketch 引导另外值得一提的是这两篇论文的首作都是年轻的华人 AI 研究者ControlNet 的首作 Lvmin Zhang21 年本科毕业现为斯坦福 PHD2018 年大二时便一作发表了 ACM Graphics 的高引论文被视为 AI 领域在本科阶段就有独立科研能力的“天才”。他之前最为著名的项目是 Style2paints 利用 Enhanced Residual U-net 和 Auxiliary Classifier GAN 为灰度动漫线稿上色。他作为这个小型研究组织的创始人一直在关注 AI 在二次元风格图像生成方向的模型训练、语料库整理及工具开发。而发布 T2I-Adapter 的腾讯 ARC 是腾讯关注智能媒体相关技术的事业群以视觉、音频和自然语言处理为主要方向。其它为 T2I 扩散模型施加 Input condition 引导的相关研究 当然这年头没有什么 ML 的解决方案是横空出世的去年 12 月Google 就发布了论文 Sketch-Guided Text-to-Image Diffusion Model使用了 classifier guidance 的思路设计了一个称为 latent edge predictor 的框架能够在 Stable Diffusion 的 noisy latent vector 上预测每步的生成是否匹配输入图片里探测到的 sketch 边缘。再将预测结果用于引导 扩散模型的生成。但这一框架最大的问题在于边缘的生成梯度引导是不考虑文本信息且不存在任何交互的。独立引导造成的结果可以让生成结果里图像的边缘与引导输入相吻合但与所对应的语义信息并不能很好地贴合。https://arxiv.org/abs/2211.13752今年 1 月发布的另一篇论文 GLIGEN: Open-Set Grounded Text-to-Image Generation。“以一个类似于 NLP 领域 transformer-adapter 的 parameter efficient 的思路来微调 Stable-Diffusion 模型即固定已有模型的参数只训练在模型里额外添加的组件并成功使得 SD 模型可以参考 bounding box 的位置信息来对不同实体进行生成 ”。https://arxiv.org/abs/2301.07093这篇论文里的放出了可运行的 demo效果得到了实证。知乎上的 NLP 算法工程师 中森 在认为这篇论文论证了“已有的预训练文生图大模型的高度可拓展性并且在开源模型上添加各种模态控制信息做继续训练的高度可行性”。demohttps://huggingface.co/spaces/gligen/demo对于这3篇论文里成果的比较请移步他的专栏文章https://zhuanlan.zhihu.com/p/605761756ControlNet 和 T2I-Adapter 的实际应用效果如何 对于 Stable Diffusion, 论引导效果一百句 Text prompt 可能都比不上一张 input image 来得准确和高效。要观察实战效果一千行文字介绍也比不上几组结果图片更清晰明了。 除了标注了引用出处的图片外其它都是作者生成的 raw outcome基本都是未经挑选的单次生成结果人像类 Input imageControlNet 测试将原图转化为 HDE mapHolistically-nested edge detection一种整体嵌套式边缘检测的 DL 模型精度比 Canny Edge 高不少捕捉其边缘特征用于引导。 Promptportrait, half body, wearing a delicate shirt, highly detailed face, beautiful detail, sharp focus, by H.R. GigerPromptportrait, half body, wearing a delicate shirt, highly detailed face, beautiful detail, sharp focus, by 不记得谁了Promptportrait, half body, wearing a delicate shirt, highly detailed face, beautiful detail, sharp focus, by Alphonso MuchaT2I-Adapter 测试使用 Sketch-guided Synthesis 将原图里转为草稿捕捉边缘特征用于引导。Adapter 选用的边缘检测算法是一个基于 CNN 模型的轻量级的像素差异网络 PiDiNethttps://arxiv.org/abs/2108.07009Promptportrait, half body, wearing a delicate shirt, highly detailed face, beautiful detail, sharp focus 以下3张皆是建筑类 输入图片 柯布西耶的萨伏伊别墅ControlNet 测试将原图转化为 Hough Line。霍夫变换是一个1962 年发明的专利算法最初是为了识别照片中的复杂线条而发明的。擅长用于检测直线和几何形状适用于捕捉建筑类图像边缘的 Prompt: building, super detail, by Giorgio de ChiricoPrompt: building, super detail, by Charles AddamsPrompt: building, super detail, by Alena AenamiT2I-Adapter 测试使用 Sketch-guided Synthesis 将原图里转为草稿 纵横比被我搞错了 Promptbuilding, super detail, by Giorgio de Chirico (下同)风景类 Input image (由 SD2.0 生成)ControlNet 测试将原图转化为 semantic segmentation map语义分割map捕捉其中的形状区块用于引导。Prompt: artwork by Eyvind Earle, stunning city landscape, street view, detailedPrompt: artwork by John Berkey, stunning city landscape, street view, detailedPrompt: artwork by Alphonso Mucha, stunning city landscape, street view, detailedT2I-Adapter 测试使用 Sketch-guided Synthesis 将原图里转为草稿捕捉边缘特征用于引导。在 SD 1.4 里的生成结果 T2I-Adapter 的预训模型里只支持 PLMS 这一种 sampling可能会影响它的生成效果Prompt: artwork by Eyvind Earle, stunning city landscape, street view, detailedPrompt: artwork by Eyvind Earle, stunning city landscape, street view, detailed人体 post skeleton Input imageControlNet 测试将原图转化为 human pose捕捉其中的姿势骨骼用于引导在 SD 1.5 里的生成结果在 Anything 4.0 里的生成结果T2I-Adapter 测试使用同一张骨骼引导图在 SD 1.4 里的生成结果用手绘草图作引导 最后一组是用 User ScribbleSketch作为生成引导的测试。我画了个吃手章鱼猫的草图ControlNet 在 SD 1.5 里的生成结果Prompt: Octocat, cat head, cat face, Octopus tentacles, by 忘了是谁Prompt: Octocat, cat head, cat face, Octopus tentacles, by H.R. GigerT2I-Adapter 在 SD 1.4 里的生成结果Prompt: Octocat, cat head, cat face, Octopus tentacles, oil paintingT2I-Adapter 支持一个匹配强度的参数上图用了 50% 强度下图用了40% 强度prompt 相同。上图与草稿图里章鱼猫的轮廓更为吻合而下图中生成的触手有更多偏移。Depth-based 引导 除了 边缘检测、草稿和 post 骨骼 这 3 类基础 input condition ControlNet 还支持了另一种非常有用的深度引导。输入图片在 ControlNet 里将原图转化为 法线贴图 Normal Map 一种模拟凹凸处光照效果的技术是凸凹贴图的一种实现。相比于深度 Depth Map 模型法线贴图模型在保留细节方面似乎更好一些 Prompt: by H.R. Giger, portrait of Snake hair Medusa, snake hair, realistic wild eyes, evil, angry, black and white, detailed, high contrast, sharp edgeby Alberto Seveso, portrait of Snake hair Medusa, snake hair, photography realistic, beautiful eyes and face, evil, black and white, detailed, high contrast, sharp edge, studio lightby Alphonso Mucha, portrait of Snake hair Medusa, snake hair, beautiful eyes and face of a young girl, peaceful, calm face, black and white, detailed, high contrast, sharp edge使用体验上上面这些引导控制跟 SD 原生支持的 img2img 有什么区别 下图是我用 5 分钟快速涂抹的草稿作为 input image 输入使用 ControlNet 里的 Canny edge 边缘检测作为输入条件生成了 3 张结果。Prompta deer standing on the end of a road, super details, by Alice Neea deer standing on the end of a road, super details, by C215a deer standing on the end of a road, super details, by Canaletto草稿中鹿后腿的边缘其实没有被很好识别出来但配合 text prompt所有结果图片里都还原了结构良好的鹿。而下面这几张是 img2img 引导生成的结果。通过比较输入图片和生成结果很容易发现img2img 的 input image 提供的引导主要是噪音的分布影响构图和颜色但对生成对象形状 (边缘) 的与输入图片的贴合度并不高鹿角特别明显。Prompta vibrant digital illustion of a deer standing on the end of a road, top of mountain, Twilight, Huge antlers like tree branches, giant moon, art by James jean, exquisite details, low poly, isometric art, 3D art, high detail, concept art, sharp focus, ethereal lightingSD 1.5 里的生成结果SD 2.0 里的生成结果而 img2img 的 Noise Strength 参数 0.0 - 1.0会决定 输入图片和生成结果的近似程度。参数越大近似度越高。想要获得跟输入图片更贴合的形状就得牺牲掉 扩散模型的“生成能力”。但引导图片里的颜色和构图都能持续保留为。Input ImageOutput: Noise Strength Parameter: 0.8Output: Noise Strength Parameter: 0.5ControlNet 条件引导在图像创作上的潜力 下面是一系列社区使用 ControlNet 引导 AI 进行创作生成的实验和探索。使用 Post reference 工具生成引导图像精确控制生成人物的透视及动作。如果只使用 text prompt 引导这是几乎完全无法做到的事。https://www.reddit.com/r/StableDiffusion/comments/113lj38/jumping_from_a_wall_controlnet_is_fun/另一个用 Post reference 工具MagicPoser App) 生成引导图后, 使用 SD fine-tune 模型 Realistic Vision 完成的生成效果。https://civitai.com/models/4201/realistic-vision-v13https://www.reddit.com/r/StableDiffusion/comments/1142dtt/controlnet_magicposer_app_realistic_vision/使用 Control Net 里的 深度图引导 depth map精确控制透视和场景。https://twitter.com/cambri_ai/status/1626254897783128064?s20 https://twitter.com/toyxyz3/status/1625517492415401985?s20用 human post 引导控制多人角色的生成https://twitter.com/TomLikesRobots/status/1626013122803781633?s20日本推友 toyxyz3 做了一系列 post skeleton 引导的实验非常有价值。去掉 post skeleton 上的一部分肢体后引导ControlNet 会引导生成时 将缺失的四肢处理为被遮挡头部处理为侧面角度 可能需要 prompt 辅助引导。https://twitter.com/toyxyz3/status/1626273906528251904?s20改变 post skeleton 里是四肢的比例ControlNet 会在引导生成时处理为透视角度。https://twitter.com/toyxyz3/status/1626138871598821377?s20改变 post skeleton 里的头身例ControlNet 会在引导生成时将人物对象处理为不同年龄或Q版。https://twitter.com/toyxyz3/status/1626137567178657792?s20改变 post skeleton 里的肢体数量。。。ControlNet 会在引导生成时将处理为额~ 半兽人 。https://twitter.com/toyxyz3/status/1626977005270102016?s20toyxyz3 还测试了是否能在画面里合理容纳更多数量人物。https://twitter.com/toyxyz3/status/1626138471256715265?s20多种条件引导的组合使用 虽然 Control Net 还不能原生支持多种 input condition, 但加上人工的后期处理我们可以看见其应用潜力。使用两种引导条件分别生成人物和场景人物使用 post skeleton 引导场景使用 depth map 引导。分别生成完再进行合成。分开引导效果更好也让创作设计更为灵活。人物合成前需要抠图。另外别忘了给人物添加投影 https://twitter.com/toyxyz3/status/1626298297211326465?s20https://twitter.com/toyxyz3/status/1626594162060718083同时使用不同引导图来覆盖满足两种控制需求Reddit 用户 Ne_Nel 同时使用两张引导图需要能支持两张 input image 的 SD 生成工具一张用于 ControlNet 引导一张上色后用于 img2img 引导就可以同时控制生成结果的对象轮廓和颜色/光影。https://www.reddit.com/r/StableDiffusion/comments/115dr9r/more_madness_controlnet_blend_composition_color/这也是我非常期望拥有的一种引导方式能同时从输入图像里读取边缘和颜色这两种引导条件。基于 ControlNet 和 T2I-Adapter 的框架说不定我们很快能看到 这样一种新的引导模型被训练出来。下面这个实验中toyxyz3 也试图实验 ControlNet 在 读取 Semantic Segmentation map 的 segments 时是否有可能带上深度或颜色信息 并没有https://twitter.com/toyxyz3/status/1626835630176215045?s20但第二天社区就发现了 Semantic Segmentation 的一个特质。Semantic Segmentation 语义分割是一种深度学习算法名字里有“语义”一词是有含义的。这种算法将一个标签或类别与图像中的每个像素联系起来。被用来识别形成不同类别的像素集合。例如常见应用于自动驾驶、医疗成像和工业检测。比如帮助自动驾驶汽车识别车辆、行人、交通标志、路面 等不同对象的特征。而每种标签都会有一个对应的标记颜色。从 ControlNet 的论文中可知它使用的 segmentation map model 用的是 ADE20K 的协议。ADE20K 公开了它用于标注不同语义segments的颜色代码。https://www.researchgate.net/figure/Semantic-labels-of-ADE20K-data-set-in-BGR-format_fig2_339839515这就意味着在设计 Segmentation map 引导图时创作者可以反过来用。比如 改变某个 segment 的颜色使之与 ADE20K 算法用于标注时的语义一致比如 ADE20K 用于标注“钟表”的是草绿色把背景那个形状块涂成草绿色生成时这个形状块就更大概率会被引导向生成钟表其实该形状块与钟表常见的圆形形状不符。不得不说Stable Diffusion 玩家们的 Hacking 能力实在是强大。https://twitter.com/toyxyz3/status/1627286943783612416?s20Google Doc 链接和下图里是 ADE20K 用于标注的颜色代码。https://docs.google.com/spreadsheets/d/1se8YEtb2detS7OuPE86fXGyD269pMycAWe2mtKUj2W8/edit#gid0ControlNet 条件引导在3D和动画创作上的潜力 结合 Blender 使用 ContrelNet 创作 3DBlender 里面创建的 3D 模型导出静态图片作为 input image使用 controlnet 的深度检测生产图像再作为贴图贴回 blender 里的原模型上bingo虽然用于人体这类复杂曲面效果会比较粗糙但用于包装盒或建筑这类简单的几何体应该会非常实用。https://twitter.com/TDS_95514874/status/1626331836459671552?s20结合 Blender 使用 ContrelNet 创作动画在 Blender 里生成 3D 模型后用不同颜色标记各个部位再把动画序列导出后 在 ControlNet 里作为 Segmentation map condition 输入生成的动画各部件的结构有更好的稳定性和一致性特别适用于身体部件之间有遮挡的动作。https://twitter.com/TDS_95514874/status/1626817468839911426?s20使用两种输入引导的组合创作动画人物动作使用 post skeleton 引导场景使用 depth map 引导。分别生成完再进行合成。虽然还不是真正的 text to animation 生成但这种方法已经能获得比之前都好的效果更少的 glitch interference (跳帧感)人物动作更流程背景也更稳定。https://twitter.com/toyxyz3/status/1627417453734293504?s20哪里可以免安装且免费玩上 ControlNet 和 T2I-Adapter ControlNet SD 1.5https://huggingface.co/spaces/hysts/ControlNetControlNet Anything v4.0https://huggingface.co/spaces/hysts/ControlNet-with-other-modelsT2I-Adapter SD 1.4https://replicate.com/cjwbw/t2i-adapter集成到 Stable Diffusion WebUI 里1. 更新 WebUI 到最新版本 在 https://github.com/Mikubill/sd-webui-controlnet 下载或安装放到 WebUI 的 extensions 文件夹内2. 在 https://huggingface.co/lllyasviel/ControlNet/tree/main/annotator/ckpts 下载文件放到插件目录下的 annotator 下的 ckpts 目录3. 在 https://huggingface.co/webui/ControlNet-modules-safetensors/tree/main 下载模型700M或 https://huggingface.co/lllyasviel/ControlNet/tree/main/models5.7G放到插件目录下的 models 目录可以预见会有很多集成类似引导控制的插件、API、细分工具的爆发式出现比如https://www.reddit.com/r/StableDiffusion/comments/115eax6/im_working_on_api_for_the_a1111_controlnet/https://scribblediffusion.com/https://huggingface.co/spaces/fffiloni/ControlNet-Video 论文和模型 Adding Conditional Control to Text-to-Image Diffusion Modelshttps://arxiv.org/abs/2302.05543 https://github.com/lllyasviel/ControlNetT2I-Adapter: Learning Adapters to Dig out More Controllable Ability for Text-to-Image Diffusion Models https://arxiv.org/abs/2302.08453https://github.com/TencentARC/T2I-Adapter祝大家玩得愉快意外获得的鬼畜章鱼猫向您问好。我刚刚发布了 AIGC 艺术家样式库 lib.KALOS.art 。一个4人小团队前后忙了4周。- 目前全球规模最大1300艺术家共3万余张 4v1 样式图片- 覆盖三个主流图像生成模型- 为每个艺术家都生成了8~11种常见主题如 人像、风景、科幻、街景、动物、花卉等主题艺术家和多种主题的结合会带来很多意想不到的结果后现代舞台设计师去画废土科幻场景or 立体主义雕塑家去画一张猫咪按人类惯有思维用肖像画家去生成肖像用风景画家去生成风景其实限制了AI模型的创作力和可能性。希望 lib.kalos.art 能帮你发掘AIGC的潜力得到更多创作灵感点击阅读原文访问最新最全的 AIGC 艺术样式数据库