Ubuntu22.04配置3D gaussian splatting

这篇博客提供了3D gaussian splatting在新安装Ubuntu上的配置过程。

1.拉仓库

2.安装显卡驱动和cuda版本

3.安装Pytorch

4.安装Pycharm和配置Python

5.安装附加依赖项(方法一)

6.安装Anaconda(方法二)

7.测试


1.拉仓库

# HTTPS
git clone https://github.com/graphdeco-inria/gaussian-splatting --recursive

2.安装显卡驱动和cuda版本

打开终端,输入命令:

nvidia-smi

上图的CUDA  Version:12.4指的是最高支持cuda12.4的版本,并不是已经安装了cuda12.4的版本,输入以下指令查看cuda版本:

nvcc -V

上图表示cuda未安装,此时需要去Nvidia官网CUDA Toolkit 12.6 Update 3 Downloads | NVIDIA Developer安装CUDA Toolkit,注意不要超过上述规定的CUDA版本

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin
sudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/12.4.0/local_installers/cuda-repo-ubuntu2204-12-4-local_12.4.0-550.54.14-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu2204-12-4-local_12.4.0-550.54.14-1_amd64.deb
sudo cp /var/cuda-repo-ubuntu2204-12-4-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cuda-toolkit-12-4

 配置环境变量

为确保正确配置 CUDA 环境变量,编辑 ~/.bashrc 文件:

nano ~/.bashrc

在文件末尾添加以下内容:

export PATH=/usr/local/cuda-12.4/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-12.4/lib64/stubs:${LD_LIBRARY_PATH}

然后,执行以下命令使配置生效:

source ~/.bashrc

可以通过以下命令验证 CUDA 是否安装成功:

nvcc --version

3.安装Pytorch

安装cuda版本的pytorch版本。本人显卡3090,cuda版本12.4

pip install torch==2.5.0 torchvision==0.20.0 torchaudio==2.5.0 --index-url https://download.pytorch.org/whl/cu124

4.安装Pycharm和配置Python

Step 1: 安装pycharm

sudo snap install pycharm-professional --classic

 进去选择中文版。

确保你已经安装了 Python。运行以下命令检查:

python3 --version

如果未安装 Python,使用以下命令安装:

sudo apt update
sudo apt install python3 python3-pip

Step 2: 打开 PyCharm
  1. 启动 PyCharm。
  2. 创建或打开一个项目。
Step 3: 配置 Python 解释器
  1. 点击菜单 File > Settings(或 PyCharm > Preferences)。

  2. 导航到 Project > Python Interpreter

  3. 点击右侧的齿轮图标,选择 Add Interpreter

  4. 选择 System InterpreterVirtual Environment

    • System Interpreter:
      • 在下拉菜单中选择你的 Python 路径(通常是 /usr/bin/python3 或类似路径)。
    • Virtual Environment:
      • 选择 New Virtualenv Environment
      • 确保 Python 二进制文件指向正确的 Python 版本。
  5. 点击 OK,等待 PyCharm 配置环境。

5.安装附加依赖项(方法一)

# Dependencies
sudo apt install -y libglew-dev libassimp-dev libboost-all-dev libgtk-3-dev libopencv-dev libglfw3-dev libavdevice-dev libavcodec-dev libeigen3-dev libxxf86vm-dev libembree-dev

pip install plyfile

pip install opencv-contrib-python

pip install tqdm

# Project setup
cd SIBR_viewers
cmake -Bbuild . -DCMAKE_BUILD_TYPE=Release # add -G Ninja to build faster
cmake --build build -j24 --target install

安装子模块

先cd到~/code/gaussian-splatting,然后输入命令:

pip install submodules/diff-gaussian-rasterization

pip install submodules/simple-knn
pip install submodules/fused-ssim

6.安装Anaconda(方法二)

步骤 1:下载 Anaconda 安装脚本

访问 Anaconda 下载页面 下载适用于 Linux 的安装脚本,或者直接使用 wget 命令:

wget https://repo.anaconda.com/archive/Anaconda3-2023.03-Linux-x86_64.sh

步骤 2:运行安装脚本

运行下载的安装脚本:

bash Anaconda3-2023.03-Linux-x86_64.sh

步骤 3:安装过程中接受许可协议

与 Miniconda 类似,Anaconda 安装过程会提示你接受许可协议。输入 yes 来继续。

步骤 4:选择安装路径

可以选择默认路径(通常是 ~/anaconda3),或者指定一个其他目录。

步骤 5:初始化 Conda

选择 yes 来初始化 Conda。

步骤 6:刷新 shell 配置

与 Miniconda 一样,安装完成后,你需要刷新 shell 配置:

source ~/.bashrc

步骤 6:验证 Conda 是否成功安装:

conda --version

步骤 7:创建环境并安装依赖项

conda env create --file environment.yml conda activate gaussian_splatting

conda activate gaussian_splatting

7.测试

下载DTU数据集https://drive.google.com/drive/folders/1SJFgt8qhQomHX55Q4xSvYE2C6-8tFll9,并进行解压。

设置形参如下,运行即可。

运行结果的终端显示:

参考:

基于RTX3090的Ubuntu22.04安装cuda11.7和cudnn8.6_ubuntu虚拟环境安装cuda11.7-CSDN博客

炼丹学习笔记2---ubuntu2004运行3D Gaussian Splatting(3DGS)分享_ubuntu gaussian splatting torch-CSDN博客

感谢!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/939090.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

在 Visual Studio Code 中编译、调试和执行 Makefile 工程 llama2.c

在 Visual Studio Code 中编译、调试和执行 Makefile 工程 llama2.c 1. Installing the extension (在 Visual Studio Code 中安装插件)1.1. Extensions for Visual Studio Code1.2. C/C1.2.1. Pre-requisites 1.3. Makefile Tools 2. Configuring your project (配置项目)2.1.…

深度解析:推荐系统的进化之路与深度学习革命

目录 前深度学习时代一推荐系统的进化之路 浪潮之巅一深度学习在推荐系统中的应用 Embedding 技术在推荐系统中的应用 Embedding的原理 Embedding的分类 Word2vec Item2vec Embedding 与深度学习推荐系统的结合 YouTube 推荐系统召回层 局部敏感哈希 多角度审视推…

MAPTR:在线矢量化高精地图构建的结构化建模与学习(2208)

MAPTR: STRUCTURED MODELING AND LEARNING FOR ONLINE VECTORIZED HD MAP CONSTRUCTION MAPTR:在线矢量化高精地图构建的结构化建模与学习 ABSTRACT High-definition (HD) map provides abundant and precise environmental information of the driving scene, se…

SpringBoot集成Canal实现MySQL实时同步数据到Redis

MySQL增量数据同步利器Canal环境搭建流程 软件环境 JDK17.0.12 canal-server1.1.7 canal-client1.1.7 MySQL5.7 IDEA2024.2.0.2 我们先看Canal1.1.7源码对应的项目结构 1、基于源码编译打包 # 源码下载地址 https://github.com/alibaba/canal # 执行以下命令&#xff0…

嵌入式驱动开发详解16(音频驱动开发)

文章目录 前言WM8960简介I2S协议接口说明 SAI音频接口简介驱动框架简介设备树配置内核使能声卡设置与测试 后续参考文献 前言 该专栏主要是讲解嵌入式相关的驱动开发,但是由于ALSA驱动框架过于复杂,实现音频编解码芯片的驱动不是一个人能完成的&#xf…

OpenGL ES 03 加载3张图片并做混合处理

OpenGL ES 02 加载3张图片并做混合处理 什么是纹理单元纹理单元的作用使用纹理单元的步骤详细解释加载图片并绑定到到GPU纹理单元采样器的设置1.设置采样器变量的纹理单元编号,目的是为了告诉纹理采样器,从哪个纹理单元采集数据2.如果你没有显式地设置采…

JAVA没有搞头了吗?

前言 今年的Java程序员群体似乎承受着前所未有的焦虑。投递简历无人问津,难得的面试机会也难以把握,即便成功入职,也往往难以长久。于是,不少程序员感叹:互联网的寒冬似乎又一次卷土重来,环境如此恶劣&…

短视频矩阵贴牌:打造品牌新势力的策略与实践

在数字化浪潮席卷全球的今天,短视频以其独特的魅力迅速崛起,成为连接用户与品牌的重要桥梁。企业为了快速抢占市场,提升品牌影响力,纷纷探索短视频矩阵贴牌这一新兴模式。本文将深入探讨短视频矩阵贴牌的概念、优势、实施流程及注…

视频生成Sora的全面解析:从AI绘画、ViT到ViViT、TECO、DiT、VDT、NaViT等

前言 真没想到,距离视频生成上一轮的集中爆发(详见《Sora之前的视频生成发展史:从Gen2、Emu Video到PixelDance、SVD、Pika 1.0》)才过去三个月,没想OpenAI一出手,该领域又直接变天了 自打2.16日OpenAI发布sora以来(其开发团队包…

简易记事本项目(基于Vue 3 + Element Plus + SSM 个人事件管理系统)

项目简介 点滴365是一个基于 Vue 3 Element Plus SSM 开发的个人事件管理系统,旨在帮助用户高效管理 个人日程 和 待办事项。系统支持日记撰写、待办事项管理、数据统计分析、图片上传、定时提醒、实时天气等功能,让用户可以更好地记录生活点滴、规划工作任务。 核心技术栈…

【C语言】头文件

所有学习过C语言的朋友都熟悉这样一段代码&#xff1a; #include <stdio.h>int main(int argc, char *argv[]) {return 0; }那么&#xff0c;你真的了解 <stdio.h> 吗&#xff1f; <stdio…

ChatGPT Search开放:实时多模态搜索新体验

点击访问 chatTools 免费体验GPT最新模型&#xff0c;包括o1推理模型、GPT4o、Claude、Gemini等模型&#xff01; ChatGPT Search&#xff1a;功能亮点解析 本次更新的ChatGPT Search带来了多项令人瞩目的功能&#xff0c;使其在搜索引擎市场中更具竞争力。 1. 高级语音模式&…

概率论得学习和整理31: 连续型随机变量的概率本质是求面积,均匀分布等

目录 1 连续性随机变量 2 连续性随机变量和 离散型随机变量&#xff0c;分布的区别 3 不要混淆概念 4 均匀分布的相关 4.1 定义 4.2 例子 1 连续性随机变量 连续性随机变量最大的特点&#xff0c;单个点上的概率0多了一个分布函数&#xff0c;因为从1维变2维了&#xff…

跟沐神学读论文-论文阅读管理

摘要 近期有读论文的需求&#xff0c;就需要去了解一下论文到底要怎么读&#xff0c;同一个系列之间的论文如何作整理和归纳&#xff0c;之前也有了解过市面上有成熟的论文阅读工具&#xff0c;但是对于学生党来讲没什么性价比&#xff0c;在B站上看到沐神有讲解他的思路Typor…

java_断点调试(debug)

按照如下配置好后&#xff0c;即可点击“F7”,进入相应的方法&#xff0c;查看源码 package com.hspedu.debug_;//debug对象创建的过程&#xff0c;加深对调试的理解 public class Debug01 {public static void main(String[] args) {//创建对象的流程//&#xff08;1&#xff…

c++数据结构算法复习基础--13--基数算法

基数排序 - 桶排序 时间复杂度 O(n*d) – d为数据的长度 每次比较一位&#xff08;个位、十位。。。&#xff09;&#xff0c;所以取值范围就为0-9。 根据该特点&#xff0c;设计桶的概念 – 0号桶、1号桶… 1、思想 1&#xff09;找出最长的数字&#xff0c;确定要处理的…

微信小程序TTS解决方案

微信小程序原生语音合成 API&#xff08;基础且简单&#xff09; 介绍&#xff1a;微信小程序提供了基础的语音合成能力。通过wx.createInnerAudioContext()等相关API&#xff0c;可以实现简单的语音播放功能。不过它主要是用于音频播放&#xff0c;对于完整的文本到语音&#…

matlab绘图时设置左、右坐标轴为不同颜色

目录 一、需求描述 二、实现方法 一、需求描述 当图中存在两条曲线&#xff0c;需要对两条曲线进行分别描述时&#xff0c;应设置左、右坐标轴为不同颜色&#xff0c;并设置刻度线&#xff0c;且坐标轴颜色需要和曲线颜色相同。 二、实现方法 1.1、可以实现&#xff1a; 1…

Vue3动态表单实现

实现方法&#xff1a;通过<component />标签动实现动态表单渲染 component标签&#xff1a; 在vue中 component 标签用于动态组件标签的渲染。它允许在同一个挂载点上条件渲染不同的组件&#xff0c;通过is属性可以渲染指定的属性 在上面的例子中&#xff0c;通过调用…

[C++]C++工具之对异常情况的处理(throw、catch、try)以及用命名空间避免同名冲突

一、C 异常处理&#x1f60a; 1.1 定义 C 中的异常处理用于应对程序运行中的异常情况&#xff08;如除零、数组越界等&#xff09;&#xff0c;通过 try-catch 机制捕获和处理错误&#xff0c;防止程序崩溃。 异常是程序运行时意外发生的事件&#xff0c;可以通过抛出&#xf…