【深度学习】【三维重建】windows10环境配置PyTorch3d详细教程

【深度学习】【三维重建】windows10环境配置PyTorch3d详细教程


前言

本人windows10下使用【Code for Neural Reflectance Surfaces (NeRS)】算法时需要搭建PyTorch3d环境,故此以详细教程以该算法依赖的环境版本为参照。

应很多朋友的要求,博主将自己的pytorch3d的conda环境打包放在【百度云盘;提取码:3tyw 】供大家参考,注意环境版本要求保持一致,并不适合所有人。


确定版本对应关系

环境版本要求保持一致:CUDA,CUB,Pytorch,Pytorch3d

注意这里的cub对应的是真实的物理机安装的cuda版本号(环境变量里配置的cuda),不是虚拟环境下的cuda版本号。在这里插入图片描述

假设已经安装了其他版本的cuda和对应的cudnn,可以参考博主的博文【Windows10中下安装多版本CUDA及其切换
本人的安装版本为:

Python 3.9 + Pytorch 1.8.0 + CUDA 11.1 + cudnn 8_0 + pytorch3d 0.6.1 + CUB 1.9.10-1

使用anaconda3新建PyTorch3d虚拟环境:

conda create -n pytorch3d python=3.9
activate pytorch3d

然后安装对应版本pytorch和cuda包:

conda install pytorch==1.8.0 torchvision==0.9.0 torchaudio==0.8.0 cudatoolkit=11.1 -c pytorch -c conda-forge

查询对照表,查看cuda对应的cub版本。在这里插入图片描述
博主的cuda版本为11.1,NVIDIA CUB推荐1.9.10-1,下载解压后将其路径新建CUB_HOME到环境变量中:

注意不是在Path中添加

安装Pytorch3d的依赖项:

conda install -c fvcore -c iopath -c conda-forge fvcore iopath

源码编译安装Pytorch3d

选择Pytorch3d版本,各版本下有注明其适用的pytorch版本,博主这里是0.6.1版本。

以管理者身份打开"x64 Native Tools Command Prompt for VS 2019"终端(安装VS 2019),cd到pytorch3d解压目录里,输入以下指令:

# 激活对应的环境,进入到Pytorch3d路径下
cd pytorch3d-0.6.1
activate pytorch3d
set DISTUTILS_USE_SDK=1
set PYTORCH3D_NO_NINJA=1


修改pytorch3d里setup.py文件的源码:

# 46行修改为
extra_compile_args = {"cxx": []}
# 60行注释-std=c++14
# "-std=c++14",

继续在"x64 Native Tools Command Prompt for VS 2019"执行以下命令:

# 可能需要科学上网,需要下载一些依赖.
python setup.py install

成功安装。

# 查看环境中的是否成功安装包
conda list


用一段测试代码验证pytorch3d能否正常使用。

import torch
from pytorch3d.structures import Meshes
from pytorch3d.utils import ico_sphere

# 创建一个简单的3D球体
sphere_mesh = ico_sphere(3, device=torch.device("cuda"))

# 打印球体的顶点和面信息
print("顶点坐标:", sphere_mesh.verts_packed())
print("面索引:", sphere_mesh.faces_packed())

说明能够正常使用。


总结

尽可能简单、详细的介绍windows10环境配置PyTorch3d详细教程,后续可以在当前配置的PyTorch3d环境中运行三维重建相关的代码。

  • 5
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
基于深度学习方法实现三维重建及三维目标检测python源码+详细操作说明+模型 本项目主要包括以下内容: 1. 使用深度学习技术对建筑物进行完整的三维重建,无死角、无畸变。 2. 结合计算机视觉课程知识,识别并计算出楼层数目、最高高度、最宽宽度、 最长长度、窗户数目、窗户面积、整个建筑的体积(立方米数)。 3. 识别并计算楼宇外围物体的数目,比如树木、垃圾箱、灯杆、空调外挂机等等。 我们运用深度学习策略对图像的三维重建主要包括以下步骤: 1. 对图像取特征点(特征提取) 2. 特征点匹配 3. 去除错误匹配点 4. `sfm`恢复相机位姿 5. 稠密重建(也称`mvs`)。 1. 我们首先尝试传统的稠密重建策略,利用patchmatch算法进行处理; 2. 之后再使用深度学习方法,我们采用`patchmatchnet`,`CVP-MVSNet`等算法进行处理。 环境配置 我们项目采用pytorch环境,依赖包的安装: ``` pip install -r requirements.txt ``` 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载使用,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。 欢迎下载,沟通交流,互相学习,共同进步!
PyTorch是一个广泛应用于深度学习领域的开源机器学习框架,也被用于三维重建算法的实现。深度学习三维重建算法通常使用PyTorch进行开发和训练。 其中,推荐莫烦的PyTorch教程,可以在B站上搜索莫烦Python来学习PyTorch的基础知识和应用技巧。另外,还有一本书籍《深度学习框架PyTorch:入门与实践》也可以作为深度学习三维重建的参考资料。 在深度学习三维重建领域,一个著名的算法是MVSNet,其源码和PyTorch版实现可以在ECCV-2018的论文中找到。这个算法结合了多视角的图像信息,能够生成高质量的三维重建结果。 此外,关于基于深度学习的最新三维重建算法的综述论文也提供了对近几年相关工作的详细总结,包括网络结构、输入输出和数据集等方面的内容。在阅读具体论文之前,阅读这篇综述论文可以对所有的三维重建算法有一个大致的了解。该综述论文的链接为:https://arxiv.org/pdf/1906.06543v3.pdf。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [基于深度学习的单视图三维重建算法学习路线](https://blog.csdn.net/Yong_Qi2015/article/details/122505161)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [深度学习三维重建 MVSNet-ECCV-2018 (源码、pytorch版、原文、注释、译文、批注)](https://download.csdn.net/download/m0_51233386/88211116)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值