ORB_SLAM3结合YOLO实现特征点标记和目标空间定位 | 1环境配置

前言

由于YOLO的源码采用Python编写,ORB_SLAM3则采用C++编写,要将YOLO与SLAM结合,常见的方法有以下三种:

1 先跑一遍YOLO程序,获得带有检测目标边界框的语义信息,然后再运行ORB_SLAM3结合边界框的语义信息去标记特征点,但这样做实际意义不大,YOLO和SLAM异步运行;

2 使用UNIX域Socket实现Python和C++通信,该协议仅需要经过网络协议栈,不需要打包拆包、计算校验和、维护序列号应答,可以实现较高的通讯效率;

yolov5和orbslam2结合的实现方法 [使用UNIX域socket实现python和c++通信]

3 使用C++去部署YOLO,在ORB_SLAM3中单独写一个类用于实现YOLO目标检测,笔者使用libtorch部署YOLO。

1 环境配置

笔者使用Ubuntu20.04,内核版本如下(使用uname -a查看):

Linux z 5.15.0-101-generic #111~20.04.1-Ubuntu SMP Mon Mar 11 15:44:43 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

建议包安装的版本与下面列出的一致,已经过验证可以完美运行。

1.1 安装ROS Noetic

建议使用ROS去配置基础环境,其可以帮助我们解决许多依赖的问题,具体的安装方法可以参考笔者的这篇文章,非常简单!

Ubuntu20.04 安装 ROS Noetic

1.2 安装OpenCV 4.2.0

下载:OpenCV 4.2.0
下载完成后解压,进入./opencv-4.2.0目录执行:

mkdir build && cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
make -j4 && sudo make install	

安装过程中如果出现IPPICV: Download: ippicv_2019_lnx_intel64_general_20180723.tgz报错或卡住的情况,可以参考笔者的这篇文章解决:

解决OpenCV4.2.0安装时出现IPPICV: Download: ippicv_2019_lnx_intel64_general_20180723.tgz报错或卡住

1.3 安装Eigen 3.3.9

下载:eigen 3.3.9
下载完成后解压,进入./eigen-3.3.9目录执行:

mkdir build && cd build && cmake .. && sudo make install

1.4 安装Pangolin 0.5

下载:Pangolin 0.5
直接安装会出现错误,需要修改部分的代码,具体的安装过程可以参考笔者的这篇文章:

ORB_SLAM3结合YOLO实现特征点标记和目标空间定位 | 1.4 安装Pangolin0.5

1.5 安装LibTorch 1.7.0 cpu

下载:LibTorch 1.7.0 cpu
不需要安装,直接在CMakeLists.txt中声明路径即可。

2 代码分析

ORB_SLAM3结合YOLO实现特征点标记和目标空间定位 | 2 代码分析

3 C++部署YOLO

ORB_SLAM3结合YOLO实现特征点标记和目标空间定位 | 3 C++部署YOLO

4 测试

ORB_SLAM3结合YOLO实现特征点标记和目标空间定位 | 4 测试

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值