Skip to main content

开源VIO运行记录

 VINS-Mono
运行VINS-Mono项目出现一些问题,记录如下:
启动launch文件时,vins_estimator模块莫名奇妙的挂掉
检查发现,ceres中要求的Eigen的版本与实际安装的版本不一致,
第一步:根据Ceres中要求的版本,安装相应的Eigen版本

但是在终端中编译时还是会有报错,再Clion中不会报错,编译后的结果运行也正常。

第二步:
 打开/usr/local/lib/cmake/Ceres/CeresConfig.cmake
 在设置Eigen版本及检查版本的地方,去掉相关的版本限制

备注:CLion中使用的cmake可能和终端中使用的cmake不是一个,取决于clion中的设置。因此运行的结果不完全一致

编译新的版本,只需要在vins_estimater中指定ceres的1.13的版本就直接能编译过去。

很多问题都是eigen和ceres的版本问题


okvis-ros
是okvis的ros版本
编译时再会自动下载借个库,但是在下载Opengv时会出问题,
修改如下:
先离线下载,然后将Cmakelist中的在线下载关闭掉,将Opengv部分的SOURCE_DIR指向离线包,
 ExternalProject_Add(opengv_external
    #GIT_REPOSITORY https://github.com/laurentkneip/opengv
    UPDATE_COMMAND ""
    PATCH_COMMAND # forcing static libs
        COMMAND ${CMAKE_COMMAND} -E copy ${PROJECT_SOURCE_DIR}/cmake/opengv/CMakeLists.txt ${CMAKE_CURRENT_BINARY_DIR}/opengv/src/opengv/CMakeLists.txt
        COMMAND ${CMAKE_COMMAND} -E copy ${PROJECT_SOURCE_DIR}/cmake/opengv/opengvConfig.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/opengv/src/opengv/opengvConfig.cmake.in
        COMMENT "Forcing our own CMakeLists.txt to build OpenGV (static library support)."
    CMAKE_ARGS
      -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
      -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
      -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS_WSUPPRESS} # suppress warnings...
    PREFIX ${CMAKE_CURRENT_BINARY_DIR}/opengv
    SOURCE_DIR /home/wk/GRC_ws/src/okvis_ros/opengv
    INSTALL_DIR ${CMAKE_BINARY_DIR}
    BUILD_IN_SOURCE 0
    BUILD_COMMAND make -j${N_CORES}
    INSTALL_COMMAND make install
)

Comments

Popular posts from this blog

ros调试----rosparm

当程序有许多参数传入时,通常会通过rosparm进行传递, 传递形式为在roslaunch文件中的node中,使用rosparm,比如 <node pkg="tvio" type="image_processor_node" name="image_processor"  output="screen" >       <rosparam command="load" file="$(arg calibration_file)"/>       <param name="grid_row" value="4"/>       <param name="grid_col" value="5"/>       <remap from="~imu" to="/xsens_imu_data"/>       <remap from="~cam0_image" to="/camera/left/image_raw"/>       <remap from="~cam1_image" to="/camera/right/image_raw"/>  </node> 其中,calibration_file为指定的rosparam格式的yaml文件。 可以通过launch文件启动调试,但是不是很习惯,还是喜欢用Clion的可视化调试。 方法: 1)在终端中手动加载rosparam参数: python /opt/ros/kinetic/bin/rosparam  load  /xxxx/camchain.yaml 参数一旦加载后,会保持在本机上的参数服务器中(是不是和roscore相关),程序运行就能读取到。 2)remap中的参数项通过程序的命令行参数形式传入: image_processor   ~imu:=/xsens_imu_data...

一、VO篇(monocular、stereo)

单目相关的一些资源 1、该作者实现了最简单的单目、Stereo VO,都是基于点特征的 Monocular Visual Odometry using OpenCV Visual Odmetry from scratch - A tutorial for beginners     2、Matlab官方文档中的例子: Monocular Visual Odometry 3、基于RANSC野点剔除: https://github.com/sunzuolei/mvo_ransac/tree/master/mvo_ransac   在Android平台的实现: https://github.com/sunzuolei/mvo_android  https://github.com/sunzuolei/vo_basis 这里还向相关的视频  4、论文+代码   http://www.cs.cmu.edu/~rahuls/pub/icra2005-rahuls.pdf http://www.cs.cmu.edu/~vo/vo-0-2.tgz  5、libviso2  单双目   基于点和线的VO:包括双目、单目(svo) http://mapir.uma.es/mapirwebsite/index.php/people/115-people/164-ruben-gomez.html   6、fovis 7、bpvo https://github.com/halismai/bpvo  该套算法来自CMU,以及作者的另一套开源算法photobundle,有作者的博士论文链接,拜读。       双目vo:  https://github.com/ucsdxiaoyuzhou/CSE252C_visual_odometry https://github.com/fovis/fovis 深度相机或者stereo https://github.com/jaiprakashgogi/visualodometry 带有简...

AHRS开源项目

ros中集成的组件: 9DOF https://github.com/ccny-ros-pkg/imu_tools 该算法是Sebastian Madgwick博士 2009 年开源的研究项目。 原始项目: http://x-io.co.uk/open-source-imu-and-ahrs-algorithms/ 但是一直没有在维护更新,后被集成到ros中。  另一套6DOF的开源AHRS系统, http://autopilot.sourceforge.net/kalman.html