【Jetson Nano学习笔记】4. python 3编译bridge

目录

  • 使用python3编译boost
  • console_bridge
  • python3+bridge

平台:Jetson Nano
系统版本:4.6.1


参考资料:

How to setup ROS with Python 3
Unable to use cv_bridge with ROS Kinetic and Python3
CMake Error :Could not find a package configuration file provided by “cv_bridge“解决办法 —— いしょ
Boost Python 的安装配置以及示例 (支持python3.x) —— zp0int
关于cmake找不到库的问题 —— Shadow_Yan
vision_opencv
ROS——在Ubuntu18.04下基于ROS Melodic编译python3的cv_bridge —— Irving.Gao

使用python3编译boost

回到安装boost的文件夹

cd boost_1_78_0# sudo find / -name "python3.6m" # 寻找你系统下的 python3.6m
# which python3 # 寻找你系统下 python3 的安装路径
echo "using mpi ;
using gcc :  : g++ ;
using python : 3.6 : /usr/bin/python3 : /usr/include/python3.6m : /usr/local/lib ;" > ~/user-config.jam./bootstrap.sh --with-python=/usr/bin/python3 --with-python-version=3.6 --with-python-root=/usr/local/lib/python3.6 --prefix=/usr/local
sudo ./b2 install -a --with=all
sudo ldconfig

console_bridge

git clone https://github.com/ros/console_bridge
cd console_bridge
mkdir -p build && cd build
cmake ..
sudo make install

python3+bridge

sudo apt-get install python3-pip python3-yaml
sudo pip3 install rospkg catkin_pkg
sudo apt-get install python-catkin-tools python3-dev python3-numpy
mkdir -p ~/catkin_build_ws && cd ~/catkin_build_wscatkin clean
catkin config -DPYTHON_EXECUTABLE=/usr/bin/python3 -DPYTHON_INCLUDE_DIR=/usr/include/python3.6m -DPYTHON_LIBRARY=/usr/lib/aarch64-linux-gnu/libpython3.6m.socatkin config --install
mkdir src
cd src
git clone -b melodic https://gitee.com/vencen/vision_opencv.git
apt-cache show ros-melodic-cv-bridge | grep Version

在git repo中签出正确的版本。在我们的例子中是1.13.0

cd vision_opencv/
git checkout 1.13.0
cd ~/catkin_build_ws
nano src/vision_opencv/cv_bridge/CMakeLists.txt

find_package(catkin REQUIRED COMPONENTS rosconsole sensor_msgs)
前添加set(rosconsole_DIR /opt/ros/melodic/share/rosconsole/cmake)和,这些路径由sudo find / -name "rosconsole"sudo find / -name "sensor_msgs"找到。
在这里插入图片描述

catkin build cv_bridge
source install/setup.bash --extend

在这里插入图片描述
添加编译成功的软件环境变量

nano ~/.bashrc 

底部添加:source ~/catkin_build_ws/install/setup.bash --extend

. ~/.bashrc 

更新.bashrc

测试

新开一个终端:

python3
import cv_bridge
from cv_bridge.boost.cv_bridge_boost import getCvTypecv_bridge
getCvType

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/400016.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python作用域

Python是静态作用域,也就是说在Python中,变量的作用域源于它在代码中的位置。与C语言有一些类似,与C语言比起来还有一些需要注意的地方。 现在的Python支持4种作用域,"LEGB" L(local):局部作用域&#xff1b…

解决flask端口被占用的问题

2019.04.11 实测: 只要停止程序,再运行,就可以了 问题提示:socket.error:[Errno 48] Address already in use 在编辑flask代码时,如果没有关闭flask的程序,默认的5000端口一直被占用。 再次运行的时候&am…

使用模板来解决接口继承问题

一.定义2个有继承关系的接口 struct IA {virtual void Test1()0; };struct IB:public IA {virtual void Test2()0; };二.定义2个类来实现 class A:public IA {virtual void Test1() {} };class B:public IB { public:virtual void Test2() {} };类B将无法使用,必须重新实现IA的…

python time模块详解

2019独角兽企业重金招聘Python工程师标准>>> python time模块详解 分类: python2009-03-28 23:35 89831人阅读 评论(9) 收藏 举报 pythonstructstringdstimportdate python 的内嵌time模板翻译及说明 一、简介 time模块提供各种操作时间的函数 说明&am…

单例写法 转

如何正确地写出单例模式 1.懒汉式,线程不安全 这段代码简单明了,而且使用了懒加载模式,但是却存在致命的问题。当有多个线程并行调用 getInstance() 的时候,就会创建多个实例。也就是说在多线程下不能正常工作 public class Singl…

【RK3399Pro学习笔记】十九、在ROS中点亮LED灯

目录创建ROS工作空间创建ROS功能包CSysFs方式(需root)源文件blink.cppgpiolib.cpp头文件gpiolib.hCMakeLists.txt运行代码调用shell命令方式(无需root)源文件blink.cppCMakeLists.txt运行代码平台:华硕 Thinker Edge R…

opencv中的Mat类型

Mat类型主要是跟matlab中的数据类型一样。故用起来很方便。 Mat最大的优势跟STL很相似,都是对内存进行动态的管理,不需要之前用户手动的管理内存,对于一些大型的开发,有时候投入的lpImage内存管理的时间甚至比关注算法实现的时间还…

C/C++与内存相关的函数

C语言的标准函数库与内存管理有关的函数从功能上分为两类:一类是系统对内存操作的函数,例如,读内存的函数、写内存函数,如从指定地址向内存写一个字节,一个字或向内存读一个字节或一个字操作;另一类是供用户动态使用内存的函数,例如,分配C程序一块存储区,并将该区清零函数; 1.动…

flask jinja2 如何遍历新闻列表

NEWS_DICT [{"newstitle": "新闻1", "url": "newsurl1"},{"newstitle": "新闻2", "url": "newsurl2"},{"newstitle": "新闻3", "url": "newsurl3"…

hihocoder [Offer收割]编程练习赛24

比赛https://hihocoder.com/contest/offers24/problems 应该能拿到个鼠标垫 舒服了 这个oj体验好差,每次都要先因为选错语言CE一发,而且刷新之后还是默认GCC A ⼩Hi的钟表 算秒数,算角度,注意180以内,所以大于180之后拿…

LaTex bib引用知网论文NoteExpress格式文献 —— cnki2bib

目录先决条件安装使用最后…棘手的用法简单用法获取NoteExpress格式到剪贴板将剪贴板内容转换在LaTex中使用调用格式效果TeXstudio 4.2.3 Windows 10 20H2 以下内容引自Python cnki2bib包介绍 先决条件 Python3 安装 pip install cnki2bibWinR打开cmd使用以上命令安装 使…

测试配置yum仓库的http镜像

测试配置yum仓库的http镜像一、基础环境 1、在tvm-base的基础上,复制一个镜像为tvm-yum来测试。 2、网络: eth0:host-only(用于虚拟内网,手动固定IP,这样从宿主机可以直接连接到这个vm) eth1&am…

24. 设计原则

总的来说是高内聚低耦合,内聚是把变化点进行封装,耦合还是要有的,只是要尽量少,不同内聚点的联系方式有两种,一种就是继承,一种就是组合。组合又分为基于接口组合还是基于类组合,基于接口就可以…

js中 json详解

var aa {name:"zoumm",age:23};var bb JSON.stringify(aa);console.log(bb); //打印出{"name":"zoumm","age":23} json的语法可以表示以下三种类型的值。 1、简单值:可以在json中表示字符串、数值、布尔和null。 2、对…

纸张大小

A0到A10的纸张尺寸表 纸的型号高(mm)x宽(mm)毫米高(mm)x宽(mm)英寸4A02378 x 1682 mm93.6 x 66.2 in2A01682 x 1189 mm66.2 x 46.8 inA01189 x 841 mm46.8 x 33.1 inA1841 x 594 mm33.1 x 23.4 inA2594 x 420 mm23.4 x 16.5 inA3420 x 297 mm16.5 x 11.7…

试用合肥工业大学学位论文 LaTeX 模板(HFUT_Thesis)

目录编辑器模板下载TeXstudio 4.2.3 Windows 10 20H2 编辑器 编辑器的下载和安装参考Latex下载 —— 倔强菜鸟(转载) 模板下载 见合肥工业大学硕士毕业论文的LaTex模板? 感谢大佬~ 大佬的项目地址:https://github.com/HFUTTUG/HFUT_Thesis/releases 下载下来后…

[CareerCup] 1.1 Unique Characters of a String 字符串中不同的字符

1.1 Implement an algorithm to determine if a string has all unique characters. What if you cannot use additional data structure? 这道题让我们判断一个字符串中是否有重复的字符,要求不用特殊的数据结构,这里应该是指哈希表之类的不让用。像普…

怎么查询局域网内全部电脑IP和mac地址..

在局域网内查询在线主机的IP一般比较简单,但局域网内全部电脑的IP怎么才能够查到呢?查询到IP后我还要知道对方的一些详细信息(如MAC地址、电脑名称等)该怎么查询呢??? 工具/原料 Windows 网络 方…

python flask 通过ajax向后台传递数组参数

https://blog.csdn.net/m0_38061194/article/details/78851152 ajax 像后台传递参数,一般是字典的形式传递,但是如果字典的value的值是一个数组的话,通过request.form 获取得到的结果是 None。这是就需要把数组对象转化为json字符串&#xf…

JS,JQuery杂谈

JS返回页面: JS返回前一个页面,经常看到有人用window.history.go(-1)这种方法 这种放的确可以返回,也仅仅只是返回,返回的页面信息却没有刷新。也有人用windows.history.back(),但是经常返回的时候会丢失页面&#xf…