linux终端运行pytorch的指令,Linux下基于Pytorch框架的HRNet代码初实践+解决CUDA和Torch版本不匹配问题...

软硬件环境:

python 3.6.5

Ubuntu 18.04 LTS

Pytorch 1.1.0

NVIDIA TITAN XP 8GB

准备工作

到github把HRNet代码clone或downloads下来,具体链接:https://github.com/stefanopini/simple-HRNet

clone代码: git clone https://github.com/stefanopini/simple-HRNet.git

将所需包都安装下来:pip install -r requirements.txt

这里注意一下!!requirements里面的torch版本是≥1.4.0,如果要安装,请检查自己的cuda是否与这样高版本的torch匹配。否则就不要安装,免得之后还要降版本。具体操作见最后 CUDA和Torch版本不匹配 这一章。

0a35c24c343265e2068276cdae97729d.png

之后新建一个文件夹“weights”,并将三个权重放到红圈的位置:

caff25d5a8a2f322b86d352a69932b6d.png

clone或者downloads YOLOv3:

https://github.com/eriklindernoren/PyTorch-YOLOv3/tree/47b7c912877ca69db35b8af3a38d6522681b3bb3

1)把下载下来的YOLOv3文件夹改名,改为yolo,方便此后的操作。

2)按照上面的树状图,将yolo放到红圈的位置,此前已经有个空的yolo文件夹,直接删掉,用下载下来的YOLOv3文件夹代替即可。

4cdf8ff3512897630eff9a4288a8e1a1.png

3)接着cd到该文件夹下,安装所需的包(图片与下面的代码不同,原因是我没直接把PyTorch-YOLOv3文件改名为yolo,而是在之后改的,这里早改晚改都可,按自己的想法就行):

cd models/detectors/yolo

sudo pip3 install -r requirements.txt

a105211a37c44d2fea45d4f30c1b2fd5.png

4)将YOLOv3的权重保存到红圈位置:

16b190dc3d0d5cadfde057a8f0cc41f5.png

5)cd 到 /weights下,bash download_weights.sh

31e0680f67062daeeaa180053f162cc3.png

运行Class Usage

首先,在simple-HRNet-master文件夹下新建一个Python File

import cv2

import matplotlib.pyplot as plt

from SimpleHRNet import SimpleHRNet

model = SimpleHRNet(48, 17, "./weights/pose_hrnet_w48_384x288.pth")

image = cv2.imread("/home/user/Downloads/simple-HRNet-master/2.JPG", cv2.IMREAD_COLOR) #这里的文件路径和文件名根据自己要识别的图片来

joints = model.predict(image)

print(joints)

a7708cda4b311ca0d202a35ddd57d2d4.png

视频demo运行:

1)首先下载一个视频,准备进行识别。(没有视频的也可以给我留言或者私信,看到了我会回复)

2)进入live-demo.py页面,直接运行,出现报错,大致就是找不到utils.parse_config,解决办法:随着报错,找到/home/user/Downloads/simple-HRNet-master/models/detectors/yolo/models.py,将第9.10行,改为:

from .utils.parse_config import *

from .utils.utils import build_targets, to_cpu, non_max_suppression

3) 这一步比较重要,安装ffmpeg,打开终端:

这里,如果有同学总是出现有关ffmpeg没有‘ffprobe’这个属性之类的报错的话,就好好按照下面的安装流程安装ffmpeg,只要安装成功了,就不会报错。

sudo apt install ffmpeg

安装成功的话:输入 ffmpeg -version,就能见到如下内容

447ae891e0aef526beb72a358cd94138.png

之后

python scripts/live-demo.py --filename xxx.mp4

xxx.mp4具体为自己保存视频的路径,如若需要保存视频,可以再加上--save_video参数

我是在网上找了一段跳舞视频,得到结果如下:

895f3b2121103fc2e0d8a2745743da80.png

CUDA和Torch版本匹配出问题

上图暴露一个信息,此时在用CPU跑程序。并且nvidia-smi可以看到gpu根本没有运行,接下来就是解决不用gpu的问题。

bf8fff0b98a65cd68b3373a37fe8add0.png

我在终端进行如下操作:

ipython

import torch

torch.cuda.is_available()

2d4bc7e9d0bdd465a206e2d7be8ebdf6.png

然后又尝试运行自己另一个项目【这个项目是可以自动识别到CUDA】的,却得到如下结果:

87998fccaa4f418e64e9770abd515ce1.png

“The NVIDIA Driver on your system is too old”。以上两个结果都证明,应该Torch和CUDA是版本匹配出问题了。

1)首先查看torch版本及其匹配的CUDA版本:

python

import torch

torch.__version__ #'1.5.0'

torch.version.cuda #'10.2'

5b11093a43a52c3af218deb1bd8bd9ad.png

2)再查看CUDA版本,

nvidia-smi

我的CUDA版本是10.0

3)降低Torch版本(可自己查一下CUDA与Torch版本匹配的关系)

i. 先卸载之前的torch

pip uninstall pytorch

ii. 安装Torch 1.1.0 版本(前提是已经下了安装包,在安装包所在目录打开终端进行安装)

需要安装包可留言或者评论,看到我会回复。

9ba83913ea62aabffc201c033f611e69.png

iii.检查

ipython

import torch

torch.cuda.is_available()

显示True就对了

15041bc2d4ff303aaf9c6f4ad931e19d.png

最后:

0777ce118690a4ab8d0148c08e87c782.png

说明成功了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1.项目代码均经过功能验证ok,确保稳定可靠运行。欢迎下载体验!下载完使用问题请私信沟通。 2.主要针对各个计算机相关专业,包括计算机科学、信息安全、数据科学与大数据技术、人工智能、通信、物联网等领域的在校学生、专业教师、企业员工。 3.项目具有丰富的拓展空间,不仅可作为入门进阶,也可直接作为毕设、课程设计、大作业、期项目立项演示等用途。 4.当然也鼓励大家基于此进行二次开发。在使用过程中,如有问题或建议,请及时沟通。 5.期待你能在项目中找到乐趣和灵感,也欢迎你的分享和反馈! 【资源说明】 Pytorch框架基于Bert构建词向量+Bi-LSTM+Attention实现情感分类任务python源码+数据集.zipPytorch框架基于Bert构建词向量+Bi-LSTM+Attention实现情感分类任务python源码+数据集.zipPytorch框架基于Bert构建词向量+Bi-LSTM+Attention实现情感分类任务python源码+数据集.zipPytorch框架基于Bert构建词向量+Bi-LSTM+Attention实现情感分类任务python源码+数据集.zipPytorch框架基于Bert构建词向量+Bi-LSTM+Attention实现情感分类任务python源码+数据集.zipPytorch框架基于Bert构建词向量+Bi-LSTM+Attention实现情感分类任务python源码+数据集.zipPytorch框架基于Bert构建词向量+Bi-LSTM+Attention实现情感分类任务python源码+数据集.zipPytorch框架基于Bert构建词向量+Bi-LSTM+Attention实现情感分类任务python源码+数据集.zipPytorch框架基于Bert构建词向量+Bi-LSTM+Attention实现情感分类任务python源码+数据集.zip Pytorch框架基于Bert构建词向量+Bi-LSTM+Attention实现情感分类任务python源码+数据集.zipPytorch框架基于Bert构建词向量+Bi-LSTM+Attention实现情感分类任务python源码+数据集.zip Pytorch框架基于Bert构建词向量+Bi-LSTM+Attention实现情感分类任务python源码+数据集.zip

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值