深度学习环境搭建之SFA3D目标检测

一、前言

    由于公司项目支撑,近期需要做雷达图像的目标检测后融合。本篇博客详细介绍深度学习环境搭建,并跑通SFA3D。由于本机第一次搭建环境,这里先全部手动搭建,实际上在用Ananconda创建了python环境后,可以直接下载论文代码,论文中有脚本文件可直接一条龙安装,但在本人尝试过后,任然存在问题,下面记录了安装的问题。

二、硬件配置

机子:拯救者R9000P   R7 5800H+3070

系统:ubuntu20.04LTS 

开源代码:GitHub - maudzung/SFA3D: Super Fast and Accurate 3D Object Detection based on 3D LiDAR Point Clouds (The PyTorch implementation)

三、开始安装

1. 安装Anaconda

  根据代码作者提示环境运行在python3.6和PyTorch1.5版本下:

 

   考虑到不同的python和PyTorch版本要求严格,为了防止出错反复重装环境的情况下,要先安装Anaconda来管理多版本python并存以及各种第三方包安装的问题。PyTorch暂且理解为一个python功能包,跟随着python的环境。

    PyTorc介绍:pytorch简介_bestrivern的博客-CSDN博客_pytorch是什么

Anaconda的Linux版本官网地址
https://www.anaconda.com/products/individual
如果下载失败可以使用清华的镜像,进行下载
https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?C=M&O=A

   

输入 bash Anaconda3-2021.05-Linux-x86_64.sh 

对下载好的文件进行安装,安装过程一直按回车和yes

安装完成后在bashrc中添加默认的安装路径,然后source一下

export PATH="/home/jiusan/anaconda3/bin:$PATH"
source ~/.bashrc

如果你在一个桌面系统上安装 Anaconda,在终端输入anaconda-navigator打开Navigator GUI

如果没有问题就算安装好了。

1.2 升级Anaconda和卸载Anaconda

还没实现过,可以参考如何在 Ubuntu 20.04 上安装 Anaconda - 云+社区 - 腾讯云

2.安装CUDA和cuDNN

安装完 Anaconda 后我们先不急搭建python环境,先安装与环境无关的CUDA驱动

CUDA是用于GPU加速运算的驱动和环境没有什么关系,cuDNN是由于支持显卡对深度学习网络的加速计算。

 最新版本的CUDA

CUDA Toolkit 11.4 Update 2 Downloads | NVIDIA Developer

        但建议直接安装CUDA10.1和cuDNN

CUDA10.1安装 参考:https://blog.csdn.net/feng98ren/article/details/108895582

安装完成后使用 nvidia-smi 或 nvcc -V查看cuda的版本,以后者为准

2.2CUDA降级

        最开始在按照官方的推荐下安装了CUDA11.3,但是在代码运行上报了许多错误,当时了避免麻烦,选择退回到10.1版本。

        参考:https://blog.csdn.net/feng98ren/article/details/108895582

三  安装Pytorch(版本要和cuda对应)

安装好上面的环境之后接下来我们要先新建一个python的环境

3.1 使用Anoconda新建环境

conda --version 获取版本号       

conda info -e 查看当前一共有什么环境

conda create --name your_env_name python=3.7 创建环境并制定python版本(创建新环境的时候 要推出虚拟环境conda deactivate)

source activate 激活虚拟环境

conda activate your_env_name 进入选定的环境

如果每次打开新的终端都会进入base环境,这个可以在.bashrc中修改

3.2 进入环境后,在当前环境下安装pytorch

        Pytorch是一个基于python的科学计算包,可以替代numpy(python的数学计算包)发挥GPU的计算能力,并提供了具有高度灵活性和高效率的深度学习实验平台

       这是介绍安装1.5版本的 https://blog.csdn.net/zzq060143/article/details/88042075

        官网:Previous PyTorch Versions | PyTorch

        建议安装1.7版本的。

        (如果已经安装别的版本的torch,可以直接输入这条命令,会自动卸载覆盖之前版本)

        pip install torch==1.7.1+cu110 torchvision==0.8.2+cu110 torchaudio===0.7.2 -f https://download.pytorch.org/whl/torch_stable.html

安装完后 进入Python环境输入:

import torch

print(torch.__version__)

查看安装版本确定是否安装完成

3.3 Anoconda的其他操作

conda deactivate 退出环境

conda remove --name your_env_name --all 删除某个环境

分享环境等参见:Conda常用命令整理_Working. Playing.-CSDN博客_conda命令

四  运行代码

到了这里就可以直接按照论文的步骤来执行,下面是在运行代码中遇到问题和解决方案

---------------------------------------------------------------------------------------------------------------------------------

错误总结:

运行代码时发生错误:ModuleNotFoundError: No module named 'cv2

解决办法:pip install opencv-python

运行代码时发生错误:

cv2.error: OpenCV(4.5.2) :-1: error: (-5:Bad argument) in function 'line'

in drawRotatedBox,Can't parse 'pt1'. Sequence item with index 0 has a wrong type

解决办法:line里面的参数要整形化int()

运行代码时候发生错误:RuntimeError: CUDA error: no kernel image is available for execution on the driver

解决办法:直接升级成1.7的pytorch(对于本次实验,直接安装这个1.7,安装成1.5会报错)

pip install torch==1.7.1+cu110 torchvision==0.8.2+cu110 torchaudio===0.7.2 -f https://download.pytorch.org/whl/torch_stable.html

先安装了CUDA11.3然后退回到CUDA10.1,但是nvidia-smi任然显示11.3,在nvcc -V的命令中显示10.1

这是正常的,在大多数情况下,如果nvidia-smi报告的 CUDA 版本在数值上等于或高于 报告的版本,nvcc -V则无需担心。这是 CUDA 中定义的兼容性路径(较新的驱动程序/驱动程序 API 支持“较旧的”CUDA 工具包/运行时 API)。例如,如果nvidia-smi报告 CUDA 10.2 并nvcc -V报告 CUDA 10.1,则通常无需担心。它应该可以正常工作,并不一定意味着您“在打算安装 CUDA 10.1 时实际上安装了 CUDA 10.2”

参见Different CUDA versions shown by nvcc and NVIDIA-smi - Stack Overflow解释

 附上成功的结果:

参考:ubuntu-20.04.1安装Anaconda(图解)_我就吃一口的BLOG-CSDN博客

参考:如何在 Ubuntu 20.04 上安装 Anaconda - 云+社区 - 腾讯云

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值