分享自:

基于大型视觉语言模型的程序化材料生成

期刊:iclr 2025

基于大视觉语言模型的程序化材质生成方法研究

作者及机构
本研究的核心团队由Beichen Li(MIT CSAIL)、Rundi Wu(哥伦比亚大学)、Armando Solar-Lezama(MIT CSAIL)、Changxi Zheng(哥伦比亚大学)、Liang Shi(MIT CSAIL)、Bernd Bickel(ETH Zürich/谷歌研究院)和Wojciech Matusik(MIT CSAIL)组成。研究成果以《VLMaterial: Procedural Material Generation with Large Vision-Language Models》为题,发表于ICLR 2025会议。

学术背景

研究领域与动机
程序化材质(Procedural Materials)是计算机图形学中通过节点图(Node Graphs)生成逼真材质外观的核心技术,广泛应用于游戏、影视和AR/VR领域。传统基于图像的材质(Image-based Materials)存在分辨率限制和难以编辑的问题,而程序化材质通过参数化节点图实现可解释、可控且分辨率无关的表示。然而,从单张输入图像生成程序化材质需要专业知识和大量人工操作,这促使研究者探索逆向程序化材质建模(Inverse Procedural Material Modeling)方法。

研究目标
本研究旨在利用大视觉语言模型(VLM)的生成能力,通过微调预训练模型,直接从输入图像生成Blender软件中的程序化材质代码(Python格式),解决现有方法依赖定制化网络或商业软件(如Adobe Substance 3D)的局限性。

研究方法与流程

1. 数据集构建与增强
- 原始数据收集:从BlenderKit、InfiniGen和第三方材质包中收集3,663个艺术家创建的程序化材质,经过节点图清理(删除冗余节点、限制节点数≤30)和代码验证(剔除渲染质量差的材质),最终保留1,640个高质量样本。
- 数据增强策略
- 程序结构增强:基于FunSearch方法,利用GPT-4o-mini对870个复杂材质进行“基因交叉”,生成50,400种新结构(30倍于原始数据)。
- 参数空间增强:对节点参数(连续/离散)随机扰动,扩充至55万样本(330倍于原始数据)。

2. 模型微调
- 基础模型:采用LLaVA-Next(基于CLIP ViT-L/14视觉编码器和LLaMA 3 8B语言解码器),通过LoRA(低秩适配器)微调注意力层(参数量40M)。
- 训练配置:使用AdamW优化器(学习率1e-4)、BF16精度,在8×NVIDIA H100 GPU上训练5个epoch,批次大小为32。输入为图像与提示词组合:“Write a Python function with Blender API to create a material node graph for this image.”

3. 后优化算法
采用马尔可夫链蒙特卡洛(MCMC)方法对生成材质的节点参数进行局部搜索:
- 采样策略:每次迭代仅扰动10%的参数,连续参数在±20%区间均匀采样,离散参数以20%概率调整。
- 目标函数:基于Gram矩阵的感知损失(Perceptual Loss),迭代200次,以5%概率接受较差解以避免局部最优。

主要实验结果

1. 定量对比
在Blender(同分布)、Substance(跨分布)和真实图像测试集上,本文方法均优于基线(GPT-4o-mini、Conditional MatFormer等):
- Blender测试集:风格损失(Style Loss)0.019(最佳),程序正确率91.1%;
- Substance测试集:CLIP相似度0.762,显著高于GPT-4o-mini(0.680);
- 真实图像:程序正确率87%,证明强泛化能力。

2. 定性分析
生成材质在3D场景中可直接应用(图1),且支持参数编辑(如调整节点颜色或连接方式)。例如,对木质纹理的粗糙度参数微调后,可快速匹配不同光照条件下的目标外观。

3. 消融实验
- 结构增强:移除后风格损失上升72%(Blender测试集从0.019→0.032);
- 参数增强:移除后程序正确率下降至60.3%(原为91.1%);
- 后优化:MCMC进一步降低风格损失15%(从0.019→0.015)。

研究结论与价值

科学价值
1. 方法创新:首次将VLM微调技术应用于程序化材质生成,提出程序级数据增强策略,解决了训练数据稀缺问题。
2. 开源贡献:发布首个Blender程序化材质开源数据集(55万样本),推动逆向图形学研究。

应用价值
- 艺术家工具:生成材质可作为编辑起点,节省70%以上手工建模时间(用户研究评分6.8/10);
- 跨平台兼容性:生成的Python代码可直接在Blender中执行,规避商业软件依赖。

研究亮点

  1. 数据增强突破:通过LLM驱动的进化算法,将样本量从1.6k扩增至550k;
  2. 端到端流程:从图像到可编辑材质节点的完整流水线,支持MCMC后优化;
  3. 失败案例分析:对超出Blender节点表达能力的复杂纹理(如细密编织物),提出了未来扩展方向(如自定义节点组)。

未来方向
包括结合强化学习优化视觉反馈、设计领域专用语言(DSL)压缩代码长度,以及引入语法检查器确保程序正确性。

上述解读依据用户上传的学术文献,如有不准确或可能侵权之处请联系本站站长:admin@fmread.com