跳转至

环境安装

安装opencv4.5和opencv-contrib-4.5

查看本机opencv版本

opencv_version

安装ros noetic自带了opencv4.2.0,需要源码安装opecv4.5.0

安装依赖项

sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libdc1394-22-dev build-essential mlocate

sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"

sudo apt update

sudo apt install libjasper1 libjasper-dev

下载opencv4.5

cd ~

wget -O opencv.zip https://github.com/opencv/opencv/archive/4.5.0.zip

wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.5.0.zip

unzip opencv.zip

unzip opencv_contrib.zip

mv opencv-4.5.0 opencv

mv opencv_contrib-4.5.0 opencv_contrib

mv opencv_contrib opencv

编译

cd ~/opencv && mkdir build && cd build

cmake ..

sudo make 

sudo make install

将opencv库添加到系统路径

sudo vim /etc/ld.so.conf.d/opencv.conf 

# 添加以下内容保存退出

/usr/local/lib

使配置路径生效

sudo ldconfig

配置bash

sudo vim /etc/bash.bashrc 

# 添加以下内容在文本末尾后保存退出
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig  
export PKG_CONFIG_PATH  

使配置生效

source /etc/bash.bashrc 

更新配置

sudo updatedb

测试是否安装成功

opencv_version

python3 -c "import cv2; print(cv2.__version__)"

上面两个命令执行结果都是4.5.0说明安装成功

安装依赖包

安装turtlebot3相关依赖包

sudo apt-get install ros-noetic-joy ros-noetic-teleop-twist-joy ros-noetic-teleop-twist-keyboard ros-noetic-laser-proc ros-noetic-rgbd-launch ros-noetic-rosserial-arduino ros-noetic-rosserial-python ros-noetic-rosserial-client ros-noetic-rosserial-msgs ros-noetic-amcl ros-noetic-map-server ros-noetic-move-base ros-noetic-urdf ros-noetic-xacro ros-noetic-compressed-image-transport ros-noetic-rqt* ros-noetic-rviz ros-noetic-gmapping ros-noetic-navigation ros-noetic-interactive-markers ros-noetic-slam-karto ros-noetic-hector-mapping 

配置模型的环境变量

echo "export TURTLEBOT3_MODEL=burger" >> ~/.bashrc
source ~/.bashrc

安装其它依赖

sudo apt install ros-noetic-image-transport ros-noetic-cv-bridge ros-noetic-vision-opencv python3-opencv libopencv-dev ros-noetic-image-proc

工程初始化

# 创建ros工程目录
mkdir -p ~/turtlebot3_ws/src
# 进入目录
cd ~/turtlebot3_ws/src/
# 拷贝下面6个package到src目录
DynamixelSDK
turtlebot3_msgs
turtlebot3
hls_lfcd_lds_driver
turtlebot3_simulations
turtlebot3_autorace_2020
# 进入上一级目录并编译
cd ~/turtlebot3_ws&& catkin_make
# 配置环境变量
echo "source ~/turtlebot3_ws/devel/setup.bash" >> ~/.bashrc
# 使环境变量生效
source .bashrc