alphaPose算法环境配置

1.问题描述

AlphaPose是一款精准的多人姿态评估工具,并声称是第一款开源系统。AlphaPose既可以在图片、视频或多图中进行姿态估计,也能在画面中对动作进行追踪。它的输出形式非常广泛,包括PNG、JPG和AVI等具有关键点的图片形式,也有JSON格式的输出,这一特点也使其成为众多应用受欢迎的工具。从它的代码来看,做的很完善,不过配置环境是真的需要耐心。我在三台电脑上才配置成功。第一台是没有GPU的Ubuntu16.04系统,在配置到最后需要编译时,它会提示没有GPU相关的问题。第二台是有GPU的cenos7系统,编译前需要装一个库(如下),但是用cenos7不知道怎么装,所以又失败了。第三台在有GPU的Ubuntu16.04系统上才预装成功。下面总结一下配置过程,以及遇到的问题。

sudo apt-get install libyaml-dev

在配置之前先说明我遇到的问题,以防后面的人踩同样的坑。总结如下:

  1. 不能装在没有GPU上电脑。
  2. 我在CenOs7编译通过不了。
  3. 用pip安装的torch的环境,最后的编译不能成功,原因不明。
  4. 用conda安装的torch时,用Python=3.6.0会出现ImportError: undefined symbol: PySlice_Unpack的错误,需要使用Python==3.6.2
  5. 需要电脑上需要安装git。

2.配置过程

原项目地址是:AlphaPose。预装成功测试的视频结果这里。下面是配置成功的步骤。

先创建虚拟环境并激活(这个过程可能会把pillow下载过高,只需要从新安装一下pip install Pillow==6.2.2就行):

conda create -n alphapose python=3.6.2
conda activate alphapose

安装pytorch,使用conda安装pytorch会自动下载cuda和cudnn。

conda install pytorch==1.1.0 torchvision==0.3.0

下载原项目就不用多说了,如果下载过慢,可以到这里下载。在Ubuntu的终端进入项目的根目录,下面就开始编译了。先安装cpython。

pip install cython

再安装其他依赖库:

sudo apt-get install libyaml-dev

在真正开始编译之前,先确定一下pytorch-GPU是否正确安装。比如在终端输入以下命令。

python
import numpy
import torch
import torchvision
print(torch.cuda.is_available())

如果上面都没有出错,那么成功一半了,现在开始编译了。命令如下:

python setup.py build develop

在编译过程中如果没有出错,那么恭喜,成功了。出错了,也没关系,按照里面出错提示一一解决就行,然后再次输入上面的代码进行编译,直到成功。

在项目的根目录执行以下命令:

./scripts/inference.sh ./configs/coco/resnet/256x192_res152_lr1e-3_1x-duc.yaml ./pretrained_models/fast_421_res152_256x192.pth ./StackItUp.mp4

3.其他问题

该项目有很多的weight需要下载,你可以到他项目中提供的网页上下载,如果实在下不了,可以到到后面留言留下邮箱,我发给你。在运行的时候,该项目还会下载pytorch版本的resnet152的weight(也有可能是rennet50,看你怎么选),可以提前下载(直接复制地址,用迅雷下载很快,放的位置是/home/username/.cache/torch/checkpoints/)。该项目非常吃内存,我16G的内存一下就吃掉了,吃的只剩不到100M。这还是限制单线程的情况下运行的,原项目在windows是单线程,在非windows系统上采用多线程。但是我在16G的内存的Ubuntu系统采用默认的设置运行程序,程序直接报错,采用单线程才能运行成功。

model_urls = {
    'resnet18': 'https://download.pytorch.org/models/resnet18-5c106cde.pth',
    'resnet34': 'https://download.pytorch.org/models/resnet34-333f7ec4.pth',
    'resnet50': 'https://download.pytorch.org/models/resnet50-19c8e357.pth',
    'resnet101': 'https://download.pytorch.org/models/resnet101-5d3b4d8f.pth',
    'resnet152': 'https://download.pytorch.org/models/resnet152-b121ed2d.pth',
}
发布了82 篇原创文章 · 获赞 126 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/qq_31112205/article/details/104707196