IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> ROS——基于Ubuntu18.04和ROS Melodic编译python3的cv_bridge -> 正文阅读

[Python知识库]ROS——基于Ubuntu18.04和ROS Melodic编译python3的cv_bridge

网上所有的资料都是基于catkin工具进行的,而且在编译时会发现只支持opencv3,不支持opencv4,所以无法使用。博主这里使用catkin_make工具成功编译python3的cv_bridge,这篇博客应该是全网唯一一个catkin_make工具编译cv_bridge而且最终运行成功的博客了,也希望能帮到各位小伙伴开发ROS python3的项目!

环境准备

环境

  • Ubuntu18.04
  • python3.6.9
  • ROS Melodic

1.安装环境

sudo apt-get install python-catkin-tools python3-dev python3-catkin-pkg-modules python3-numpy python3-yaml ros-melodic-cv-bridge python3-rospkg-modules
pip3 install rosdep rosinstall catkin_pkg

2.基于python3环境编译cv_bridge

(1)初始化cv_bridge_ws编译工作空间

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

(2)将cv_bridge源码拉取到本地

git clone https://github.com.cnpmjs.org/ros-perception/vision_opencv.git

(3)编译cv_bridge

cd ../
catkin_make install -DPYTHON_EXECUTABLE=/usr/bin/python3

编译报错解决

  • 问题1:
    在这里插入图片描述

解决方法:
1.
查看你的libbost_python*文件(我这里的arm的ubuntu,如果你的是x86,就在/usr/lib/x86-64-linux-gnu这个文件夹)

cd /usr/lib/aarch64-linux-gnu/
ls libboost_python*

在这里插入图片描述
2. 进入报错文件vision_opencv/cv_bridge/CMakeLists.txt,将这里的python37改成python3,然后重新编译即可。
在这里插入图片描述

(4)编译成功

在这里插入图片描述

(5)将编译生成的文件加入环境变量

使我们在使用python3时可以,默认调用:

source /home/nano/workspace/cv_bridge_ws/install/setup.bash --extend

在这里插入图片描述

(6)测试

重新打开一个终端:运行python3

import cv_bridge
from cv_bridge.boost.cv_bridge_boost import getCvType

在这里插入图片描述
import成功说明已经成功编译了基于python3的cv_bridge,现在就可以直接在ROS中编写python3的代码即可,节会自动调用啦!

3.ROS基于python3两个图像处理相关demo示例

(1)Opencv处理demo

(2)深度学习目标检测模型部署demo

参考文章:

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-08-13 11:58:44  更:2021-08-13 11:59:06 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 18:34:47-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码