没有合适的资源?快使用搜索试试~ 我知道了~
首页ceres-solver 文档 pdf 版
ceres-solver 文档 pdf 版
需积分: 50 31 下载量 15 浏览量
更新于2023-03-03
评论
收藏 418KB PDF 举报
google ceres solver 文档 的 pdf 版,http://ceres-solver.org/ 网站的pdf 版
资源详情
资源评论
资源推荐
CERES SOLVER: TUTORIAL & REFERENCE
SAMEER AGARWAL
sameeragarwal@google.com
KEIR MIERLE
keir@google.com
November 17, 2012
CONTENTS
Contents 2
1 A Note to the Reader 3
2 Version History 4
3 Introduction 12
4 License 14
5 Building Ceres 15
I Tutorial 23
6 Non-linear Least Squares 24
7 Hello World! 25
8 Powell’s Function 28
9 Fitting a Curve to Data 31
10 Bundle Adjustment 34
II Reference 38
11 Overview 39
12 Modeling 40
13 Solving 53
14 Frequently Asked Questions 70
15 Further Reading 72
Bibliography 73
2
A NOTE TO THE READER
Building this pdf from source requires a relatively recent installation of LaTeX
1
, minted.sty
2
and
pygments
3
.
Despite our best efforts, this manual remains a work in progress and the source code for Ceres Solver
remains the ultimate reference.
1
http://www.tug.org/texlive/
2
http://code.google.com/p/minted/
3
http://pygments.org/
3
VERSION HISTORY
1.4.0
API Changes
The new ordering API breaks existing code. Here the common case fixes.
Before
options.linear_solver_type = ceres::DENSE_SCHUR
options.ordering_type = ceres::SCHUR
After
options.linear_solver_type = ceres::DENSE_SCHUR
Before
options.linear_solver_type = ceres::DENSE_SCHUR;
options.ordering_type = ceres::USER;
for (int i = 0; i < num_points; ++i) {
options.ordering.push_back(my_points[i])
}
for (int i = 0; i < num_cameras; ++i) {
options.ordering.push_back(my_cameras[i])
}
options.num_eliminate_blocks = num_points;
After
options.linear_solver_type = ceres::DENSE_SCHUR;
options.ordering = new ceres::ParameterBlockOrdering;
for (int i = 0; i < num_points; ++i) {
options.linear_solver_ordering->AddElementToGroup(my_points[i], 0);
}
for (int i = 0; i < num_cameras; ++i) {
options.linear_solver_ordering->AddElementToGroup(my_cameras[i], 1);
}
4
CHAPTER 2. VERSION HISTORY 5
New Features
• A new richer, more expressive and consistent API for ordering parameter blocks.
• A non-linear generalization of Ruhe & Wedin’s Algorithm II. This allows the user to use variable
projection on separable and non-separable non-linear least squares problems. With multithread-
ing, this results in significant improvements to the convergence behavior of the solver at a small
increase in run time.
• An image denoising example using fields of experts. (Petter Strandmark)
• Defines for Ceres version and ABI version.
• Higher precision timer code where available. (Petter Strandmark)
• Example Makefile for users of Ceres.
• IterationSummary now informs the user when the step is a non-monotonic step.
• Fewer memory allocations when using DenseQRSolver.
• GradientChecker for testing CostFunctions (William Rucklidge)
• Add support for cost functions with 10 parameter blocks in Problem. (Fisher)
• Add support for 10 parameter blocks in AutoDiffCostFunction.
Bug Fixes
• static cast to force Eigen::Index to long conversion
• Change LOG(ERROR) to LOG(WARNING) in schur_complement_solver.cc.
• Remove verbose logging from DenseQRSolve.
• Fix the Android NDK build.
• Better handling of empty and constant Problems.
• Remove an internal header that was leaking into the public API.
• Memory leak in trust_region_minimizer.cc
• Schur ordering was operating on the wrong object (Ricardo Martin)
剩余73页未读,继续阅读
白菜888
- 粉丝: 7
- 资源: 75
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
- SPC统计方法基础知识.pptx
- MW全能培训汽轮机调节保安系统PPT教学课件.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0