The Visual Computer 41 · 11195–11205 · 2025

从参考图像逆向生成
可解释材质节点图

这篇论文把每个 Substance 风格节点看成一个待求逆的图像算子:先用分类器识别节点类型,再用节点专属的 SDXL adapter 预测图像输入,最后用 DiffMat v2 优化数值参数。系统沿输出到生成器的方向逐节点展开,得到可编辑的树状材质图。

Xiaoyu Lv · Zizhao Wu(通讯作者)· Jiamin Xu · Xiaoling Gu · Ming Zeng · Weiwei Xu
正式论文 · 官方代码与数据入口 · DOI 10.1007/s00371-025-04096-0

01 / Motivation & Scope

把黑盒整图生成拆成可追踪的节点逆问题

现有 inverse procedural material 方法分为从数据库中选择固定图再优化参数,以及动态生成新图两类。固定图方法受数据库覆盖限制;Transformer 图生成方法能产生新结构,却通常按照 token 排列概率一次生成图,缺少“当前中间图像为什么对应这个节点”的可解释证据。作者提出逐节点逆推:每一步明确节点类别、预测的输入图像和随后优化的参数,用户可以看到并编辑中间结果。

输入

参考材质照片先经 inverse rendering 分解为 albedo、roughness、normal 等 SVBRDF map;每个 map 独立生成程序图。

输出

由节点类型、边、图像输入和 primitive 参数构成的 Adobe Substance 3D Designer 风格 DAG;现实现产生树状拓扑。

优化目标

节点执行结果应在感知纹理、频率结构和像素指标上接近参考中间图;最终 graph 保持参数可编辑。

Paper Verified
论文明确使用反向节点顺序,建立 78 类、618,862 张节点级图像数据;训练 42 类、552,706 张图像的 adapter 数据。原摘要写 618,872,正文 §4.1 写 618,862,存在 10 张差异,本页保留正文实验数字并标出矛盾。
02 / Algorithm

预处理训练与两阶段采样

原论文 Figure 2 完整流程
原论文 Figure 2:左侧训练节点分类器和各节点 adapter;右侧先反向预测节点图像,再由 DiffMat v2 优化参数。
预处理 1 · 构建节点样本执行现有材质图中的节点,保存输出图、节点类型和参数 JSON;过滤输入输出相同、语义混淆和低使用率端口;把一个节点的不同功能逻辑拆为类别。
预处理 2 · 训练模型SwinV2 分类器学习 78 类节点。需要图像输入且没有解析逆函数的节点,按节点类型和输入端口分别训练 SDXL adapter。
采样 1 · 反向预测拓扑从某个 SVBRDF 输出图开始,分类器预测产生它的节点 \(H\)。adapter 根据输出图预测节点所需的输入图 \(x\),该输入图在下一轮成为父节点的参考。
采样 2 · 求数值参数从生成器向输出端遍历辅助图,把每个节点及祖先分支当作当前可微程序,通过 DiffMat v2 的三阶段 hybrid optimization 求 primitive 参数 \(R\)。

论文称反向顺序能降低早期误差向后传播:从 generator 向输出预测时,中间节点错误会污染所有后继;从最终输出反推时,每步都有当前参考图约束。这个理由具有工程直觉,论文没有提供同训练预算的顺序定量消融。

特殊节点处理

shape、perlin noise 等无图像输入的 generator 直接优化参数;invert、Cartesian-to-polar 等自带逆函数的节点无需 adapter;blend-with-mask 只预测 mask,再用 SD 图像修复分别补全前景和背景;albedo 的 RGB 颜色用 DiffMat v2 dynamic gradient node 表示。系统以规则分支覆盖这些节点,自动化程度依赖节点类型。

03 / Mathematical Formulation

节点逆函数与三阶段参数优化

一个程序节点写作 \(y=H(x,R)\):\(H\) 是已知节点操作,\(x\) 是一个或多个图像输入,\(R\) 是整数、浮点和枚举等 primitive 参数,\(y\) 是节点输出图。目标是求:

\[(x,R)=H^{-1}(y).\]

分类器首先由 \(y\) 估计 \(H\);节点专属 diffusion adapter 估计 \(x\);DiffMat 求 \(R\)。论文使用 texture descriptor \(T\) 比较 VGG19 特征的 Gram matrix:

\[R_{\theta}^{\ast}=\arg\min_{R_{\theta}}\left\|T\!\left(H(x,R)\right)-T(y)\right\|_{1}.\]

\(R_{\theta}\) 是可微连续参数,第一阶段用 Adam 优化。第二阶段对不可微连续参数 \(R_{\phi}\) 和离散参数 \(R_{\delta}\) 进行线性网格搜索,并加入 FFT 频率项:

\[(R_{\delta}^{\ast},R_{\phi}^{\ast})=\arg\min_{R_{\delta},R_{\phi}}\left\|T(H(x,R))-T(y)\right\|_{1}+w_F\left\|F(H(x,R))-F(y)\right\|_{1}.\]

\(F\) 是二维 FFT,帮助匹配周期结构和高频纹理。离散参数改变后,第三阶段再次执行第一式,细调可微参数。每个节点都局部使用预测中间图为参考,避免只用最终材质图对整条程序同时优化造成累积误差。

Adapter 的条件表示

论文以 SDXL-base-1.0 为底座,冻结主模型并为每个节点类型训练 adapter。参考输出图同时进入图像编码器和 T2I-Adapter;图像编码特征经过线性层与三层 Transformer Decoder,作为 SDXL cross-attention 的条件。作者没有公布统一的概率公式、噪声 schedule、loss 细节、adapter rank 或每类训练步数,因此无法从正文完整重现扩散训练目标。

原论文 Figure 3 adapter 架构
原论文 Figure 3:每个节点类别拥有独立 adapter;参考图像特征经 Transformer Decoder 注入冻结的 SDXL。
04 / Dataset & Training

节点级数据集如何构建

项目论文设置复现边界
原始可微节点从 DiffMat v2 选择 45 类,再按功能参数拆成 78 类类别拆分和过滤含人工 prior knowledge。
分类数据618,862 张图像,附节点类型和参数 JSON摘要为 618,872;正文数字不一致。
分类器SwinV2-base-window12to24-192to384;2×RTX 4090;batch 8;AdamW;学习率 \(10^{-4}\);cosine warmup;10 epochs;Focal Loss \(\gamma=2\)未披露 train/validation/test 划分、warmup 长度、weight decay。
adapter 数据42 类,552,706 张;多输入节点按端口训练 adapter排除无图像输入和有解析逆函数的类别。
adapter 训练SDXL-base-1.0;3×RTX 4090;batch 8;AdamW;学习率 \(10^{-4}\);cosine warmup;最多 100 epochs各 adapter 按学习表现提前截断,未披露逐类 epoch 与随机种子。
参数优化可微参数 Adam,学习率 \(5\times10^{-4}\);不可微参数 linear grid search;hybrid process 8 iterations未报告单材质运行时间、网格候选密度和显存。

数据筛选删除参数为零导致输入输出一致的样本,也依据编辑逻辑排除视觉相似但语义不同的节点结果;低频输入端口不再生成;blend 的 add、multiply 等功能拆成独立类别。这提高分类可辨识性,也把人工知识编码进数据分布。遇到训练未覆盖的节点特征时,系统容易在 Stage I 产生错误。

Data availability 矛盾
正文与摘要明确称作者构建节点级数据集;官方仓库 README 还提供 Baidu 数据下载链接。出版社页面和论文末尾却写 “No datasets were generated or analyzed”。这些陈述互相冲突,本页不替作者消解矛盾。
05 / Experiments

唯一量化主表与证据范围

论文 Table 1 比较去掉逐节点优化与完整方法。以下完整保留四类 map 与三个指标。原表脚注称粗体代表更好值,但正文提取并未显示具体粗体位置。

输出w/o per-node optimizationOur method
SSIM ↑PSNR ↑LPIPS ↓SSIM ↑PSNR ↑LPIPS ↓
Albedo0.2829.000.260.4530.010.40
Roughness0.4430.410.280.5631.400.35
Normal0.2029.290.260.4230.730.17
PBR0.1728.200.360.2228.820.26

逐节点优化让四类 SSIM、PSNR 全部提高;Normal 与 PBR 的 LPIPS 降低。Albedo 的 LPIPS 从 0.26 变为 0.40,Roughness 从 0.28 变为 0.35,方向更差。论文把完整方法概括为整体提升,但该表不能支持所有指标一致改善。它也没有给样本数、误差条或显著性检验。

原论文 Figure 5 单节点预测
原论文 Figure 5:predict:0 是 Stage I 扩散预测,result 是 Stage II 参数优化结果。

Figure 4

mask 节点只预测遮罩,再使用 SD inpainting 补全前景和背景。属于特殊规则分支。

Figure 6

与 Hu et al. 的定性比较,展示未见图案和非 Gaussian noise 条件下的泛化;没有统一数值表。

Figure 7–8

节点参数编辑示例及失败案例。失败通常源于 Stage I 中间节点错误,Stage II 不能完全修复。

Fidelity 与 editability

随机数 generator 使优化难以达到逐像素重建,即便节点类别正确也只能保持风格相似。这是程序可编辑性与图像拟合的实质取舍。论文没有报告用户研究、与 MatFormer / MaterialGAN / VLMaterial 的同协议量化比较、速度或图规模统计。

06 / Paper vs. Implementation

仓库公开了入口,完整复现仍有缺口

项目论文描述官方仓库现状
数据节点图像与参数 JSONREADME 提供 Baidu 链接;与论文 Data availability 声明冲突。
Stage ISwinV2 分类器 + 每类 SDXL adapterREADME 要求另行下载 adapter 与 ViT checkpoint,运行 experiment/sampler.py。
Stage IIDiffMat v2 hybrid optimization单独运行 diffmat_1/test/test_hybrid_optimizer.py;两个阶段没有统一的一键流程。
最终资产节点和参数可用于 Substance DesignerREADME 表述为后续可使用,没有展示自动导出完整 SBS/SBSAR 的稳定接口。
依赖DiffMat v2、SDXL、T2I-Adapter仓库包含本地 diffusers / diffmat 副本和环境文件,版本关系需要按固定提交核查。

Implementation Finding 仓库说明聚焦 inference 入口和权重路径,论文中的 78 类数据构造、人工筛选规则、逐类训练停止条件与完整 graph assembly 尚未形成可重跑的公开流水线。论文所称 DAG 实际受限为树:系统无法把边连接到其他分支已经生成的节点,也不处理 exposed parameters。

07 / Reviewer Commentary

这项工作真正推进了什么

Strengths

节点逆问题定义清楚;中间参考图为每一步提供语义解释;扩散预测图像输入与可微程序优化数值参数的职责划分合理;输出可直接编辑。

Weaknesses

每类节点一个 adapter,空间和维护成本随节点数线性增长;人工类别拆分与过滤影响泛化;输出局限于树;主实验只有一张量化表。

Reproducibility

数据数量自身不一致;出版社 Data availability 与仓库冲突;缺少划分、逐类训练预算、完整组图程序、运行时间和 checkpoint 版本。

Author Claim:逐节点生成带来更高可解释性和泛化能力。节点语义和中间图确实让过程可检查;泛化优势主要由定性图支持。Our Interpretation:系统把高维、多模态的图生成问题转换成一个由人工节点库定义的 inverse-programming 搜索,每一步都拥有强类型约束,代价是节点覆盖和分支连接能力受到工程规则限制。

Research Extension:可以用共享的 node-conditioned adapter 取代每类 adapter,并显式预测端口、跨分支引用和 graph repair action;renderer-in-the-loop reward 同时度量多视角 PBR 重建、节点数、执行有效性与编辑局部性。对 test-time optimization,应报告搜索次数、失败恢复、GPU 时间和程序复杂度,避免仅用最终图像相似度掩盖图结构错误。

08 / Sources

论文身份与一手资料

Springer 正式页面:2025-07-17 发布,The Visual Computer 41,11195–11205;页面明确 “Correspondence to Zizhao Wu”。官方仓库:数据和 checkpoint 下载入口、Stage I / Stage II 运行说明。

本地完整 PDF:Reading/Papers/IPMGG.pdf,11 页。正文、公式、Table 1、Figure 1–8、训练配置与限制均以该 PDF 为依据。出版页面提供 Supplementary Information 链接;本地归档未包含独立补充文件,网页未虚构补充材料中的具体数值。

Interpretable Procedural Material Graph Generation via Diffusion Models from Reference Images · 中文深度精读 · 2026-09-30