一起学ROS之安装ROS(ubuntu+ros+opencv2.4.9+kinect V2 安装教程)
最近本科毕业设计期间做rgbdslam的相关东西,其中在使用kinect进行图像采集过程中用到了ROS系统,在网上查阅了相关资料,但是还是有些差强人意。但最终还是安装成功,其中遇到好多问题,本文将就相关问题进行相关说明。
首先给出几个个人感觉有用的链接:
(1)hitcm的博客:http://www.cnblogs.com/hitcm/p/5118196.html
(2)indigo版本的ROS安装:http://wiki.ros.org/cn/indigo/Installation/Ubuntu
(3)ROS工作空间配置:http://wiki.ros.org/cn/ROS/Tutorials/InstallingandConfiguringROSEnvironment
1.在安装所有相关东西之前一定要首先安装opencv 2.4.9!!!注意,务必是opencv 2.4.9,不能是其他版本,其中原因如下:你在安装ROS接口的时候所下载的工程iai_kinect2工程所对应的版本只能是opencv 2.4.9这是iai_kinect2开发者利用opencv2.4.9进行的开发的一个软件,换句话说就是该工程依赖opencv 2.4.9
我当时版本为起初使用了opencv3.1.0,后来将其改装为opencv2.4.9并将opencv3.1.0安装到了其他目录中,双版本的opencv使用可以参考我的另一篇博客:
2.在测试过程的最后一步 重新开一个新的终端然后在终端首先输入source devel/setup.bash 之后在输入rosrun kinect2_viewer kinect2_viewer,在进行操作时每次新开终端一定别忘了source一下,改变一下当前工作目录。作为新手很容易遗漏
(1)其中Kinect V2这款视觉传感器的具体内容我相信不需要我继续讲解了吧,如果不知道的读者可以自行谷歌
(2)ubuntu系统是一个平台而已也没什么好讲的,就和windows一样,操作系统,但是自我感觉ubuntu的用户可操作性更强一些,但是安全性就相对低一些,动不动就出现内部的严重错误(别怕,叉掉就好!!!)
(3)ROS平台是一个机器人平台,我们使用kinect采集数据就是在这一平台上进行的,应该是可以下载或运行各种机器人的相关东西,具体有哪些东西由于本人也为初学者不甚了解,只能知道大概,等我研究透了之后再向读者介绍吧。
(4)安装的第一个文件libfreenect2这个东西就是我们读kinect摄像头的文件了,最后运行之后生成了两个可执行文件我的在/home/lmt/libfreenect2/build/bin目录中,你的应该也差不多如果你按照上边第一个博客安装的话。该目录中的Protonect便是我们从kinect读数据的一个二进制文件。至于另一个是什么鬼并不知道。
(5)关于iai_kinect2工程,首先祭上几个链接,如果英文不错的同学可以阅读:
https://github.com/code-iai/iai_kinect2
https://github.com/code-iai/iai_kinect2/tree/master/kinect2_bridge
https://github.com/code-iai/iai_kinect2/tree/master/kinect2_calibration
https://github.com/code-iai/iai_kinect2/tree/master/kinect2_registration
https://github.com/code-iai/iai_kinect2/tree/master/kinect2_viewer
这几个链接讲述了这个库中的几个文件是干嘛用的,根据我读过之后的理解:
该库包括了四个部分,其中源码可以在你下载目录中进行查阅。源码一共分为四部分,第一个kinect2_bridge作用是链接libfreenect2和ROS的一个东西;kinect2_calibration的作用是校准相机用的,若想进行相机校准可以参考https://github.com/code-iai/iai_kinect2/tree/master/kinect2_calibration;kinect2_registration采用opencl进行加速的一个库;kinect2_viewer是进行可视化的一个文件,可以通过kinect2_viewer这一命令查看深度图,彩色图。。。
好了,写了这么久都没有一张图有些过意不去,献上kinect V2的一张图吧: