Win10 + 4090显卡配置深度学习环境 + gaussian-splatting配置 + 实测自己的场景

目录

1 安装Anaconda 2023.09版本

2 安装CUDA11.8

3 安装深度学习库Cudnn8.6.0

4 安装VSCODE2019

 5 安装Colmap3.8

6 安装git

7 安装Python3.10 + Pytorch2.0.0

7 安装项目

8 采集数据

8.1 IPhone 14 pro 拍摄30张照片左右 + 做预处理

8.2 生成colmap位姿等信息

8.3 开始训练!启动!

8.4 资源占用

8.5 训练完成

8.5 可视化


1 安装Anaconda 2023.09版本

Download Success | Anacondaicon-default.png?t=N7T8https://www.anaconda.com/download-success        在这个网站下载最新版Anaconda。

        安装直接执行就行,一直点next。

        这样就是安装成功了。

        输入nvcc -V查看cuda版本。

        没安装过cuda,开始安装cuda。

2 安装CUDA11.8

CUDA Toolkit 11.8 Downloads | NVIDIA Developericon-default.png?t=N7T8https://developer.nvidia.com/cuda-11-8-0-download-archive?target_os=Windows&target_arch=x86_64&target_version=10&target_type=exe_local        这个网址下载cuda11.8。点击Download下载。

        直接赋予管理员权限安装就行。

        这样就是安装成功了。

        验证cuda安装:

3 安装深度学习库Cudnn8.6.0

cuDNN Archive | NVIDIA Developericon-default.png?t=N7T8https://developer.nvidia.com/rdp/cudnn-archive         在这个网站下载。

        要注册英伟达账号。

        这里下载好是一堆库文件,我们需要移动到cuda安装目录下。

        a) 把cuda\bin目录下的文件复制到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\bin 目录下.
        b) 把\cuda\ include目录下的文件复制到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\include 目录下.
        c) 把\cuda\lib\x64\目录下的文件复制到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\lib\x64 目录下.        就是这样。

        添加cudnn到环境变量:

        安装完毕。

        测试安装:

        两个都要PASS成功!

4 安装VSCODE2019

         下载好安装程序。

        等待安装。

        一定要勾选这个!!!

        成功

 5 安装Colmap3.8

        下载链接:

Release 3.8 · colmap/colmap · GitHubicon-default.png?t=N7T8https://github.com/colmap/colmap/releases/tag/3.8        由于我们安装了cuda,下载cuda版本的。

        解压后移动到C盘非中文目录下。添加这个路径到环境变量。

        OK。

6 安装git

        下载完安装就行,一直下一步。

        到命令行查看是否安装成功

        成功!

7 安装Python3.10 + Pytorch2.0.0

        创建python3.10的虚拟环境。 

conda create -n 3DGS python=3.10

        启动环境:

conda activate 3DGS

        安装pytorch2.0.0

conda install pytorch==2.0.0 torchvision==0.15.0 torchaudio==2.0.0 pytorch-cuda=11.8 -c pytorch -c nvidia

        测试pytorch是否可用:

        可用,成功。

7 安装项目

        克隆项目:

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

        安装项目的依赖:

SET DISTUTILS_USE_SDK=1
pip install gaussian-splatting\submodules\diff-gaussian-rasterization
pip install gaussian-splatting\submodules\simple-knn
pip install plyfile tqdm

        这步成功了就差不多了哈哈!

8 采集数据

8.1 IPhone 14 pro 拍摄30张照片左右 + 做预处理

        放入文件夹data中,再新建一个文件夹input把照片全部放进去。

        用这个脚本转换图像的名称:

import osfolder_path = r'C:\Users\lhwnb\Desktop\data\input'files = os.listdir(folder_path)counter = 0for file_name in files:if file_name.endswith('.jpg') or file_name.endswith('.jpg') or file_name.endswith('.png'):new_name = f"{counter:06}.jpg"  # 6位数字格式,如000000.jpgcurrent_path = os.path.join(folder_path, file_name)new_path = os.path.join(folder_path, new_name)os.rename(current_path, new_path)counter += 1

8.2 生成colmap位姿等信息

        将文件夹移动到项目文件夹,执行

python convert.py -s data

        处理中.....

        处理完毕。

        我们看data文件夹:

        colmap帮我们生成了很多文件,不用理会。

8.3 开始训练!启动!

         我们监视一下显卡与内存的状态:

        显存大概需要7G左右,可能是我图片少的缘故吧!

        内存大概占用12G左右

8.4 资源占用

        博主的电脑为联想拯救者Y9000p 2023 4090款:

        CPU  I9 13900HX 24核心32线程 支持超线程技术。

        GPU  4090 16G。

        Memory 32G。

        在训练过程中,采用默认参数进行训练 图像为42张4K图像,程序进行过剪裁:

        显存占用大约在7G左右,CPU占用率大约为12% 4.40GHz(I9 13代还是强),内存占用大约为12.6G。

        显存快爆炸了。

8.5 训练完成

        训练完成。

        output文件夹就是训练生成的产物:

8.5 可视化

         下载可视化工具:

可视化工具下载icon-default.png?t=N7T8https://repo-sam.inria.fr/fungraph/3d-gaussian-splatting/binaries/viewers.zip

        下载好解压到viewer文件夹中(需要自己去创建这个文件夹)。

        安装完成之后,在地址栏输入cmd,通过下列命令运行:

.\viewers\bin\SIBR_gaussianViewer_app -m data/output

        操作方法:

        WSAD控制上下左右,UIOJKL旋转相机,

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

STM32——F407定时器概述

1 定时器分类 定时器类型数量位号位宽时钟捕获/比较输出DMA请求计数互补输出基本2TIM6,TIM716bitAPB1-有递增-通用2TIM2,TIM532bitAPB14通道有递增、递减、中心对齐-通用2TIM3,TIM432bitAPB14通道有递增、递减、中心对齐-通用1TIM916bitAPB14通道有递增-通用2TIM10、TIM1116bi…

独立站的营销策略:吸引顾客的秘密武器

一、独立站的重要性 独立站是指企业自主建立的电子商务网站,具有独立的域名和运营管理权。通过独立站,企业可以展示产品信息、提供在线服务、进行促销活动等,与顾客建立互动和信任关系。独立站的重要性在于它可以帮助企业建立品牌认知度、提…

面向对象基础-类与对象-封装

1、类与对象 1.1 概念 类:类是一个抽象的概念,用于描述一类对象的特点。 对象:根据类的概念所创造的实体。 【思考】一个对象可以没有对应的类嘛? 不可以,因为必须现有类才能创建对象。 1.2 类的内容 类中最基础的内容…

pygame学习(一)——pygame库的导包、初始化、窗口的设置、打印文字

导语 pygame是一个跨平台Python库(pygame news),专门用来开发游戏。pygame主要为开发、设计2D电子游戏而生,提供图像模块(image)、声音模块(mixer)、输入/输出(鼠标、键盘、显示屏)…

maven中dependencyManagement标签

简介 dependencyManagement正如其名,用于项目依赖的统一管理。 在父项目中的pom.xml文件中加入dependencyManagement标签即可完成依赖版本的声明。在声明完成后,子项目(module)中引用相同的依赖时可以不指定version标签自动引入…

【26.4K⭐】ShareX:一款开源免费、功能强大且丰富的截屏录屏软件

【26.4K⭐】ShareX:一款开源免费、功能强大且丰富的截屏录屏软件 在日常工作、学习和娱乐过程中,我们经常需要截取屏幕或者录制屏幕上特定区域中的内容并进行标记、编辑等操作。无论是为了记录重要的信息、分享有趣的内容,还是为了制作教程和…

toto的2023年终总结

第一次写年终总结,其实顺带是把大学四年的学习都给总结了一下,称之为大学总结更为合适吧? 其实把年终总结发在CSDN上有些不适,之前一直想着搭一个自己的博客也因为种种事情一直没有完成, 索性发在这里了,作…

20231228在Firefly的AIO-3399J开发板的Android11的Firefly的AIO-3399J开发板的DTS配置单前置摄像头ov13850

20231228在Firefly的AIO-3399J开发板的Android11的Firefly的AIO-3399J开发板的DTS配置单前置摄像头ov13850 2023/12/28 12:30 开发板:Firefly的AIO-3399J【RK3399】 SDK:rk3399-android-11-r20211216.tar.xz【Android11】 Android11.0.tar.bz2.aa【ToyBr…

unity学习笔记----游戏练习03

一、修复植物种植的问题 1.当手上存在植物时,再次点击卡片上的植物就会在手上添加新的植物,需要修改成只有手上没有植物时才能再次获取到植物。需要修改AddPlant方法。 public bool AddPlant(PlantType plantType) { //防止手上出现多个植…

分享一个学习Typescript最全的Github网站

一个专注研究Typescript的网站,🎖🎖🎖在这里你可以全面深入学习Typescript相关知识,通过动画方式讲解TS,还有很多常见问题解答。你还可以挑战相应的题目,快来学习吧 我就懒一点,直接原滋原味的…

c语言:打印平行四边形|练习题

一、题目 输入平行四边形的边数&#xff0c;用星号打印平行四边形 如图&#xff1a; 二、思路分析 图形分为两部分 1、左边的空格 2、右边的星号 因此&#xff0c;把空格和星号合起来&#xff0c;就是要求的图形 三、代码图片【带注释】 四、源代码【带注释】 #include <s…

【AI】计算机视觉VIT文章(Transformer)源码解析

论文&#xff1a;Dosovitskiy A, Beyer L, Kolesnikov A, et al. An image is worth 16x16 words: Transformers for image recognition at scale[J]. arXiv preprint arXiv:2010.11929, 2020 源码的Pytorch版&#xff1a;https://github.com/lucidrains/vit-pytorch 0.前言 …

三角函数两角和差公式推导

一.几何推理 1.两角和公式 做一斜边为1的直角△ABC,任意旋转非 k Π , k N kΠ,kN kΠ,kN,补充如图,令 ∠ A B C ∠ α &#xff0c; ∠ C B F ∠ β ∠ABC∠α&#xff0c;∠CBF∠β ∠ABC∠α&#xff0c;∠CBF∠β ∴ ∠ D B F ∠ D B A ∠ α ∠ β 90 , ∠ D A …

Linux基础知识学习3

vim编辑器 其分为四种模式 1.普通(命令)模式 2.编辑模式 3.底栏模式 4.可视化模式 vim编辑器被称为编辑器之神&#xff0c;而Emacs更是神之编辑器 普通模式&#xff1a; 1.光标移动 ^ 移动到行首 w 跳到下一个单词的开头…

C#中使用as关键字将对象转换为指定类型

目录 一、定义 二、示例 三、生成 使用as关键字可以将对象转换为指定类型&#xff0c;与is关键字不同&#xff0c;is关键字用于检查对象是否与给定类型兼容&#xff0c;如果兼容则返回true&#xff0c;如果不兼容则返回false。而as关键字会直接进行类型转换&#xff0c;如果…

小白备战蓝桥杯:Java集合与数据结构

目录 什么是集合&#xff1f; 集合的分类 <> : 泛型 浅谈泛型 代码示例 细说泛型 泛型类 泛型方法 泛型接口 泛型通配符 Collection接口 集合的通用遍历方式 1、迭代器遍历 2、增强for循环 3、forEach方法 4、代码示例 List接口 方法 List集合的遍历方…

【哈希数组】697. 数组的度

697. 数组的度 解题思路 首先创建一个IndexMap 键表示元素 值表示一个列表List list存储该元素在数组的所有索引之后再次创建一个map1 针对上面的List 键表示列表的长度 值表示索引的差值遍历indexmap 将所有的list的长度 和 索引的差值存储遍历map1 找到最大的key 那么这个Ke…

基于Python的B站排行榜大数据分析与可视化系统

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长 QQ 名片 :) 1. 项目简介 本文介绍了一项基于Python的B站排行榜大数据分析与可视化系统的研究。通过网络爬虫技术&#xff0c;系统能够自动分析B站网址&#xff0c;提取大量相关文本信息并存储在系统中。通过对这些信息进行…

LoongArch指令集-特权指令系统——摘抄自胡伟武体系结构和龙芯架构32位精简版参考手册

例外与中断 1 中断 1.1 中断类型 龙芯架构 32 位精简版下的中断采用线中断的形式。每个处理器核内部可记录 12 个线中断&#xff0c;分别是&#xff1a;1 个核间中断&#xff08;IPI&#xff09;&#xff0c;1 个定时器中断&#xff08;TI&#xff09;&#xff0c;8 个硬中断…

CSAPP: LinkBomb 重定位和链接题解(一)

前言 我看了一下&#xff0c;网上关于 LinkBomb 的题解不是很多&#xff0c;LinkBomb 不是 CSAPP 目前大纲的内容&#xff0c;大多数都是写的 LinkLab。如果你做的作业内容是要求每关输出学号&#xff0c;那么你就是跟我一样的 LinkBomb 的实验&#xff08;需要注意的是&#…