目前实验室做机器人,主要分三个方向,定位导航,建图,图像识别,之前做的也是做了下Qt上位机,后面又弄红外识别,因为这学期上课也没怎么花时间在项目,然后导师让我们确定一个方向来,便于以后发论文什么。上个礼拜看了些论文,感觉视觉slam方向还可以,图像识别毕竟不是计算机科班,可能真正要弄也很难有成果,slam也是最近才研究起来,也挺适合我们搞,需要一些高数、c++、ros等知识,学的东西也挺多的,但这样才能体现研究生的价值,不然本科生也能做,然后确定了这个研究方向,希望好好研究个一两年有所成就,研三一个师兄搞的是激光slam,找的工作待遇也不错,前景还是可以的。然后这个礼拜就主要安装了ubuntu、kde,看十四讲书,运行里面的程序,也遇到不少问题,所以就记录下来,下面这些遇到的问题也是自己写的记录,粘贴过来可能不适合大家看,不过希望有所帮助吧,凑合着看,后面希望能更新,像高博 @半闲居士 那样开个博客,哈哈。
 
 
2018年1.18 1.高翔P28 g++ helloSLAM.CPP 遇到问题:g++ error:没有那个文件目录 解决:需找到文件目录 cd /home/cy/slambok/ch2/ (文件目录有空格需跳 用tab? cmake . 编译 make (%有问题 ./helloSLAM 【g++就 ./a.out
 
 
2.30页要删除之前生成的中间文件,即删除CMakelists.txt和helloSLAM.cpp以外的所有文件。否则make时会报错
3.31页增加库文件,先前第2步建的build要保存,因为cmakelists.txt有之前的构建,我的错误是新建libHelloSLAM.CPP时cpp竟然是大写,然后make时报错makefile找不到,弄了半天才发现这个错误。
4从编程的角度讲,通常有静态库文件和动态库文件。windows静态库文件就是.lib文件,动态库文件就是.dll文件。内容一样,都是将函数封装在一起编译后供自己或他人调用。好处在于编译后的库文件看不到源代码,可保密;同时不会因为不小心修改了函数而出问题,便于维护。 两种库的区别在于静态库被调用时直接加载到内存,而动态库再是在需要的时候加载到内存,不使用的时候再从内存释放。
unix系统的静态库文件和动态库文件后缀分别是.a和.so
5.main函数的源文件生车可执行文件 其他源文件编译成库文件。
6.有个疑问就是,书上调用的库文件printHello最终输出,但是之前的helloSLAM.cpp的源文件执行的却没有? 后面试了下在配置启动器更改配置文件为helloslam,则输出helloslam.cpp的源程序,增加两个配置不知为什么还是只执行usehello.难道一次只能执行一个执行文件?
7.按debug模式竟然闪现,不能调试。 解决:问了师兄解决了,原来是配置启动器设置的调试断点不是当前启动配置,然后会出现闪现。
8.齐次坐标 参考:http://blog.csdn.net/janestar/article/details/44244849
 
2018年1月19日
1.欧拉角https://www.zhihu.com/question/47736315
2.58页useGeometry程序,书上源程序命名useGeometry.cpp,然后我自己编写源程序名是按的书上的,CMakelists按高的源代码,但是高给的源代码命名是eigenGeoetry.cpp,CMakeLists.txt中add_executable( eigenGeometry eigenGeometry.cpp )然后导致我在终端时cmake出现找不到源程序的错误eigenGeoetry.cpp,因为我命名的是useGeometry.cpp。后面MAKE完总按./useGeometry 然后出现“没有那个文件或目录”错误
解决:add_executable( eigenGeometry eigenGeometry.cpp )改为add_executable( useGeometry useGeometry.cpp )。也就是前面那个程序名可以自己改,但是后面终端执行时./useGeometry与程序名一致,后卖弄那个需与命名的源程序名一致。

视觉slam学习之路(一)看高翔十四讲所遇到的问题的更多相关文章

  1. 我的学习之路_第三十四章_jsp

    jsp 在只有servlet时,输出页面内容比较麻烦(成本高,java代码中输出HTML标签),所以需要一种技术,主要是HTML页面的代码(HTML,css,js),可以嵌入java代码,来实现动态页 ...

  2. 高翔《视觉SLAM十四讲》从理论到实践

    目录 第1讲 前言:本书讲什么:如何使用本书: 第2讲 初始SLAM:引子-小萝卜的例子:经典视觉SLAM框架:SLAM问题的数学表述:实践-编程基础: 第3讲 三维空间刚体运动 旋转矩阵:实践-Ei ...

  3. 《SLAM十四讲》个人学习知识点梳理

    0.引言 从六月末到八月初大概一个月时间一直在啃SLAM十四讲[1]这本书,这本书把SLAM中涉及的基本知识点都涵盖了,所以在这里做一个复习,对这本书自己学到的东西做一个梳理. 书本地址:http:/ ...

  4. 高博-《视觉SLAM十四讲》

    0 讲座 (1)SLAM定义 对比雷达传感器和视觉传感器的优缺点(主要介绍视觉SLAM) 单目:不知道尺度信息 双目:知道尺度信息,但测量范围根据预定的基线相关 RGBD:知道深度信息,但是深度信息对 ...

  5. 《视觉SLAM十四讲》第2讲

    目录 一 视觉SLAM中的传感器 二 经典视觉SLAM框架 三 SLAM问题的数学表述 注:原创不易,转载请务必注明原作者和出处,感谢支持! 本讲主要内容: (1) 视觉SLAM中的传感器 (2) 经 ...

  6. 视觉slam十四讲第七章课后习题6

    版权声明:本文为博主原创文章,转载请注明出处: http://www.cnblogs.com/newneul/p/8545450.html 6.在PnP优化中,将第一个相机的观测也考虑进来,程序应如何 ...

  7. 视觉slam十四讲第七章课后习题7

    版权声明:本文为博主原创文章,转载请注明出处:http://www.cnblogs.com/newneul/p/8544369.html  7.题目要求:在ICP程序中,将空间点也作为优化变量考虑进来 ...

  8. 浅读《视觉SLAM十四讲:从理论到实践》--操作1--初识SLAM

    下载<视觉SLAM十四讲:从理论到实践>源码:https://github.com/gaoxiang12/slambook 第二讲:初识SLAM 2.4.2 Hello SLAM(书本P2 ...

  9. 《视觉SLAM十四讲》第1讲

    目录 一 视觉SLAM 注:原创不易,转载请务必注明原作者和出处,感谢支持! 一 视觉SLAM 什么是视觉SLAM? SLAM是Simultaneous Localization and Mappin ...

随机推荐

  1. Git详细教程(2)---多人协作开发

    Git可以完成两件事情: 1. 版本控制 2.多人协作开发 如今的项目,规模越来越大,功能越来越多,需要有一个团队进行开发. 如果有多个开发人员共同开发一个项目,如何进行协作的呢. Git提供了一个非 ...

  2. Django+xadmin打造在线教育平台(八)

    十一.用户信息 11.1.个人信息展示 (1)新建‘usercenter-bae.html’当母板 {% load staticfiles %} <!DOCTYPE html> <h ...

  3. python全栈学习--day9(函数初始)

    Python 函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也 ...

  4. Docker深入浅出系列教程——Docker初体验

    我是张飞洪,钻进浩瀚代码,十年有余,人不堪其累,吾不改其乐.我喜欢把玩代码,琢磨词句!代码算法让我穿透规律,文章摘句让我洞察人情.如果你觉得和我的看法不一样,请关注我的头条号,那我们一定合得来. Do ...

  5. drbd(四):drbd多节点(drbd9)

    1.drbd多节点简介 在drbd9以前,drbd一直只能配置两个节点,要么是primary/secondary,要么是primary/primary.虽然在这些版本上也能配置第三个节点实现三路节点的 ...

  6. C语言第三周作业---单层循环

    一.PTA实验作业 题目1 1.实验代码 int N = 0,i; char sex; float a[9], height; scanf("%d\n", &N); for ...

  7. beta版本复审

    C++team复审 小组 优点 缺点 打分 MyGod小组 MyGod团队开发了一个让武汉大学的学生能够方便地了解校内二手物品交易信息,并进行相应的交易的安卓app.出发点不错,有创新点.使用了一下他 ...

  8. Session的过期时间如何计算?

    在生成session的时候,会设置一个session过期时间.session的过期时间并不是从生成session对象开始计算,超过过期时间,session就失效了. 而是每当一个浏览器请求,sessi ...

  9. JAVA_SE基础——45.基本类型变量.值交换[独家深入解析]

    需求:定义一个函数交换两个基本类型变量的值. 相信看过我前面的文章的同学都应该看的懂我以下的代码: class Demo2 { public static void main(String[] arg ...

  10. Python内置函数(44)——len

    英文文档: len(s) Return the length (the number of items) of an object. The argument may be a sequence (s ...