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.rhkb.cn/news/225880.html

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

相关文章

YOLOv5改进 | 主干篇 | 利用SENetV2改进网络结构 (全网首发改进)

一、本文介绍 本文给大家带来的改进机制是SENetV2,其是2023.11月的最新机制(所以大家想要发论文的可以在上面下点功夫),其是一种通过调整卷积网络中的通道关系来提升性能的网络结构。SENet并不是一个独立的网络模型,而是一个可以和现有的任何…

StackOverflowError的JVM处理方式

背景: 事情来源于生产的一个异常日志 Caused by: java.lang.StackOverflowError: null at java.util.stream.Collectors.lambda$groupingBy$45(Collectors.java:908) at java.util.stream.ReduceOps$3ReducingSink.accept(ReduceOps.java:169) at java.util.ArrayL…

构建安全防线:SDLC中的供应链攻击防范最佳实践与Log360解决方案

在过去的12个月里,有10家公司发现了软件供应链风险。供应链中依赖关系的增加扩大了对手的攻击面。这也导致威胁行为者将注意力从仅影响最终用户的下游链转移到上游链,影响供应商、客户和最终用户。因此,让我们立即讨论如何使你的SOC团队在产品…

搭建简单的GPT聊天机器人

目录 第一步 进行语料库读取、文本预处理,完成data_utls.py 第二步 进行Seq2Seq模型的构建,完成Seq2Seq.py 第三步 进行模型参数设置、加载词典和数据、数据准备、GPU设置、构建优化器和损失函数,进行模型的训练和测试,完成…

快速排序:高效分割与递归,排序领域的王者算法

🎬 鸽芷咕:个人主页 🔥 个人专栏: 《数据结构&算法》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 📋 前言 快速排序这个名词,快排之所以叫快排肯定是有点东西的。他在处理大规模数据集时表现及其…

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之线性布局容器Row组件

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之线性布局容器Row组件 一、操作环境 操作系统: Windows 10 专业版、IDE:DevEco Studio 3.1、SDK:HarmonyOS 3.1 二、Row组件 沿水平方向布局容器。 子组件 可以包含子组件。 接口 Row(…

【头歌实训】Spark 完全分布式的安装和部署(新)

文章目录 第1关: Standalone 分布式集群搭建任务描述相关知识课程视频Spark分布式安装模式主机映射免密登录准备Spark安装包配置环境变量修改 spark-env.sh 配置文件修改 slaves 文件分发安装包启动spark验证安装 编程要求测试说明答案代码 第1关: Stand…

『精』CSS 小技巧之BEM规范

『精』CSS 小技巧之BEM规范 文章目录 『精』CSS 小技巧之BEM规范一、什么是BEM?二、BEM要怎么用?三、不用BEM会少个胳膊吗?💊四、Sass与BEM的结合🎈五、块与修饰符应放在一块👿参考资料💘推荐博…

XIAO ESP32S3之物体检测加入视频流

一、前言 由于XIAO ESP32S3开发套件没有显示屏配件,因此加入http视频流功能,可通过浏览器请求ESP32S3上的视频流。 二、思路 1、XIAO ESP32S3启动后通过wifi连接到AP; 2、启动http服务器,注册get_mjpeg处理函数; 3…

PyTorch实战:基于Seq2seq模型处理机器翻译任务(模型预测)

文章目录 引言数据预处理加载字典对象en2id和zh2id文本分词 加载训练好的Seq2Seq模型模型预测完整代码结束语 引言 随着全球化的深入,翻译需求日益增长。传统的人工翻译方式虽然质量高,但效率低,成本高。机器翻译的出现,为解决这…

虚函数的讲解

文章目录 虚函数的声明与定义代码演示基类Person派生类Man派生类Woman 测试代码动态绑定静态绑定访问私有虚函数总结一下通过成员函数指针调用函数的方式 虚函数的声明与定义 虚函数存在于C的类、结构体等中,不能存在于全局函数中,只能作为成员函数存在…

IntelliJ IDEA [插件 MybatisX] mapper和xml间跳转

文章目录 1. 安装插件2. 如何使用3. 主要功能总结 MybatisX 是一款为 IntelliJ IDEA 提供支持的 MyBatis 开发插件 它通过提供丰富的功能集,大大简化了 MyBatis XML 文件的编写、映射关系的可视化查看以及 SQL 语句的调试等操作。本文将介绍如何安装、配置和使用 In…

知识库问答LangChain+LLM的二次开发:商用时的典型问题及其改进方案

前言 如之前的文章所述,我司下半年成立大模型项目团队之后,我虽兼管整个项目团队,但为让项目的推进效率更高,故分成了三大项目组 第一项目组由霍哥带头负责类似AIGC模特生成系统第二项目组由阿荀带头负责论文审稿GPT以及AI agen…

基于飞浆OCR的文本框box及坐标中心点检测JSON格式保存文本

OCR的文本框box及JSON数据保存 需求说明 一、借助飞浆框出OCR识别的文本框 二、以圆圈形式标出每个框的中心点位置 三、以JSON及文本格式保存OCR识别的文本 四、以文本格式保存必要的文本信息 解决方法 一、文本的坐标来自飞浆的COR识别 二、借助paddleocr的draw_ocr画出…

go语言,ent库与gorm库,插入一条null值的time数据

情景介绍 使用go语言,我需要保存xxxTime的字段至数据库中,这个字段可能为空,也可能是一段时间。我采取的是统一先赋值为空,若有需要,则再进行插入(需要根据另一个字段判断是否插入) 在我的数据…

最新国内使用GPT4教程,GPT语音对话使用,Midjourney绘画,ChatFile文档对话总结+DALL-E3文生图

一、前言 ChatGPT3.5、GPT4.0、GPT语音对话、Midjourney绘画,文档对话总结DALL-E3文生图,相信对大家应该不感到陌生吧?简单来说,GPT-4技术比之前的GPT-3.5相对来说更加智能,会根据用户的要求生成多种内容甚至也可以和…

HPCC:高精度拥塞控制

HPCC:高精度拥塞控制 文章目录 HPCC:高精度拥塞控制摘要1 引言1.1 背景1.2 现有CC的局限性1.3 HPCC的提出 2 研究动机2.1 大型RDMA部署2.2 RDMA目标2.3 当前RDMA CC中的权衡DCQCNTIMELY 2.4 下一代高速CC 3 技术方案3.1 INT3.2 HPCC设计3.3 HPPC的参数 4…

浅谈WPF之ToolTip工具提示

在日常应用中,当鼠标放置在某些控件上时,都会有相应的信息提示,从软件易用性上来说,这是一个非常友好的功能设计。那在WPF中,如何进行控件信息提示呢?这就是本文需要介绍的ToolTip【工具提示】内容&#xf…

数据结构入门到入土——List的介绍

目录 一,什么是List? 二,常见接口介绍 三,List的使用 一,什么是List? 在集合框架中,List是一个接口,继承自Collection。 Collection也是一个接口,该接口中规范了后序容…

MATLAB中./和/,.*和*,.^和^的区别

MATLAB中./和/,.*和*,.^ 和^ 的区别 MATLAB中./和/,.*和*,.^ 和^ 的区别./ 和 / 的区别.//实验实验结果 .* 和 * 的区别.**实验实验结果 .^ 和^ 的区别.^n^n实验运行结果 MATLAB中./和/,.和,.^ 和^ 的区别 …