ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

基于Pytorch训练Pointnet+Windows10

2021-08-14 23:04:10  阅读:724  来源: 互联网

标签:__ pointnet torch Pointnet Pytorch Windows10 pytorch 版本 下载


1、前言

最近实验室购入3D的摄像机,想要应用于图像识别,钢哥让我找一找相应的3D识别项目。

我在github上面找到了pointnet这个项目,但是由于这个项目采用的是Python 2.7, TensorFlow 1.0.1, 我是想找个基于Pytorch框架, Python3.X版本的,所以根据官方提示,我找到了pointnet.pytorch这个版本.

我其实不太懂这个深度学习这一块,之前有过利用YoloV3的经历也是在网上搜索相应的教程后,经过相当时间的挣扎、痛苦,然后才成功运行的,我搜索了pointnet相关的教程,却是没有找到多少在Windows系统下运行的。多是复现github上的项目,在Linux或是 Ubuntu上运行。奈何我本人对这两种系统一点也不了解,所以在window10成功运行pointnet.pytorch版本后,做一个记录.

2、配置环境

Anaconda+Pycharm

Cuda10.2

Cudnn8.1.0

Python3.7

Cuda和Cudnn版本号需要匹配

3、准备工作

3.1、创建虚拟环境

打开Annaconda Promt,创建一个虚拟环境专门应用于Pointnet.Pytorch项目的运行。

conda create -n <虚拟环境的名字> python=<版本号>
conda create -n pointnet python=3.7

image-20210814205535725

成功创建

image-20210814205802523

输入activate pointnet 激活环境

3.2、下载文件

cd进入E:/lyh文件下

image-20210814205934165

输入

git clone https://github.com/fxia22/pointnet.pytorch

将github上的项目下载下来,若是网络不好,也可以先在github上下载完后解压直接放在指定的目录下

QQ图片20210814210757

3.3、下载环境所需要的库

在anaconda prompt 下输入进入pointnet.pytorch的命令

QQ图片20210814223033

输入pip install -e .(包括后面的句号小点)

pip install -e .

QQ图片20210814223316

程序会按照setup.py文件里的安排,把python相应的库下好

QQ图片20210814223023

这里在下载torch的时候会出现问题比如ReadtimeOut的超时问题(这个问题我是挂梯子解决的)。

下载完以后由于怕torch版本过高,所以我卸载程序自动下载的torch1.9版本,安装了一个torch1.5.0的版本。

可以选择离线下载torch库,在这个网址中查询与cuda、cudnn、python对应的版本,像我的话由于怕pytorch版本过高,GitHub这个项目原本就只是用了torch1.0.1的版本,所以我选择了python3.7,cuda10.2所能配置的最低版本

torch-1.5.0-cp37-cp37m-win_amd64.whl

QQ图片20210814223338

在进入相应路径下,

pip install torch-1.5.0-cp37-cp37m-win_amd64.whl

安装torch库

QQ图片20210814223409

4、数据集

image-20210814220015491

github文档中 build.sh下载的是可视化的过程,这个暂时我还不知道怎么处理

download.sh的话是下载数据集,可以直接根据

https://shapenet.cs.stanford.edu/ericyi/shapenetcore_partanno_segmentation_benchmark_v0.zip

进行下载

下载完后解压在pointnet.pytorch文件夹下即可.

QQ图片20210814223421

5、运行过程及出现的问题

用pycharm打开pointnet.pytorch,在终端cd utils 进入utils,输入

python train_classification.py --dataset=E:\lyh\pointnet.pytorch\shapenetcore_partanno_segmentation_benchmark_v0\ --nepoch=5 --dataset_type=shapenet

5.2、问题1

UserWarning: Detected call of `lr_scheduler.step()` before `optimizer.step()`. In PyTorch 1.1.0 and late
r, you should call them in the opposite order: `optimizer.step()` before `lr_scheduler.step()`.  Failure to do this will result in PyTorch skipping the first value of the learning rate schedule.

这是PyTorch1.1.0版本以后会出现的问题,这里需要更改train.classification.py文件里两句话的位置

image-20210814222255097

5.3、问题二

 if __name__ == '__main__':
                freeze_support()
                ...

​    The "freeze_support()" line can be omitted if the program
​    is not going to be frozen to produce an executable.

将代码块置于if __name__ == '__main__':之下

image-20210814222425658

再次输入对应的命令,即可运行成功!

image-20210814222518533

image-20210814222559066

6、参考

Detected call of lr_scheduler.step() before optimizer.step()

PyTorch:The "freeze_support()" line can be omitted if the program is not going to be frozen

python进程池multiprocessing.Pool运行错误:The "freeze_support()" line can be omitted if the program is not g

标签:__,pointnet,torch,Pointnet,Pytorch,Windows10,pytorch,版本,下载
来源: https://www.cnblogs.com/Nadir-Echo/p/15142141.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有