官网教程
虽然官方给出了使用的教程和相应的SDK,但是官方的安装和使用过程中一直会出现各种各样的问题。我是按照这篇博客进行的,在这里只是整理记录下我使用INDEMIND相机的过程。
安装SDK
安装过程可以完全按照官网进行
下载后解压在自己的文件夹下。
依赖安装
//a)安装cmake
sudo apt-get install cmake
//b)安装google-glog + gflags
sudo apt-get install libgoogle-glog-dev
//c)安装BLAS & LAPACK
sudo apt-get install libatlas-base-dev
//d)安装SuiteSparse and CXSparse
sudo apt-get install libsuitesparse-dev
编译
非ROS编译
可以通过这样的方式进行测试SDK安装是否成功。
cd demo
mkdir build
cd build
cmake ..
make
编译完成之后,在demo所在目录下的lib文件夹下的1604目录下会生成TestIndem和TestIndem.sh文件。(按照官方的说法,程序编译之后会自动拷贝到lib目录下,如果在1604文件夹中没有找到文件可以在build文件夹拷贝过去)
修改TestIndem文件的权限
sudo chmod 777 TestIndem
sudo chmod 777 TestIndem.sh
之后运行
sudo ./TestIndem.sh
运行结果如下,证明驱动安装成功
在终端会输出相机的内参信息
ROS环境下编译
按照官方给出的方法,就会遇到下面的错误
尝试了多种解决方案,之后参考了博客下载了博主自己编写的ROS节点
-
下载项目
-
下载之后catkin_make编译。将编译成功之后把src/indemind_stereo/lib下的libslam.so、headset.yaml和libusbdriver.so拷贝到目录devel/lib/indemind_stereo下。
-
进入root用户,启动节点(ROS节点必须在root用户下启动并且相机只能插在USB3.0端口)
sudo -s cd catkin_ws source devel/setup.bash roslaunch indemind_stereo stereo.launch
录制数据包
在希望存储的数据包目录下录制全部topic的数据包
rosbag record -a
遇到的问题
run.sh文件权限不够
在运行之前需要让run文件可以作为执行程序被运行。熟悉Linux操作的可以通过命令行修改文件权限,不熟悉的可以通过文件右键-属性-权限更改。
将“允许作为程序执行文件”前面的勾打上即可。
libopencv_imgcodecs.so.3.4: cannot open shared object file: No such file or directory
运行ROS节点的过程中会遇到找不到lib文件的问题,报错缺哪个就将官方Demo的lib文件夹下的文件拷贝到devel/lib文件夹下,编译通过。