ROS ubuntu18.04 cv_bridge python3配置 opencv4.0.0

一、cv_bridge官方文档

http://wiki.ros.org/cv_bridge/Tutorials/ConvertingBetweenROSImagesAndOpenCVImagesPython
调用方式:

from cv_bridge import CvBridge
bridge = CvBridge()
# opencv图像转换为sensor_msgs/Image图像
image_message = bridge.cv2_to_imgmsg(cv_image, encoding="bgr8")
# 把sensor_msgs/Image图像转换为opencv图像
cv_image = bridge.imgmsg_to_cv2(image_message, desired_encoding='bgr8')

二、python3.6配置

2.1 依赖包安装

sudo apt-get install python-catkin-tools python3-dev python3-catkin-pkg-modules python3-numpy python3-yaml ros-melodic-cv-bridge

2.2 创建工作空间

cd ~ && mkdir cv_bridge_ws

2.3 初始化工作空间

注:出现的红色警告不用管

cd cv_bridge_ws && catkin init

2.4 设置cmake编译选项

# 设置cmake变量(以python3.6为例,注意x86_64_linux-gnu文件夹,如果是aarch64架构它的名字应该是aarch64-linux-gnu)
catkin config -DPYTHON_EXECUTABLE=/usr/bin/python3 -DPYTHON_INCLUDE_DIR=/usr/include/python3.6m -DPYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.6m.so

注:按照自己的路径设置依赖

# 1
python3
>>>import sys
>>>print(sys.executable)   #输出/usr/bin/python3
>>>print(sys.path)  #输出各种路径
>>>quit()
# 2 
python3 -config --includes  #输出所需路径 -I/usr/include/python3.6m -I/usr/include/python3.6m 

2.5 把所有编译好的包放在工作空间的install文件夹下(暂时没有该文件)

catkin config --install

2.6 下载安装包cv_bridge

cd cv_bridge_ws 
git clone https://github.com/ros-perception/vision_opencv.git src/vision_opencv

2.7 查找cv_bridge版本

apt-cache show ros-melodic-cv-bridge | grep Version

2.8 在git repo中签出版本(1.13.0)

cd src/vision_opencv/
git checkout 1.13.0
cd ../../

2.9 编译准备

要把src/vision_opencv/cv_bridge/CMakeLists.txt中的find_package(Boost REQUIRED python3)改为find_package(Boost REQUIRED python-py36)

3.0 编译

catkin build

3.1 将功能包加到扩展环境中

source install/setup.bash --extend
sudo gedit ~/.bashrc
#在末尾加上
source ~/cv_bridge_ws/install/setup.bash --extend

参考链接:https://blog.csdn.net/qq_44876051/article/details/112370423
https://blog.csdn.net/weixin_43434136/article/details/112646275#comments_15752476

你可能感兴趣的:(ROS,cv,opencv,python)