关于3D guassian splatting在其他软件中的显示学习记录

1.blender免费插件:

适用于blender 4.0:gaussian-splatting-blender-addon(4.0)
适用于blender 3.x:gaussian-splatting-blender-addon(3.x)
第一个链接只适用于blender4.0(即最新版),不能兼容旧版本。使用3.6.1版本测试第二个链接可以,其他3.x版本没有测试。
如果有如下错误则可能是版本不匹配:

12:11Python: Traceback (most recent call last):
  File "C:\Users\18561\AppData\Roaming\Blender Foundation\Blender\3.6\scripts\addons\blender-addon\__init__.py", line 1177, in draw
    row.prop(obj.modifiers["Geometry Nodes"].node_group.nodes.get("Boolean"), "boolean",
KeyError: 'bpy_prop_collection[key]: key "Geometry Nodes" not found'

正常显示这样:
在这里插入图片描述

2.spline 无需插件

3.unity免费插件:

aras-p/UnityGaussianSplatting
有示例工程,或add from disk-package-package.json,从tools中导入模型。场景中新建空物体,挂载Gaussian组件,选择模型。
如果有不显示问题:project setting - player - auto Graphics API for Windows 改成DX12;并在graphics中定位使用的管线资产,添加相应的renderer feature, 保存重启即可。

4.UE插件

这个发展很快,我最近没有试新的,用的是23年底出的付费插件,显示效果还有优化空间,期待下次更新。

### 3D Gaussian Splatting 实现教程 #### 安装依赖环境 为了开始探索此项目,确保已安装 Git 和 Python。接着可以通过如下命令克隆项目仓库至本地环境中[^2]: ```bash git clone https://github.com/MrNeRF/awesome-3D-gaussian-splatting.git cd awesome-3D-gaussian-splatting ``` #### 创建3D高斯分布 该方法接受一组静态场景图片及其对应的相机参数作为输入数据集。利用SfM技术生成稀疏点云之后,从中构建起一系列具备特定属性(比如位置μ、协方差Σ以及透明度α)的三维高斯模型集合。这种表达方式不仅能够提供对于复杂几何形状的有效逼近手段,而且支持高效的渲染过程[^3]. #### 参数优化流程 核心算法围绕着对上述提到的各项特征参数执行迭代式的调整工作展开。具体而言,在每一次循环周期内部交替实行两项主要任务:一是针对当前状态下所有个体元素实施局部改进措施;二是依据全局视角下的表现评估结果指导后续更新方向的选择。特别值得注意的是,这里引入了自适应控制策略用于动态调节学习速率等因素以加速收敛速度并提高最终解的质量。 #### 渲染管线设计 整个系统的性能优势很大程度上得益于所采用的独特光栅化方案——基于瓦片划分机制实现高效处理大规模非均匀分布的数据集的同时保持良好的视觉效果质量。此外还实现了快速可微分版本以便于开展端到端训练模式下神经网络架构的设计与开发活动。特别是当涉及到多层嵌套结构或者存在隐含状态变量的情况下显得尤为重要. ```python import numpy as np from scipy.stats import multivariate_normal def render_gaussians(gaussians, tile_size=64): """Render a list of 3D Gaussians using tiled rasterization.""" # Initialize output image tiles and depth buffer img_tiles = [] z_buffer = [] for gaussian in gaussians: mean = gaussian['mean'] cov = gaussian['covariance'] alpha = gaussian['alpha'] mvn = multivariate_normal(mean=mean, cov=cov) # Perform fast differentiable rasterization here... pass return composite_image(img_tiles), aggregate_depth(z_buffer) def optimize_parameters(params, learning_rate=0.01): """Optimize the parameters of each Gaussian through adaptive control.""" optimized_params = params.copy() for param_set in optimized_params: # Implement cross optimization logic... pass return apply_learning_rate(optimized_params, learning_rate) ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值