gaussian-splatting windows环境配置

项目场景:

  • 最近在做nerf相关的毕设,一直是在linux下配置的环境,根据官方README配置直接就可以运行了。
  • 因为想着可能会改cuda的东西,想在windows配置下项目,然后来debug,发现问题比较多,中文教程也较少,结合github上的Issues和看到的博客,记录下配置的过程。
    (这个不是详细的教程,只是记录下碰到的坑,以及能安装成功的方法)

gaussian-splatting:https://github.com/graphdeco-inria/gaussian-splatting

配置过程:

windows下最大的问题就是cuda的版本,torch的版本,以及visual studio的版本

  • linux下是3090的显卡,安装的cuda11.6,官方教程虽然说不要用cuda11.6,但是linux下按照官方的教程配置,似乎没碰到什么问题。(但是SIBR_viewers编译有点问题,目前用的windows下的release可运行版本)

  • windows下是1660super的显卡,先是根据README说的安装前置软件:

    • cuda11.7 (测试了11.6 有点问题,11.8 应该也可以)
    • vs2019(安装时勾选c++桌面开发)
    • 下载COLMAP工具
    • 下载代码(一定要加–recursive) git clone https://github.com/graphdeco-inria/gaussian-splatting --recursive
  • 然后是conda环境配置

    • 这里要是怕vs环境变量没配好,也可以去用vs自带的终端来配置环境,这里面避免了一些vs多版本的问题。
      在这里插入图片描述
  • 安装命令,我这里是cuda11.7 和 vs2019

    # 安装环境&激活
    conda create -n gaussian_splatting python=3.7
    conda activate gaussian_splatting
    
    # 根据自己的cuda版本安装torch、torchvision、torchaudio,这个是带cuda的版本
    conda install pytorch==1.13.1 torchvision==0.14.1 torchaudio==0.13.1 pytorch-cuda=11.7 -c pytorch -c nvidia
    
    # "重点!" 在安装两个cuda写的子模块前
    # 安装下 vs2019_win-64 这个包,可确保 Visual Studio 2019 构建工具可用并设置必要的环境变量
    conda install -c conda-forge vs2019_win-64
    
    # 之后切换到gaussian-splatting目录
    cd xxx\gaussian-splatting
    
    # 然后再安装两个子模块,以及其他包
    pip install submodules/diff-gaussian-rasterization
    pip install submodules/simple-knn
    pip install plyfile tqdm
    
    # 不要直接运行 conda env create --file environment.yml or it breaks
    
  • 然后就可以愉快的训练了
    在这里插入图片描述


碰到的bug:

cuda11.6 & cuda11.8都装过了,torch版本 和vs2019 & vs2022都试过,碰到的问题很难解决,建议不要头铁

  • 安装diff-gaussian-rasterization 出现pip无法成功执行setup.py,定位问题ninja这个包的问题:
    ninja Command '['ninja', '-v']' returned non-zero exit status 1.

    • 有人说把torch源码里的-v 改成–version,但是测试后编译build无法生成obj,然后link找不到文件。实际上我感觉是vs的问题,下面这个issue说的 vs2019_win-64 这个库就行:

    https://github.com/graphdeco-inria/gaussian-splatting/issues/522

  • 找不到cl,msvc等,都是visual studio安装的问题

    • 检查下环境变量,在cmd下输出cl看是否正常识别,或者直接在Developer Command Prompt for VS 2019 的终端下配置

  • cuda11.6下,安装错误太多,又是重定义,又是变量冲突。windows下建议不要用11.6。

  • cuda11.8下,conda安装没有官方对应的torch-cuda版,要改下torch版本,我就没有深入去尝试了,看到也有成功配置的。应该安装 vs2019_win-64 之后也是可以的。
    https://github.com/graphdeco-inria/gaussian-splatting/issues/188

  • 主要问题就在于安装vs之后,在conda环境里 conda install -c anaconda vs2019_win-64 ,还要安装扩展包。然后cuda版本不要是11.6,也不要大于12,最好是11.7 & 11.8。此外不要直接用官方的 environment.yml 来配置环境。

  • viewer不需要编译,直接用官方编译好的版本 bin\SIBR_gaussianViewer_app.exe
    https://repo-sam.inria.fr/fungraph/3d-gaussian-splatting/binaries/viewers.zip

  • 23
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: dncnn-denoise-gaussian-noise-tensorflow-master 是一个基于 TensorFlow 框架的去噪神经网络模型。 DNCNN(Dense Convolutional Neural Network)是一种密集卷积神经网络,用于图像去噪任务。它具有多个卷积层,每个卷积层都具有更多的卷积核,以增加网络的感知能力。这使得 DNCNN 在处理图像中的高斯噪声方面表现出色。 该模型的主要目标是去除图像中的高斯噪声。高斯噪声是一种常见的图像噪声,它具有随机性和连续性,由于传感器的限制、信号传输中的干扰或图像采集过程中的其他因素而产生。这种噪声会降低图像的质量并影响后续图像处理任务的效果。 通过训练,dncnn-denoise-gaussian-noise-tensorflow-master 模型学习如何通过卷积层进行特征提取,并使用残差学习来学习重建干净图像。网络的输入是噪声图像,输出是去噪后的图像。通过对许多含有噪声和干净图像对的训练样本进行迭代训练,模型能够学习去除高斯噪声,并还原出更清晰的图像。 该模型主要依赖于 TensorFlow 框架来构建神经网络结构和进行训练。TensorFlow 是一个开源机器学习框架,提供了一套丰富的工具和库,方便有效地实现各种深度学习模型。通过使用 TensorFlow,我们可以更方便地搭建、训练和测试 DNCNN 模型,以实现图像去噪的目标。 总而言之,dncnn-denoise-gaussian-noise-tensorflow-master 是一个使用 TensorFlow 构建的神经网络模型,旨在通过训练去除图像中的高斯噪声,并恢复出清晰的图像。它通过密集卷积神经网络结构和残差学习来实现这一目标,并利用 TensorFlow 提供的功能来简化模型的构建和训练过程。 ### 回答2: "DnCNN-denoise-gaussian-noise-tensorflow-master"是一个基于TensorFlow开发的用于去除高斯噪声的深度神经网络模型。DnCNN代表深度卷积神经网络去噪,它是一种用于图像去噪的先进方法。高斯噪声是一种常见的图像噪声类型,它以正态分布为基础生成,对于图像质量和清晰度有很大影响。 这个项目的目标是利用DnCNN模型,使用TensorFlow实现去除高斯噪声的功能。TensorFlow是一个开源的机器学习框架,提供了丰富的工具和函数库,用于构建和训练深度神经网络模型。通过使用TensorFlow,我们可以高效地创建、训练和优化深度学习模型。 该项目的"master"表示主分支,通常是最新、最稳定的版本。这意味着"DnCNN-denoise-gaussian-noise-tensorflow-master"是基于最新版本的DnCNN网络,并且已经在TensorFlow上进行了实现。 通过使用这个项目,我们可以将含有高斯噪声的图像输入到DnCNN模型中,并得到去噪后的输出图像。这个模型能够学习和理解高斯噪声的特征,并将其从图像中去除,以恢复图像的真实细节和清晰度。这对于许多计算机视觉任务,如人脸识别、图像增强和图像分析等都是非常有用的。 总之,"DnCNN-denoise-gaussian-noise-tensorflow-master"是一个基于TensorFlow实现的高斯噪声去除深度学习模型,它可以帮助我们有效地去除图像中的高斯噪声,提高图像质量和清晰度。 ### 回答3: dncnn-denoise-gaussian-noise-tensorflow-master 是一个基于TensorFlow框架实现的深度卷积神经网络(DnCNN)用于去噪高斯噪声的开源项目。 去噪是数字图像处理中的一个重要任务,因为图像数据常常受到各种噪声的干扰,其中高斯噪声是一种常见的噪声类型。dncnn-denoise-gaussian-noise-tensorflow-master提供了一种通过深度学习方法去除高斯噪声的解决方案。 该项目的实现基于深度卷积神经网络(DnCNN)。深度卷积神经网络是一种具有多层卷积和池化层的神经网络结构,通过学习数据的高级特征来实现图像去噪。DnCNN主要由卷积层、批归一化层和ReLU激活函数组成,通过多层卷积操作来逐渐去噪图像。 在dncnn-denoise-gaussian-noise-tensorflow-master项目中,程序提供了对高斯噪声图像进行训练和测试的功能。用户可以使用该项目来训练自己的去噪模型,也可以使用已经训练好的模型来去噪自己的图像数据。项目还提供了一些辅助功能,如数据加载和保存、网络模型的定义和训练等。 使用dncnn-denoise-gaussian-noise-tensorflow-master可以帮助用户实现高效的图像去噪处理,降低图像中的噪声干扰,提升图像的质量。该项目的开源特性使得用户可以根据自己的需求进行修改和扩展,也可以从中学习深度学习和图像去噪的相关知识和技术。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值