当前位置: 首页 > news >正文

pointnet2_ops_lib/.安装报错解决方案

问题


3D点云相关的代码例如pointnn、pointmlp都需要安装pointnet2_ops,可是基本上在安装pointnet2_ops时总会报错,终归原因是虚拟环境的cuda版本和安装的torch,torchvision,
torchaudio版本不一致导致。

方案

这里以pointmlp(GitHub - ma-xu/pointMLP-pytorch: [ICLR 2022 poster] Official PyTorch implementation of "Rethinking Network Design and Local Geometry in Point Cloud: A Simple Residual MLP Framework")的官网代码为例:

1.首先进入服务器创造3.7版本的虚拟环境:

        这里我的环境名字改为了pointmlp2

conda create -n pointmlp2 python=3.7 -y

2.激活环境pointmlp2

        有的服务器用的是conda activate pointmlp2

source activate pointmlp2

示例图:

3.检查当前cuda版本号:

nvcc -V

示例图:

4.下载cuda配套的torch,torchvision,torchaudio版本(两种方法):

方法一:如果cuda版本在官网 pytorch.org的旧版本可以找到, 如cuda11.6,11.7等等,这种我们键盘直接ctrl+F就搜cu116或者说cu117能找到的话就可以复制到服务器一键安装了。                                                                                           
方法二:1.但是11.5的一键安装没有找到,因此这里就采用了分别安装的方法,如下:
torchhttps://download.pytorch.org/whl/torch/
torchvisionhttps://download.pytorch.org/whl/torchvision/
torchaudiohttps://download.pytorch.org/whl/torchaudio/

2.因为我的是cuda是11.5,因此分别下载torch,torchvision,torchaudio对应11.5的版本

打开链接后,键盘直接ctrl+F在torch的网页里搜索115,找到对应的文件后,在找到cp37(因为我安装的python是3.7版本),然后选择linux的版本下载即可。(后续的torchvision,torchaudio均是如此,这里不在演示)

torch

3.下载完成,将它们放到一个文件夹里。

4.紧接着我们就需要把文件上传到服务器,打开终端,输入下面命令

scp -r C:\Users\cs\Desktop\cuda11.5wheel cs@192.168.1.203:/home/cs

小tips:从Windows上传文件到Linux
scp -P SSH端口  Windows下的文件路径  用户名@Linux机器IP:有权限的路径
可选参数:
    -r 传输文件夹  
    -P 指定端口号,默认22(注意大写)

这样文件夹就上传到服务器。

5.在pointmlp2的环境下cd进入到刚刚上传到服务器的文件夹地址。然后使用pip install的命令进行安装3个文件。

示例图:

安装示意图:

torch


torchvision(这个可以加上清华源下载快一点)

pip install --index-url https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn torchvision-0.12.0+cu115-cp37-cp37m-linux_x86_64.whl

torchaudio

至此3个都安装成功。

6.安装pointmlp代码需要的文件(这个是以pointmlp代码为例所需要的文件)

pip install cycler einops h5py pyyaml==5.4.1 scikit-learn==0.24.2 scipy tqdm matplotlib==3.4.2

这里可以更改加上清华源下载更快

pip install --index-url https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn cycler einops h5py pyyaml==5.4.1 scikit-learn==0.24.2 scipy tqdm matplotlib==3.4.2

7.cd到pointmlp代码路径

8.安装pointnet2_ops_lib/.

        这里大概率会报错:

报错的话,去Cuda Toolkit :: Anaconda.org这个网站,找到你对应的cuda版本复制,因为我的是11.5的。因此我安装的是11.5的。

安装过程需要确认输入y,成功安装后,在安装pip install pointnet2_ops_lib/.

9.结束。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【fscan】Windows环境下的fscan安装与使用指南
  • html——VSCode的使用
  • 枚举对象序列化规则(将Java枚举转换为JSON字符串的步骤)
  • C#字符串操作:判断一个字符串是否存在于另一个字符串按特定字符分割后的子字符串中的几种方法
  • linux查看目录下的文件夹命令,find 查找某个目录,但是不包括这个目录本身?
  • 为什么需要重写equals和如何重写equals
  • 数据中台设计书及建设指南(中台及大数据解决技术方案)
  • 每天10个vue面试题(一)
  • 全能型CAE/CFD建模工具SimLab 详解Part1: Geomtry,轻松集成力学、电磁学、疲劳优化等功能
  • MySQL 创建数据库
  • Java面试八股之MySQL中的MVCC是什么,作用是什么?
  • coco数据集格式计算mAP的python脚本
  • 【方法】如何打开设置了密码的ZIP文件?
  • 如何高效学习(二)
  • 云服务性能优化:缓存策略的高效应用
  • [译]前端离线指南(上)
  • CSS 专业技巧
  • js如何打印object对象
  • js学习笔记
  • React Transition Group -- Transition 组件
  • supervisor 永不挂掉的进程 安装以及使用
  • Vue 2.3、2.4 知识点小结
  • Vue 动态创建 component
  • Vue学习第二天
  • 海量大数据大屏分析展示一步到位:DataWorks数据服务+MaxCompute Lightning对接DataV最佳实践...
  • 猫头鹰的深夜翻译:Java 2D Graphics, 简单的仿射变换
  • 扑朔迷离的属性和特性【彻底弄清】
  • 思维导图—你不知道的JavaScript中卷
  • 中文输入法与React文本输入框的问题与解决方案
  • ​zookeeper集群配置与启动
  • ​如何在iOS手机上查看应用日志
  • #70结构体案例1(导师,学生,成绩)
  • #define MODIFY_REG(REG, CLEARMASK, SETMASK)
  • #ubuntu# #git# repository git config --global --add safe.directory
  • $refs 、$nextTic、动态组件、name的使用
  • (Java)【深基9.例1】选举学生会
  • (二)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (免费领源码)Java#Springboot#mysql农产品销售管理系统47627-计算机毕业设计项目选题推荐
  • (三维重建学习)已有位姿放入colmap和3D Gaussian Splatting训练
  • (十三)Flask之特殊装饰器详解
  • (一) springboot详细介绍
  • (一)Dubbo快速入门、介绍、使用
  • (译) 函数式 JS #1:简介
  • (原创) cocos2dx使用Curl连接网络(客户端)
  • (转)Android中使用ormlite实现持久化(一)--HelloOrmLite
  • (转贴)用VML开发工作流设计器 UCML.NET工作流管理系统
  • (轉貼)《OOD启思录》:61条面向对象设计的经验原则 (OO)
  • **《Linux/Unix系统编程手册》读书笔记24章**
  • *_zh_CN.properties 国际化资源文件 struts 防乱码等
  • .mysql secret在哪_MYSQL基本操作(上)
  • .NET 4 并行(多核)“.NET研究”编程系列之二 从Task开始
  • .NET CF命令行调试器MDbg入门(三) 进程控制
  • .net core 6 使用注解自动注入实例,无需构造注入 autowrite4net
  • .NET Core/Framework 创建委托以大幅度提高反射调用的性能
  • .NET Core实战项目之CMS 第十二章 开发篇-Dapper封装CURD及仓储代码生成器实现