3D Gaussian Splatting 仓库自带的 SIBR Viewer 运行对显卡有要求, 需要 CUDA_ARCHITECTURE >= 7.x, 在 RTX 4060Ti 上可以运行, 但是在 P104-100 上就会提示"Sorry, need at least compute capability 7.0+!"后退出. 因此需要寻找一个兼容性更好的查看工具.

搜了下可用的资源不多, 有不少web端的viewer. 不是说web端不能用, 但是毕竟要走一个上传加载的过程, 而浏览器中的3D渲染不会自动使用P104-100(也许能指定, 但是我还不会设置), 系统CPU是4代i5, 在这种场景下性能特别烂. 除了基于web的方案, 我推荐的是 splatviz 这个工具.

Splatviz

仓库地址 https://github.com/Florian-Barthel/splatviz

这是一个主体代码为 python 的项目, 可以唤起GUI界面在本地快速查看ply文件, 可以查看, 可以挂载到3d gaussian的训练过程, 可以设定位置距离拍摄自动306度旋转的视频, 还可以设置gaussian参数debug, 功能比较丰富.

安装

检出仓库

git clone https://github.com/Florian-Barthel/splatviz.git --recursive

仓库首页的安装提示是不能用的, 因为里面基于的是 CUDA 11.8, 和我系统的CUDA版本(12.6)不一致, 用conda创建环境会报不兼容, 所以后来转手动安装了

因为和 gaussian-splatting 一样要使用 CUDA Toolkit 和 pytorch, 都是上G的大块头, 所以直接使用了 gaussian-splatting 的 conda 环境, 在这个基础上安装其它模块.

基础环境是

NVIDIA-SMI 550.163.01             Driver Version: 550.163.01     CUDA Version: 12.4

python=3.10.12
torch 2.7.0
torchaudio 2.7.0
torchvision 0.22.0
opencv-contrib-python 4.11.0.86
opencv-python 4.11.0.86

cuda-toolkit-12-4

nvidia-cublas-cu12          12.6.4.1
nvidia-cuda-cupti-cu12 12.6.80
nvidia-cuda-nvrtc-cu12 12.6.77
nvidia-cuda-runtime-cu12 12.6.77
nvidia-cudnn-cu12 9.5.1.17
nvidia-cufft-cu12 11.3.0.4
nvidia-cufile-cu12 1.11.1.6
nvidia-curand-cu12 10.3.7.77
nvidia-cusolver-cu12 11.7.1.2
nvidia-cusparse-cu12 12.5.4.2
nvidia-cusparselt-cu12 0.6.3
nvidia-ml-py 12.575.51
nvidia-nccl-cu12 2.26.2
nvidia-nvjitlink-cu12 12.6.85
nvidia-nvtx-cu12 12.6.77

过程中安装的模块, 未指定的默认安装最新版

pip install click
pip install imgui-bundle==1.5.2 (安装默认的1.6.2会报错)
pip install imgui==2.0.0
pip install imageio
pip install pyyaml
pip install pandas
pip install imagecodecs
pip install scipy
pip install requests
pip install gputil
pip install pynvml 如果不使用 performance widget, 可以不装
pip install imageio-ffmpeg 如果不使用 ideo widget, 可以不装

安装项目内的子模块

  • gaussian-splatting/submodules/diff-gaussian-rasterization
pip install gaussian-splatting/submodules/diff-gaussian-rasterization
  • gaussian-splatting/submodules/simple-knn

    因为在 gaussian-splatting 中已经安装了 simple-knn 模块, 所以这里没再安装

使用

运行

--data_path指定路径, 注意这里只需要给目录, 如果直接指定文件会报错

python run_main.py --data_path=../gaussian-splatting/output/7f1a841f-4/point_cloud/iteration_7000/

查看

在 Camera Widget里面可以设置两种视角,

  • Orbit视角是位置固定的, 只能左右上下(pitch and yaw, no roll)查看,
  • WASD视角的位置可以调整, 操作按键为 A左平移, D右平移, W前进, D后退, Q上平移,E下平移, 用鼠标按住左键移动旋转视角.

问题解决

如果出现下面这样的错误

libGL error: MESA-LOADER: failed to open swrast: /usr/lib/dri/swrast_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)
libGL error: failed to load driver: swrast

确认这两个库已经安装

sudo apt install --reinstall libgl1-mesa-glx libgl1-mesa-dri

手动link一下对应的so

sudo mkdir /usr/lib/dri
sudo ln -s /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so /usr/lib/dri/
sudo ln -s /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so /usr/lib/dri/

如果出现下面这样的错误,

libGL error: MESA-LOADER: failed to open swrast: /usr/lib/dri/swrast_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)
libGL error: failed to load driver: swrast

参考这篇解决 'GLIBCXX_3.4.30' not found for librosa in conda virtual environment, 在conda环境里安装一下 gcc-12

conda install -c conda-forge gcc=12.1.0

3D Gaussian Splatting 查看工具 splatviz的更多相关文章

  1. 3D模型在线查看工具

    3D场景工具推荐:NSDT场景编辑器. glTF Viewer 2.0是一个可以在线查看GLTF格式3D模型的,可以对模型进行显示设置.灯光设置来查看模型效果,除此之外还可以对模型进行性能分析和模型验 ...

  2. LogViewer - 方便的日志查看工具

    一个完整的程序日志记录功能是必不可少的,通过日志我们可以了解程序运行详情.错误信息等,以便更好的发现及解决问题. 日志可以记录到数据库.日志服务器.文件等地方,本文主要介绍文件日志. 文件日志通常是一 ...

  3. iOS及时log日志查看工具 (iConsole)

    github下载地址:https://github.com/nicklockwood/iConsole 偶然看到的一个iOS及时log日志查看工具,通过该工具,我们可以在任何想看日志的时候,通过手势呼 ...

  4. Windows日志查看工具合集

    欢迎关注我的社交账号: 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://github.com/jiangxincode 知乎地址 ...

  5. hexdump——Linux系统的二进制文件查看工具

    hexdump是Linux下的一个二进制文件查看工具,可以将二进制文件转换为ASCII.10进制.16进制或8进制进行查看. 首先我们准备一个测试用的文件test,十六进制如下: 00 01 02 0 ...

  6. iostat,mpstat,sar即时查看工具,sar累计查看工具

    iostat,mpstat,sar即时查看工具,sar累计查看工具

  7. lucene 索引查看工具

    luke 是 lucene 索引查看工具,基于 swing 开发的,是 lucene.solr.nutch 开发过程中不可或缺的工具.在测试搜索过程,进程出现搜不到东西或者搜到的东西不是想要的结果时, ...

  8. SQLSERVER图片查看工具SQL Image Viewer5.5.0.156

    原文:SQLSERVER图片查看工具SQL Image Viewer5.5.0.156 SQLSERVER图片查看工具SQL Image Viewer5.5.0.156 在2013年某一次北京SQL ...

  9. json格式化和查看工具

    以前一直以来都觉得xml个可读性要比json的可读性好,后来使用了JSON Viewer这个小工具之后,发现自己错了.之前认为json的可读性差,完全是因为没有很好的查看工具.JSON Viewer这 ...

  10. 【3D动画建模设计工具】Maxon Cinema 4D Studio for Mac 20.0

    图标 Icon   软件介绍 Description Maxon Cinema 4D Studio R20 ,是由德国公司Maxon Computer一款适用于macOS系统的3D动画建模设计工具,是 ...

随机推荐

  1. Java 加密和解密

    在 Java 中,加密和解密通常通过 Java Cryptography Architecture (JCA) 和 Java Cryptography Extension (JCE) 实现.以下是常见 ...

  2. Selenium Javascript 滚动条操作

    js在selenium有许多应用,最主要的有滚动条操作. 实现功能:进入百度搜索结果页->滚动条分别滚到到顶部.底部及指定元素位置. 使用格式: driver.execute_script('w ...

  3. Windows编程----结束进程

    进程有启动就有终止,通过CreateProcess函数可以启动一个新的子进程,但是如何终结子进程呢?主要有四种方法: 通过主线程的入口函数(main函数.WinMain函数)的return关键字终止进 ...

  4. 这几天用ng5做了一个俄罗斯方块

    为什么要做这个东西呢? 嗯 为了证明自己会ng吧,最主要的是这几天的工作全是静态页,实在无聊枯燥的很.当然了,肯定还有其他妙不可言的原因,这里不想说出来. 我也忘记我是什么时候有想到用ng做俄罗斯方块 ...

  5. mac强制关闭程序

    使用快捷键:Command+Option+Esc 来打开"强制退出应用程序"的窗口,然后选中你需要退出的程序,再点右下方的"强制退出"即可.

  6. mysql导入失败

    mysqldump导出数据库表的数据会加上一些SQL的注释,这些注释会在批量执行SQL语句中造成错误,需要提前删除. sql开始部分: SET @@SESSION.SQL_LOG_BIN = @MYS ...

  7. 什么是swagger,一篇带你入门

    一.前言 在前后端分离开发的过程中,前端和后端需要进行api对接进行交互,就需要一个api规范文档,方便前后端的交互,但api文档不能根据代码的变化发生实时动态的改变,这样后端修改了接口,前端不能及时 ...

  8. 软件测试_Fiddler抓包工具

    多数资料摘抄至 https://www.cnblogs.com/miantest/p/7289694.html 一.在 macOS 下如何安装 (https://www.telerik.com/fid ...

  9. 用 PHP 封装的发送邮件类

    点击查看代码 <?php class MailSender { // 发件人邮箱地址 private $fromEmail; // 发件人名称 private $fromName; // 收件人 ...

  10. 异常--java进阶day08

    1.异常 java中,所有的异常都是类 2.异常的体系结构 3.编译时异常与运行时异常 1.编译时异常 语法完全正确,但是代码就是会报错,如下图 上图中,写的是时间格式化类的使用,parse方法将给的 ...