CenterNet在Ubuntu16.04系统下环境配置部署

说明:配置环境中之前,我的ubuntu中环境:cuda10.1 + nvidia 390【还包含430】+ gcc 7.5;可能需要安装两个版本的cuda,以及各自cuda对应版本的cudnn,gcc
若你刚好只有一个cuda9.0就很简单,不需要考虑多个cuda切换的问题。

一、CenterNet所需深度学习的环境

  1. cuda 9.0 【下载地址nvida
  2. gcc 5.5.0
  3. nvida (目前使用的是390)【要和cuda9.0对应,版本的最低要求:384】
  4. cudnn 7.0【也是要和cuda9.0对应的,下载的是.tar.gz文件,可以去CUDNN官网下载地址
  5. anaconda3 5.2.0 【python 3.6】 anaconda清华镜像下载地址 这个具体版本要求暂时没找到。5.2.0是可以实现的

二、对应的软件安装步骤[安装顺序按照序号来]

  1. cuda和nvida 见Linux下,Nvidia驱动以及Cuda的安装
  2. gcc安装步骤见下文【五、问题3】
  3. cudnn:解压下载好cudnn文件,在文件夹内打开终端,执行如下操作:【若要安装cuda10.1对应的cudnn也是同样的方法,只是修改对应版本号即可】
	sudo cp cuda/include/cudnn.h  /usr/local/cuda-9.0/include/
	sudo cp cuda/lib64/libcudnn*  /usr/local/cuda-9.0/lib64/
	sudo chmod a+r /usr/local/cuda-9.0/include/cudnn.h 
	sudo chmod a+r /usr/local/cuda-9.0/lib64/libcudn
  1. annaconda:
	sudo apt-get install yum  //安装之前先安装yum;
	bash Anaconda3-5.2.0-Linux-x86_64.sh
	yum install -y bzip2
	按照提示,根据需要选择yes/no;
	//2.安装结束后,配置环境变量步骤:
	sudo vim /etc/profile
	//在文章末尾加上如下代码:[就是你安装好的anaconda3的bin路径]
	export PATH=$PATH:/home/anaconda3/bin
	//重新加载配置文件
	source /etc/prfile
	//测试:打开终端,输入 :
	python3//回车后会看到 Python3.6.4 |Anaconda,
	

anaconda安装成功的截图,顺便测试了是否torch安装成功:
在这里插入图片描述

三、安装软件出现的问题

说明:如果本身的ubuntu的系统就没有安装其他的cuda,则不会出现以下问题:

A当安装cuda9.0的时候【此时系统已经有了cuda10.1】,问题:toolkit installation failed using unsupported compiler

  1. 原因:gcc版本不合适;解决办法:在重新安装cuda,执行.run文件时,加上-override,具体操作如下:【采用是chmod命令安装cuda】
	chmod +x   cuda_9.0.176_384.81_linux.run 
	sudo ./cuda_9.0.176_384.81_linux.run -override
  1. 安装完两个cuda后,修改 .bashrc的配置文件,【一定先删除你之前安装cuda10.1时添加的配置代码export…,否则不管怎么修改软链接,nvcc -V显示都是10.1的版本信息】,新增配置语句代码如下:
	//在文件结尾处添加:
	export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
	export PATH=$PATH:/usr/local/cuda/bin
	export CUDA_HOME=$CUDA_HOME:/usr/local/cuda
	//保存退出后更新一下改文件
	source  ~/.bashrc

如下图所示:
在这里插入图片描述

  1. 不同版cuda之间通过软链接的方式切换:
//1.查看系统的当前的版本
	nvcc   -V
	cat   /usr/local/cuda/version.txt
//2.切换到目录
	cd /usr/local
//3.查看当前的软链接指向
	stat cuda
//4.删除当前的软链接[若是你需要的cuda,可不执行该步骤]
	sudo rm -rf  cuda
//5.并建立新的软链接[若是你需要的cuda,可不执行该步骤]
	sudo ln -s /usr/local/cuda-[另外的cuda版本号:9.0/9.1]  /usr/local/cuda

四、配置CenterNet步骤:

1.在conda虚拟环境中安装

	conda create --name CenterNet python=3.6
	conda activate CenterNet  //(激活环境)

2.安装torch

	conda install pytorch=0.4.1 torchvision -c pytorch

3.先从github拉取代码:(原因:先要安装requirement.txt;它含有COCOAPI里面需要的CPython)

	git clone https://github.com/xingyizhou/CenterNet $CenterNet_ROOT

4.安装requirement.txt(安装前先切换到CenterNet目录下, cd /CenterNet)

	pip install -r requirements.txt

5.安装cocoapi 【安装到CenterNet/data目录下在】

	git clone https://github.com/cocodataset/cocoapi.git $COCOAPI
    cd  cocoapi/PythonAPI
    make
    python setup.py install --user

6.编译DCNv2

	cd CenterNet/src/lib/models/networks/DCNv2
    ./make.sh

7.运行demo【切换到 CenterNet/src目录下】
执行demo前,先下载 ctdet_coco_dla_2x.pth 提取码:v9h2;并讲该文件放到CenterNet/models下

python demo.py ctdet --demo ../images/17790319373_bd19b24cfc_k.jpg  --load_model ../models/ctdet_coco_dla_2x.pth

运行的效果图:
在这里插入图片描述

五、centerNet配置以及执行遇到的问题

  1. 执行demo时,报错:ImportError undefined symbol: __cudaRegisterFatBinaryEnd
    原因:pytorch的编译时CUDA版本和运行时CUDA版本不一致时【我当时是用cuda10.1编译的,二用的cuda9.0运行的】
    解决方法:保证编译和运行时同一个cuda下即可【详细请见参考文献4
  2. 在“”四”第一步激活环境时,报错:CommandNotFoundError: Your shell has not been properly configured to use ‘conda activate’ 无法激活conda创建的CenterNet环境
    解决方法:终端执行这两行命令source activate source deactivate【详细请见参考文献5】
  3. 执行demo时,报错:error – unsupported GNU version! gcc versions later than 6 are not supported!
    原因:cuda所要求的的gcc版本不一致
    解决方法:前提:在已有高版本的gcc编辑器下,安装低版本:【详情请见参考文献6】
	//A 更新安装最新的gcc,并查看当前版本
	1. sudo apt-get install gcc
	2. sudo apt-get install g++
	3. gcc -v   //查看的版本为7.5.0
	4. g++ -v   //查看的版本为7.5.0

	//B 安装更新低版本gcc
	1. sudo apt-get install -y gcc-5
	2. sudo apt-get install -y g++-5

	//C 删除原有链接,建立新的链接
	1. cd /usr/bin 
	2. sudo rm -r gcc //移除之前的软链接
	3. sudo ln -sf gcc-5 gcc // 建立gcc-5的软链接 
	4. sudo rm -r g++  //同上
	5. sudo ln -sf g++-5 g++  //同上

参考文献
1.anaconda安装步骤
2.在ubuntu上安装多个版本的CUDA,并且可以随时切换
3.CenterNet模型文件下载
4.如何解决pytorch 编译时CUDA版本与运行时CUDA版本不对应
5.激活conda创建的虚拟环境
6.Ubuntu 18.04.1 安装低版本GCC

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值