
优化方法学习
chengwei0019
学无先后,达者为师
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
[开源]超全ICP实现,g2o,ceres,G-N,SVD等
整理了一下各种ICP实现方式,包括高斯牛顿法求解,SVD求解,ceres求解,g2o求解,还包含了一些开源库的测试,如icp,ndt,sicp,ndt_cpu等方法;代码已开源。原创 2022-05-24 18:11:50 · 1174 阅读 · 0 评论 -
windows下编译gtsam
GTSAM 是一个在机器人领域和计算机视觉领域用于平滑(smoothing)和建图(mapping)的C++库。它与g2og2o不同的是,g2og2o采用稀疏矩阵的方式求解一个非线性优化问题,而GTSAM是采用因子图(factor graphs)和贝叶斯网络(Bayes networks)的方式最大化后验概率。GTSAM的安装:gtsam官网给出了 详细的安装过程,由于其依赖库比较少,安装起来比较方便。这里咱们主要介绍在windows下的安装(Ubuntu下几行代码就可以搞定,这里不再赘述)。g原创 2020-05-19 11:12:31 · 2993 阅读 · 27 评论 -
g2o、Eigen、Mat矩阵类型转换
1.Eigen矩阵赋值1) 使用row或者colEigen::Matrix3d R = Eigen::Matrix3d::Identity();R.row(0) = Eigen::Vector3d(-0.0134899,-0.997066,0.0753502);R.row(1) = Eigen::Vector3d(-0.0781018,-0.0740761,-0.99419);R...原创 2019-10-24 10:49:04 · 2705 阅读 · 0 评论 -
graph slam tutorial :从推导到应用3(g2o+ceres实现)
目录图的数据格式读取数据使用g2o中slam2d数据格式的优化优化结果定义顶点和边我们不生产代码,我们只是代码的搬运工。图的数据格式图优化前端处理以后产生的顶点和边的数据格式,这是写程序时特别关注的,也是众多优化包如g2o的数据格式。matlab程序及数据戳这里killian-v.dat 数据为顶点vertex2: id,pose.x,pose...原创 2019-10-23 11:13:46 · 1709 阅读 · 0 评论 -
graph slam tutorial : 从推导到应用1(g2o+ceres实现)
目录例子1:例子2:例子1:为了更好的理解这个过程,将用一个很好的例子作说明。如下图所示,假设一个机器人初始起点在0处,然后机器人向前移动,通过编码器测得它向前移动了1m,到达第二个地点。接着,又向后返回,编码器测得它向后移动了0.8米。但是,通过闭环检测,发现它回到了原始起点。可以看出,编码器误差导致计算的位姿和观测到有差异,那机器人这几个状态中的位姿到底是怎么样的才最好的满足...原创 2019-10-22 17:23:23 · 913 阅读 · 0 评论 -
g2o非线性优化
基于g2o的最小二乘方法。g2o,即General Graph Optimization,他是一个基于图理论的优化库。图优化理论介绍,可以参考半闲居士的博客有这么一个问题,给你一组二维数据,拟合其直线方程。譬如下面的方程:拟合y=Asin(Bx)+Ccos(Dx)y=Asin(Bx)+Ccos(Dx),已知N组数据(xi,yi),i=0,1,⋯N−1(xi,yi),i=0,1,⋯...原创 2019-10-22 15:02:25 · 1261 阅读 · 0 评论 -
g2o使用总结
本文转自:https://blog.youkuaiyun.com/hzwwpgmwy/article/details/79884070需要解决的问题:如何自定义Vertex和Edge?如何选择Edge类型?一元还是二元?如何赋值信息矩阵?如何设置鲁棒核函数的阈值?如何选择Vertex设置为固定?如何边缘化以便稀疏化求解?如何处理优化结束后outliner?如何设置根据卡方分...转载 2019-10-22 14:43:46 · 2629 阅读 · 1 评论