Ubuntu18.04配置python2和python3的ROS,并支持深度学习

一、系统版本

Ubuntu 18.04 ;ROS-melodic ;Miniconda;python3通过conda创建的python3.6

二、ROS安装

若是曾安装过ROS,现在使用无法更新源可以参考:ROS upgrade失败

若未安装过ROS可以参考官网在终端中输入指令(Ctrl+Alt+T)安装:ROS-melodic安装

三、Miniconda安装

直接在浏览器进入Miniconda官网选择Linux系统,在ubuntu终端输入指令即可安装。

Miniconda的常用操作:

1.查看安装包

conda list

2.查看已创建的虚拟环境

conda env list 
conda info -e

3.检查并更新conda

conda update conda

4.创建python的虚拟环境

conda create -n your_env_name(虚拟环境名称) python=x.x(python版本号,常用3.6,3.7,3.8)

直接回车或者输入y再回车均可

出现上述即可创建完成,红色框框指令是进入ros_pytorch环境,绿色框框是退出环境指令

先进入虚拟环境

5.进出虚拟环境

进入(激活):conda activate your_env_name
退出:conda deactivate

6.conda安装包,若是包安装慢参考此链接

conda install XXX(包名)

pip install xxx(包名)

7.删除conda创建的虚拟环境

conda remove -n your_env_name(虚拟环境名称) --all

8.删除某个包

conda remove --name $your_env_name(包名)  $package_name(包名)

9.更换源,直接复制在终端粘贴即可

conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/menpo/
conda config --set show_channel_urls yes

10.恢复conda默认源

conda config --remove-key channels

回车后不会有内容输出

11.查看更换源

conda config --show

回车后会输出很多信息,只有这部分是我们加载进conda的源

四、配置conda中python3的ROS

本文使用conda去管理Python3的ROS,这样即不影响ubuntu原生的python2的ROS,根据不同调整环境中的包

1.创建conda的虚拟环境

conda create -n ros_pytorch python=3.6

2.激活环境

conda activate ros_pytorch

3.更新pip版本

pip install --upgrade pip

直接更新慢也可以上述链接

4.由于pytorch和opencv等包安装因网络、源等环境问题可能会出现各种奇怪小问题,因此先安装pytorch,opencv等库,确保了兼容深度学习后再安装编译ROS相关内容(本文以CPU环境为例)

(1)作者尝试过在Pytorch官网中复制相关安装指令安装pytorch,但显示torch-1.10.2等版本无法安装,并安装了较低的版本,无法正常兼容深度学习(YoloV5)等模型开发因此我在torch库中先下载了预想的1.10.2+cpu的torch版本以及兼容torch的torchvision,传入到ubuntu中利用一下命令安装即可(在conda创建的虚拟环境下安装)

理论使用pip install xxx即可安装,但是安装时会安装其他包,因此给安装是附上我们的下载源,当需要下载时根据提供的源下载,提高效率

安装命令

pip install -i https://mirrors.aliyun.com/pypi/simple/ torchvision-0.11.3+cpu-cp36-cp36m-linux_x86_64.whl torch-1.10.2+cpu-cp36-cp36m-linux_x86_64.whl

成功安装

(2)安装opencv

由于opencv在python库中提供,因此安装需要使用pip安装,同时安装名称为opencv-python,有时候可能会遇到成功下载电视build很久的,此时可以安装低一点版本或者高一点版本都没问题的

pip install -i https://mirrors.aliyun.com/pypi/simple/ opencv-python==4.5.4.60

(3)在conda环境下安装ROS相关包

pip install -i https://mirrors.aliyun.com/pypi/simple/ numpy pyyaml rosdep catkin_pkg rospkg rosinstall 

(4)因为深度学习是调用ubuntu摄像头数据,因此,需要配置ROS图像转换等包,同时不能干扰ubuntu原生python的ROS

首先创建一个新的工作空间并初始化

mkdir -p catkin_ws_c/src && cd catkin_ws_c/src
catkin_init_workspace

拉取vision_opencv包,若是无法直接拉取可预先下载好在放入Ubuntu的工作空间src目录下,文件夹命名为vision_opencv

git clone https://gitee.com/irvingao/vision_opencv.git

输入下述指令查看python路径,我们选择的是conda目录下的,我们用到路径是在conda下末尾为python3.6m和python

whereis python

返回catkin_ws_C目录下

cd ..

配置编译catkin_ws_c工作空间的文件

export CPLUS_INCLUDE_PATH=/home/cml/miniconda3/envs/ros_pytorch/bin/python3.6m(路径一定要改成自己的python3.7m路径)

使用指定编译器编译工作空间

catkin_make install -DCMAKE_BUILD_TYPE=Release -DSETUPTOOLS_DEB_LAYOUT=OFF -DPYTHON_EXECUTABLE=/home/cml/miniconda3/envs/ros_pytorch/bin/python (python地址一样要改成自己安装的地址)

编译后没有警告,没有报错,那么我们的工作空间就编译成功了!!!

同时我们也可以验证下,直接在ros_pytorch环境下输入python,再导入相关头文件若是没有报错就是成功了,后续

python
import cv_bridge
from cv_bridge.boost.cv_bridge_boost import getCvType

然后为了方便使用该工作空间将配置文件写到.bashrc中,

sudo gedit ~/.bashrc
source /home/cml/catkin_ws_c/install/setup.bash --extend

最后运行下source

source ~/.bashrc

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值