Ubuntu服务器上搭建CornerNet-Lite环境

Ubuntu服务器上搭建CornerNet-Lite环境

本篇博客记录了博主在Ubuntu14.04的服务器上搭建CornerNet-Lite环境的全过程,希望能帮助读者少踩坑,如有错误之处,敬请指正。

一、Github上下载CornerNet-Lite开源代码

Github链接:https://github.com/princeton-vl/CornerNet-Lite

进入一个空的文件夹,输入以下命令下载源码:

(base) cjp@ubuntu3:~$ git clone https://github.com/princeton-vl/CornerNet-Lite

查看工程中的README.md文件,可以知道其依赖的软件环境:

  • Python 3.7
  • PyTorch 1.0.0
  • CUDA 10
  • GCC 4.9.2 or above
  • Anaconda

由于是在服务器上搭建环境,我们选择用Anaconda创建一个虚拟环境,然后在虚拟环境中安装上述软件。

二、Anaconda创建虚拟环境

1.安装Anaconda

由于官网下载需要注册账号,并且速度较慢,我们选择在清华大学开源软件镜像站中下载。

下载网址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/

在上述网址中根据自己系统的指令集选择一个对应的Anaconda版本(如果版本与系统不对应则无法使用),如这里我们选择Anaconda-1.4.0-Linux-X86_64.sh,右键复制其下载地址,在服务器上用wget进行下载:

Anaconda下载

(base) cjp@ubuntu3:~$ wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda-1.4.0-Linux-x86_64.sh

下载完成后,进入安装包所在的目录,输入以下命令进行安装:

(base) cjp@ubuntu3:~$ bash Anaconda-1.4.0-Linux-x86.sh

随后会进入安装步骤,根据提示输入yes、回车、安装目录等(要看仔细)。安装完成后会询问是否添加到系统路径,输入yes。也可以手动进行添加:

(base) cjp@ubuntu3:~$ nano ~/.bashrc

在文末添加以下语句:

export PATH="$YOUR_PATH/anaconda3/bin:$PATH"

上述"$YOUR_PATH"需要换成你Anaconda所在的目录。

添加完成后输入:

(base) cjp@ubuntu3:~$ source ~/.bashrc

此时Anaconda的安装就完成了,输入如下命令即可查看安装的Anaconda版本:

(base) cjp@ubuntu3:~$ conda --verdion

随后需要对Anaconda进行换源,各种国内的源都可以,我们这里选择更换清华源,在shell命令行中依次输入以下命令:

(base) cjp@ubuntu3:~$ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
(base) cjp@ubuntu3:~$ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
(base) cjp@ubuntu3:~$ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
(base) cjp@ubuntu3:~$ conda config --append channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/fastai/
(base) cjp@ubuntu3:~$ conda config --append channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
(base) cjp@ubuntu3:~$ conda config --append channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
(base) cjp@ubuntu3:~$ conda config --set show_channel_urls yes

2.用Anaconda创建虚拟环境

CornerNet-Lite开源代码中的conda_packagelist.txt文件记录了所有依赖项,可以运用这一文件直接创建虚拟环境:

(base) cjp@ubuntu3:~$ conda create --name CornerNet_Lite --file conda_packagelist.txt

创建完成后激活环境:

(base) cjp@ubuntu3:~$ source activate CornerNet_Lite

如果激活成功,shell命令行中段首的"(base)“将会更改为”(CornerNet_Lite)"。

Anaconda创建虚拟环境

3.在自己的路径下安装CUDA

在shell命令行输入:

(CornerNet_Lite) cjp@ubuntu3:~$ nvcc -V

即可查看当前环境下CUDA的版本。如果服务器上没有CUDA或CUDA版本不是10,则需要在自己的路径下安装版本为10的CUDA。

由于在服务器上搭建环境大多数情况下不会给你sudo权限,以下将介绍不用sudo权限的CUDA安装方法。

CUDA的下载地址:https://developer.nvidia.com/cuda-toolkit-archive

CUDA下载
在上述下载地址中点击CUDA Toolkit 10.0,按照下图所示选择与自己服务器系统对应的版本,右键复制下载地址,用wget进行下载:

CUDA版本选择

(CornerNet_Lite) cjp@ubuntu3:~$ wget http://developer.download.nvidia.com/compute/cuda/10.0/Prod/patches/1/cuda_10.0.130.1_linux.run

随后用sh运行.run文件:

(CornerNet_Lite) cjp@ubuntu3:~$ sh cuda_10.0.130.1_linux.run

安装过程中依次输入accept、n、y、安装目录、n、n。

完成后同样需要给个人用户添加环境变量:

(CornerNet_Lite) cjp@ubuntu3:~$ nano ~/.bashrc

在文末添加以下两句:

export PATH=$HOME/cuda10/bin:$PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/cuda10/lib64/

注意以上路径要换成你的CUDA安装路径,我的CUDA是安装在~/cuda10/文件夹中,添加完成后输入:

(CornerNet_Lite) cjp@ubuntu3:~$ source ~/.bashrc

此时就已经成功地在个人路径下安装10.0版本的CUDA,为了查看此时的CUDA版本,可再次输入:

(CornerNet_Lite) cjp@ubuntu3:~$ nvcc -V

可以发现CUDA的版本已经改变成10。

4.安装对应版本的pytorch

pytorch的下载网址:https://pytorch.org/get-started/previous-versions/

在上述网址中找到对应CUDA 10.0的pytorch 1.0.0版本,并按照提示进行安装:

pytorch版本选择

(CornerNet_Lite) cjp@ubuntu3:~$ conda install pytorch==1.0.0 torchvision==0.2.1 cuda100 -c pytorch

安装好后可运行python脚本进行测试:

(CornerNet_Lite) cjp@ubuntu3:~$ python
>>> import torch
>>> torch.cuda.is_available()

如果返回True,表明pytorch安装成功。

pytorch安装成功

三、用官方模型进行测试

在博主的Github上下载CornerNet_Squeeze的官方训练模型:https://github.com/bird1and1fish/CornerNet_Squeeze

命令行中输入:

(CornerNet_Lite) cjp@ubuntu3:~$ git lfs clone https://github.com/bird1and1fish/CornerNet_Squeeze

由于该文件是git-lfs大文件,需要先安装git-lfs后才能正常用上述方法下载。

下载完成后在CornerNet-Lite工程中创建cache/nnet/CornerNet_Squeeze/的文件目录。并将CornerNet_Squeeze_500000.pkl模型文件放在CornerNet-Lite/cache/nnet/CornerNet_Squeeze/目录下。

修改工程中的demo.py如下:

import cv2
from core.detectors import CornerNet_Squeeze
from core.vis_utils import draw_bboxes

detector = CornerNet_Squeeze()
image    = cv2.imread("demo.jpg")

bboxes = detector(image)
image  = draw_bboxes(image, bboxes)
cv2.imwrite("demo_out.jpg", image)

上述代码是将默认的CornerNet-Saccade模型改为CornerNet-Squeeze模型。如果想用CornerNet-Saccade模型测试则不用修改,但是需要下载对应的CornerNet_Saccade_500000.pkl模型文件,并放在CornerNet-Lite/cache/nnet/CornerNet_Saccade/目录下。

此时运行demo.py文件:

(CornerNet_Lite) cjp@ubuntu3:~/CornerNet-Lite$ python demo.py

如果生成了demo_out.jpg图像,则证明CornerNet-Lite整个的环境搭建成功。

输出图像

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值