拓冰建站拓冰建站
首页 / 资讯中心 / 正文

FLUX.1 Fill 快速上手:一条命令跑通 Inpainting/Outpainting(附黑白 mask 规则与调参)

FLUX.1 Fill 快速上手一条命令跑通 Inpainting/Outpainting附黑白 mask 规则与调参【免费下载链接】fluxOfficial inference repo for FLUX.1 models项目地址: https://gitcode.com/GitHub_Trending/flux49/flux你手里有一张底图想只重绘其中某个区域inpainting 局部重绘或者把画面向四周自然扩出去outpainting 扩图——FLUX.1 Fill [dev] 就是干这件事的模型底图配一张黑白 mask白处交给模型生成、黑处原样保留然后跑一次采样即可。先把边界说清楚它的权重是非商业许可商用前请先看文末的授权路径。先出图一条命令跑通 FLUX.1 Fill 的最小路径跑通之前先记住这条命令它就是你最终要敲的东西比装环境更值得先看清python -m flux fill \ --img_cond_path path_to_input_image \ --img_mask_path path_to_input_mask把path_to_input_image和path_to_input_mask分别换成你本地的底图与 mask 路径就行。想最快看到效果的话这两个占位符可以整个省掉——cli_fill.py 里它们的默认值就是仓库自带的示例assets/cup.png和assets/cup_mask.png默认 prompt 为a white paper cup。也就是说环境装好后空参直接运行就能出第一张图。黑白 mask 的判定逻辑与 32 倍数尺寸校验为什么 mask 必须纯黑白看 sampling.py 里prepare_fill的处理就能明白mask 先按 255 归一化到 0~1然后条件图执行img_cond * (1 - mask)。白色像素255归一化后是 1乘出来等于 0原图内容被抹掉、留给模型生成黑色像素0归一化后乘 1原图像素原封不动。所以口诀只有一句想重绘/扩展的地方涂白想保留的地方涂黑。尺寸方面有两道硬门槛底图与 mask 的宽和高都必须能被 32 整除且两张图尺寸必须完全一致。交互模式会对输入逐条校验不合规会当场打回——底图不整除时提示Image dimensions must be divisible by 32, got {width}x{height}mask 与底图尺寸对不上时提示Mask dimensions must match conditioning image, ...都需要你换图或先把图调整到 32 的倍数后重新输入。仓库里正好有一对可直接对照的示例底图与 mask 长这样环境与权重就位venv 安装和 checkpoints 自动下载装环境Python 3.10 虚拟环境轮到把工具链装好了。按 README.md 的本地安装步骤在仓库根目录下执行README 以 Python 3.10 创建虚拟环境python3.10 -m venv .venv source .venv/bin/activate pip install -e .[all]权重就位自动下载或手动指定模型权重不需要你手动下载docs/fill.md 说明启动任一 demo 时权重会自动从 HuggingFace仓库black-forest-labs/FLUX.1-Fill-dev拉到checkpoints/目录。如果你手上已有本地权重可以直接放进checkpoints/也可以用环境变量指向已有路径把两个...占位符替换成你本地的模型与 autoencoder 文件路径即可export FLUX_MODELyour model path here export FLUX_AEyour autoencoder path here反复调试的三种方式单参数、--loop 会话与 Streamlit 画布第一次跑通后接下来大概率是反复试 prompt、种子和步数。如果只想改某一项就在单发命令上加对应参数只改提示词加--prompt只改步数加--num_steps默认 50只改 guidance加--guidance默认 30.0想固定随机数加--seed不设则每次随机想换输出位置加--output_dir默认output显存吃紧时加--offload让 T5/CLIP/AE 在 CPU 与 GPU 之间搬运以省显存。--loop 交互会话与斜杠命令速查连续试很多组参数时交互模式更顺手python -m flux fill --loop会话里每轮依次提示输入 prompt、底图路径、mask 路径任一项留空就复用上一次的值。prompt 输入行支持斜杠命令帮助文案见 cli_fill.py 的usage/s seed设置下一次采样的种子、/g guidance设置 guidance、/n steps设置采样步数、/q退出。路径输入同样会被校验文件必须存在、扩展名限.jpg/.jpeg/.png/.webp、尺寸必须 32 整除mask 还要和已选底图同尺寸任何一条不过都会提示重新输入。不想手写 mask 文件Streamlit 画布涂抹还有一条可选路径直接在浏览器里涂 maskstreamlit run demo_st_fill.py打开这个 demo_st_fill.py 演示后你可以在画布上直接涂抹生成黑白 mask省去另存文件。想做 outpainting 时切到 Outpainting 模式拖动 “Zoom Out Amount (All Sides)” 滑杆1.0~3.0或展开高级控制里各边单独的 zoom 滑杆add_border_and_mask会自动生成带黑边的放大底图并把新加边框区域在 mask 中标为白色界面上的提示 “Mask (white areas will be generated)” 和前面讲的白生成区语义完全一致。核对产物与常见误判img_{idx}.jpg、Exif 与 NSFW 拦截一次采样结束后终端先打印Done in x.x s——这只是你本机的实际耗时别拿它当固定性能指标。随后进入 util.py 的save_image保存逻辑正常时会打印Saving output/img_{idx}.jpg文件写进output/或你指定的目录{idx}为从 0 开始的递增编号目录里已有旧文件时自动接续编号。保存的图片会嵌入 Exif 元数据Make为Black Forest Labs、Model为flux-dev-fill默认还会把 prompt 写进ImageDescription不想写就加--add_sampling_metadata False。核对产物时打开output/img_0.jpg或最新编号mask 白色区域应当按 prompt 重新生成黑色区域保持原图内容两者都对了才算这次采样合格。⚠️ 最容易被误判的一种情况保存前还有一道 NSFW 过滤nsfw_image_detection分类器阈值 0.85一旦判定为 NSFW图片不会写入磁盘终端只提示Your generated image may contain NSFW content.。如果你跑完只看到这句话、output/里却没有新文件原因就在这里换个 prompt 或种子重试即可。许可边界非商业条款与商用授权路径最后把授权说死FLUX.1 Fill [dev]的权重遵循 FLUX.1-dev Non-Commercial License仅限非商业用途。如果你的项目需要商用按 README.md 的说明通过 BFL 获取商业授权并在 CLI 中开启--track_usage、运行前设置BFL_API_KEY环境变量程序就会自动向 BFL 统计上报用量授权费用按月度用量计算。想深入了解模型本身可以接着读 docs/fill.md 的模型介绍与 model_cards/FLUX.1-dev.md 的模型卡。【免费下载链接】fluxOfficial inference repo for FLUX.1 models项目地址: https://gitcode.com/GitHub_Trending/flux49/flux创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门