在FOOOCUS中添加SAM
内容提要
Fooocus是一款开源的图像生成软件,提供高质量的结果,不需要太多额外努力。对于有要求的用户,提供多种调整选项。软件有易于使用的修复界面,用户可在图像上刷选修复掩码。作者介绍了EfficientSAM模型,用于替换分割模型。作者希望未来有更易于使用的Web应用程序编辑掩码。
延伸解读
为什么选择EfficientSAM
作者选择EfficientSAM而非原版SAM,主要看中其模型和代码的紧凑性。这使得替换分割模型变得直观,只需搜索“esam”相关代码即可定位。对于想在Fooocus中集成其他分割模型的开发者,这种设计降低了修改门槛,也便于后续优化,例如通过缓存图像特征来加速多轮提示。
掩码编辑的实用功能
除了生成分割掩码,作者还添加了清除、反转掩码以及从文件上传掩码的功能。这些操作让用户能更灵活地控制修复区域,例如反转掩码可快速选中背景进行替换。结合刷选和SAM点选,用户可以根据需要选择不同的掩码生成方式,提升修复效率。
刷选区域采样的难点与解法
从刷选区域中采样提示点并不简单,作者指出需要获取均匀分布的2D点以尽可能覆盖刷选区域。为此,作者提供了相关代码片段(gist)来解决这一问题。这提示开发者,在实现类似交互时,点采样策略会影响分割效果,需注意均匀性和覆盖度。
未来改进方向
作者认为当前实现仍有改进空间,并希望未来能有更易用的Web应用程序来编辑掩码。这反映了现有工具在掩码编辑体验上的不足,也暗示开源社区可以在此方向发力。对于用户而言,关注后续工具的发展可能带来更流畅的修复工作流。
Q&A
如何在Fooocus中添加SAM模型?
作者通过修改Gradio界面,将EfficientSAM模型集成到Fooocus的“Inpainting”标签页下。修改后的版本可在pppoe/FOOOCUS-SAM找到。
为什么选择EfficientSAM而不是其他分割模型?
作者选择EfficientSAM是因为它在模型和代码上都更紧凑,并且如果需要替换分割模型,操作也很直观。
Fooocus的修复界面有哪些功能?
Fooocus的修复界面允许用户刷选图像生成掩码,还支持清除和反转掩码,以及从文件上传掩码。
如何从刷选区域获取均匀分布的采样点?
作者提供了一个gist代码,用于获取均匀分布的2D点,以尽可能覆盖刷选区域。
添加SAM后,如何用掩码替换背景?
点击“SAM-Mask”获取掩码,然后点击“Invert-Mask”反转掩码以选中背景,最后输入替换背景的提示词(如“A table in the park”)进行生成。
作者对掩码编辑工具有什么期望?
作者希望未来能有更易于使用的Web应用程序来编辑掩码,并期待开源社区能在这方面做出贡献。