文章转载来源:AIGC开放社区
原文来源:AIGC开放社区
图片来源:由无界 AI生成
随着ChatGPT的出现以及广泛应用,通过文本生成文本、视频、音频等内容,成为实现技术民主化的关键手段。
在3D模型领域通过文本生成并不成熟,多数方法是通过图片。而该方法存在生成时间长、缺乏细节、难以匹配图像等缺点。
加州大学、清华大学、斯坦福大学共同开发了全新模型“One-2-3-45++”并将其开源。该模型仅通过图片,就能在1分钟内将一张RGB图像转换为高精准3D模型,这对于游戏开发、3D建模等领域,可以节省大量开发时间。
研究人员在包含1030个3D对象的GSO数据集上与多个基准方法进行了比较。测试数据显示,One-2-3-45++在几何相似度、CLIP相似度指标上均优于基准方法。
在包含50多名真实用户的评估数据显示,87.6%表示One-2-3-45++生成的结果,优于其他方法,质量更高、更符合输入图像。
开源地址:https://github.com/SUDO-AI-3D/One2345plus
论文地址:https://arxiv.org/abs/2311.07885
在线demo:https://www.sudo.ai/3dgen
One-2-3-45++的核心技术原理主要包括三大块:一致的多视角图像生成、基于多视角的3D重建以及纹理优化。
一致的多视角图像生成
这一模块的作用是从单个输入图像中生成多个视角一致的图像。One-2-3-45++一共可生成6个视角的图像,布局是一个3x2的矩形网格,分别对应不同的相机位置。
为了避免生成的3D形状存在方向歧义,这6个相机位姿使用绝对高度角以及相对方位角来定义,同时使用了预训练文生图模型Stable Diffusion作为生成器。
此外,使用了Objaverse数据集中的3D形状进行微调。对每个3D形状,生成3个训练样本,分别对应不同的输入图像视角。同时使用统一的HDR环境光进行渲染,以提升细节、光影效果。
上一个模块我们已经有了6个对象的多视角图片,这个模块就是要把二维的图片转换成3D模型。
具体做法是先用6张图片生成一个低分辨率的三维体积元素,近似表示整体形状。然后在体积元素里面生成更高分辨率的“体积元素”,捕捉表面细节。
体积元素就是用小立方体组成的三维矩阵。这里有两种体积元素,一种SDF体积元素,记录了一个位置到物体表面的距离;另一种是颜色体积元素,记录一个位置到物体表面最近点的颜色。
同时这6张图片是生成体积元素的条件,先从图片里提取二维特征,然后反投影到三维空间构建一个三维特征体,这个体包含了多视角的先验信息,可以指导三维模型体积元素的生成。
经过前面两个步骤生成的3D模型,在颜色、质量、纹理方面还比较粗糙,所以需要进行优化达到最终效果。同样可以利用前面6个视角的图像,来增强最终网格模型的纹理质量。
方法是固定住网格的三维结构不变,仅优化表示颜色的网络。每次迭代中,用当前的颜色网络渲染网格,生成二维图片。然后与之前生成的多视角图片计算损失,更新颜色网络。
这样通过不断地优化,网格表面的颜色信息会逐渐跟多视角图片越来越接近,从而实现纹理的提升。
来源:AIGC开放社区
发布人:暖色
声明:该文观点仅代表作者本人,不代表火讯财经立场。火讯财经系信息发布平台,仅提供信息存储空间服务。
如文章涉及侵权, 请及时致函告之,本站将第⼀时间删除⽂章。邮箱:840034348@qq.com