机器学习实现矿物识别(第二周)

使用mmdetection对coco数据及进行简单训练

环境:Ubuntu20.04

1.可以将一些常用的软件安装到ubuntu中
比如:搜狗输入法;蒲公英异地组网;chrome……
搜狗输入法添加源:ppa:fcitx-team/nightly(会出现一定的报错但是没有关系,重启一遍就好了)
解压.deb文件

sudo dpkg -i xxx.deb
  1. 安装Nvidia显卡的官方驱动可能会与系统自带的nouveau驱动冲突。所以要禁用nouveau驱动
    下载vim
sudo apt install vim

禁用nouveau驱动

sudo vim /etc/modprobe.d/blacklist.conf

blacklist nouveau
options nouveau modeset=0 #添加到其中
	
sudo update-initramfs -u
lsmod | grep nouveau  #重启并检查
  1. 自动获取适合本机的GPU驱动
sudo ubuntu-drivers autoinstall

建议:可以同时打开两个terminal一手安装GPU配置;一手安装anaconda配置

  1. 同时可以安装anaconda3
    可以参考上一周文章,选择清华源下载anaconda3.sh
    下载完后进入下载的目录
sudo bash Anaconda3-5.3.1-Linux-x86_64.sh
sudo vim ~/.bashrc
export PATH=/home/simon/anaconda3/bin:$PATH
source ~/.bashrc


  1. 添加国内conda国内源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
  1. anaconda下载配置环境
conda create -n open-mmlab python=3.7 -y
source activate open-mmlab
conda install pytorch==1.5.1 torchvision==0.6.1 cudatoolkit=10.1
  1. 适配g++ gcc
sudo apt-get install gcc-7 g++-7
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 1
sudo update-alternatives --display gcc #展示
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 9
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 1
sudo update-alternatives --display g++ #展示
  1. 安装cuda10.1
    在官网下载cuda10.1,虽然慢,但是能成功
wget http://developer.download.nvidia.com/compute/cuda/10.1/Prod/local_installers/cuda_10.1.243_418.87.00_linux.runsudo sh cuda_10.1.243_418.87.00_linux.run
sudo sh cuda_10.1.243_418.87.00_linux.run --silent --toolkit --samples --librarypath=/usr/local/cuda-10.1

参考链接:https://blog.csdn.net/wwlswj/article/details/106364094

  1. 配置cuda10.1
gedit ~/.bashrc
export PATH=/usr/local/cuda-10.1/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-10.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
source ~/.bashrc
  1. 测试cuda是否安装成功
nvcc -V
  1. 解压cudnn
    同样在官网下载
    https://blog.csdn.net/wwlswj/article/details/106364094
    需要登录
tar zxvf ./cudnn-10.1-linux-x64-v7.6.5.32.tgz -C ./
  1. 将cudnn文件内容复制到特定路径中
    将解压出的
    cuda/include/cudnn.h文件复制到/usr/local/cuda/include文件夹
sudo cp cudnn.h -r /usr/local/cuda/include

cuda/lib64/下所有文件复制到/usr/local/cuda/lib64文件夹

sudo cp '/home/simon/downloadscuda/lib64/libcudnn.so' '/home/simon/downloads/cuda/lib64/libcudnn.so.7' '/home/simon/downloads/cuda/lib64/libcudnn.so.7.6.5' '/home/simon/downloads/cuda/lib64/libcudnn_static.a' -r /usr/local/cuda/lib64/

注意改引用路径(可以直接把文件拖入terminal)
提升权限

sudo chmod 755 /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
  1. 测试cudnn
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2

出现:#define…………即为成功
13. 在open-mmlab虚拟环境下载mmcv

pip install mmcv-full
#或者定制版本号
 pip install mmcv-full==latest+torch1.5.1+cu101 -f https://openmmlab.oss-accelerate.aliyuncs.com/mmcv/dist/index.html

下载mmcv-full或者直接参考GitHub

https://github.com/open-mmlab/mmdetection/blob/master/docs/install.md

  1. 验证pytorch与cuda是否适配,同时可查看torch版本号
python 
#进入python环境后是;输入
import torch
torch.__version__
torch.cuda.is_available()
  1. 在open-mmlab虚拟环境下载mmdetection
git clone https://github.com/open-mmlab/mmdetection.git
cd mmdetection
  1. 在open-mmlab虚拟环境下载requirements
pip install -r requirements/build.txt
pip install -v -e .  # or "python setup.py develop"
  1. 配好环境后在mmdetection里创建一个data文件夹
    写入第一周生成coco格式的数据
    格式:
    在这里插入图片描述
  2. 尝试训练一个小模型
python tools/train.py configs/faster_rcnn/faster_rcnn_r50_fpn_1x_coco.py

得到AP精度
在这里插入图片描述

  1. 重要的版本号对应

pip list

库名 版本号
torch 1.5.1
torchvision 0.6.0a0+35d732a
mocv-full 1.1.2
numpy 1.19.1

conda list

库名 版本号
cudatoolkit 10.1.243
mmcv-full 1.1.2
python 3.7.9
pytorch 1.5.1
torchvision 0.6.1

持续更新中……

猜你喜欢

转载自blog.csdn.net/laxxal4223/article/details/108684745