Google 街景技術關鍵部分已開源
本文譯自 Google GEO 軟件工程師 Sameer Agarwal 和 Keir Mierle 發布在 Google 開源博客中的文章。
在科學和工程的廣大領域,從統計學中復雜的曲線擬合 ,到計算機視覺中從照片構建 3D 模型,都存在非線性最小二乘問題(non-linear least squares)。今日,我們非常高興宣布發布我們在Google所使用的解決方案。
Ceres Solver 是一個可移植的 C++ 庫,可用來建模并解決大型復雜的非線性最小二乘問題。它的顯著特性如下:
? A simple, expressive API | 簡單易讀的 API
? Automatic differentiation | 自動微分
? Robust loss functions | 穩健的損失函數
? Local parameterizations | 局部參數
? A threaded Jacobian evaluators and linear solvers
? Dense QR factorization (using Eigen) for small problems
? Sparse Cholesky factorization (using SuiteSparse) for large sparse problems
? Specialized solvers for problems in 3D computer vision | 三維計算機視覺中的問題的特定解決方案
? A liberal license (New BSD)
? Scales from servers to cell phones.
在Google,我們使用 Ceres Solver 來估測街景車、飛機和衛星的姿態;給 PhotoTours 建立 3D 模型;估測衛星圖像傳感器的特征,等。比如:下面這個視頻展示了三個實例(油Tube),Ceres Solver 融合從安裝在街景車上的傳感器發送的數據,估測街景車自身在地球表面的正確位置和方向。
我們希望你會下載Ceres Solver,解決一些問題,并在郵件列表中分享你的經驗。
By Sameer Agarwal & Keir Mierle, Geo Software Engineers