《视觉SLAM十四讲》第五讲ch5实验错误总结

一、安装OpenCV(书P108页)

        1、安装依赖项:

        按照书中代码安装依赖项时,出现三个库报错。查阅资料后,将正确的安装步骤整理如下:

        打开终端依次输入:

sudo apt-get install build-essential

sudo apt-get install libgtk2.0-dev

sudo apt-get install libvtk6-dev

sudo apt-get install libjpeg-dev

sudo apt-get install libtiff5-dev

sudo apt-get install libjasper-dev

        此处报错:errorE: unable to locate libjasper-dev。

        大概原因是缺少libjasper-dev的一个依赖包。解决方法:

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

sudo apt update

sudo apt install libjasper1 libjasper-dev

        继续安装依赖项:

sudo apt-get install libopenexr-dev

sudo apt-get install libtbb-dev

2、安装OpenCV库

        3.1.0版本的OpenCV我安装不上,转而下载3.4.15版本。点击sources下载压缩包:

         点开相应文件夹。解压:

unzip opencv-3.4.15.zip

        编译安装:

cd opencv-3.4.15

mkdir build && cd build

cmake ..

make -j4

sudo make install

二、操作OpenCV图像(P109)

        修改imageBasics下的CMakeLists文件代码:

# 添加C++标准支持
set( CMAKE_CXX_FLAGS "-std=c++11")

project(imageBasics)

# 寻找OpenCV库
find_package( OpenCV REQUIRED)

# 添加头文件
include_directories(${OpenCV_INCLUDE_DIRS})

add_executable(imageBasics imageBasics.cpp)
# 链接OpenCV库
target_link_libraries(imageBasics ${OpenCV_LIBS})

add_executable(undistortImage undistortImage.cpp)
# 链接OpenCV库
target_link_libraries(undistortImage ${OpenCV_LIBS})

        make完成后,在build终端里执行命令

./imageBasics  ../ubuntu.png

        若上述相对文件路径执行失败,使用绝对路径,红色字体替换成ubuntu.png的绝对路径(可通过属性进行复制).

./imageBasics home/......../ubuntu.png

        运行成功:

三、图像去畸变(P112)

        在文件undistortImage.cpp中将文件路径修改正确即可:

string image_file = "/home/andyvictory/slambook2/ch5/imageBasics/distorted.png";   // 请确保路径正确

四、3D视觉(P113)

        1、双目视觉

        在文件stereoVision.cpp中将文件路径修改正确:(应该是在代码11-13行)

// 文件路径

string left_file = "/home/andyvictory/slambook2/ch5/stereo/left.png";

string right_file = "/home/andyvictory/slambook2/ch5/stereo/right.png";

        修改CMakeLists文件如下:

find_package(Pangolin REQUIRED)

#链接OpenCV库
find_package(OpenCV REQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})

add_executable(stereoVision stereoVision.cpp)
target_link_libraries(stereoVision ${OpenCV_LIBS} ${Pangolin_LIBRARIES})

        编译运行即可。

        如若出现报错:

Failed to load module "canberra-gtk-module"

        在终端输入:

sudo apt-get install libcanberra-gtk-module

        2、RGB-D视觉

        修改CMakeLists文件如下:

find_package(Sophus REQUIRED)
include_directories(${Sophus_INCLUDE_DIRS})

find_package( OpenCV 3.4.16 REQUIRED )  //这一步根据自己的版本来写
find_package(Pangolin REQUIRED)

add_executable(joinMap joinMap.cpp)
target_link_libraries(joinMap ${OpenCV_LIBS} ${Pangolin_LIBRARIES} ${Sophus_INCLUDE_DIRS} fmt)

        这一步主要是添加寻找OpenCV库和链接fmt库。

        修改joinMap.cpp文件,修改21行(若行号不对请自行寻找)为:

ifstream fin("../pose.txt");

        修改28行(若行号不对请自行寻找)为:

boost::format fmt("../%s/%d.%s");   //图像文件格式

        编译运行成功:

  • 6
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
视觉SLAM十四》的第七章主要介绍了ORB特征的手写实现。ORB特征是一种基于FAST角点检测和BRIEF描述子的特征提取方法,它在计算效率和鲁棒性上表现出色,被广泛应用于视觉SLAM中。 第七章还介绍了ORB特征的主要步骤,包括角点检测、特征描述子计算和特征匹配。在角点检测中,通过FAST算法检测图像中的角点位置。然后,利用BRIEF描述子计算对应角点位置的特征描述子。最后,通过特征匹配算法将当前帧的ORB特征与地图中的ORB特征进行匹配,从而实现相机的位姿估计和地图构建。 除了手写ORB特征的实现,第七章还介绍了ORB-SLAM系统的整体框架和关键技术。该系统结合了特征点法和直接法,实现了在无GPS和IMU信息的情况下进行实时的视觉SLAM。通过利用ORB特征进行初始化、追踪和建图,ORB-SLAM系统在室内和室外环境下都取得了良好的效果。 总而言之,视觉SLAM的第七章《视觉SLAM十四》介绍了手写ORB特征的实现方法,并介绍了ORB-SLAM系统的整体框架和关键技术。这些内容对于理解和应用视觉SLAM具有重要意义。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [视觉SLAM十四——ch7](https://blog.csdn.net/weixin_58021155/article/details/123496372)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [《视觉slam十四》学习笔记——ch7实践部分 比较opencv库下的ORB特征的提取和手写ORB的区别](https://blog.csdn.net/weixin_70026476/article/details/127415318)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AndyVictory

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值