【中关村在线软件资讯】5月2日消息:据Google GEO软件工程师SameerAgarwal和KeirMierle发布在Google开源博客中的文章说:“在科学和工程的广大领域,从统计学中复杂的曲线拟合,到计算机视觉中从照片构建3D模型,都存在非线性最小二乘问题(non-linearleastsquares)。今日,我们非常高兴宣布发布我们在Google所使用的解决方案。”
![谷歌的街景车](http://qp.qq.com/cgi-bin/cgi_imgproxy?url=http%3A%2F%2Fi9.hexunimg.cn%2F2012-05-03%2F141018896.jpg&size=0)
CeresSolver是一个可移植的C++库,可用来建模并解决大型复杂的非线性最小二乘问题。它的显著特性如下:
Asimple,expressiveAPI|简单易读的API
Automaticdifferentiation|自动微分
Robustlossfunctions|稳健的损失函数
Localparameterizations|局部参数
AthreadedJacobianevaluatorsandlinearsolvers
DenseQRfactorization(usingEigen)forsmallproblems
SparseCholeskyfactorization(usingSuiteSparse)forlargesparseproblems
Specializedsolversforproblemsin3Dcomputervision|三维计算机视觉中的问题的特定解决方案
Aliberallicense(NewBSD)
Scalesfromserverstocellphones.
“在Google,我们使用CeresSolver来估测街景车、飞机和卫星的姿态;给PhotoTours建立3D模型;估测卫星图像传感器的特征等。CeresSolver能够融合从安装在街景车上的传感器发送的数据,估测街景车自身在地球表面的正确位置和方向。”
与国内的部分街景产品不同,Google街景地图采用的是激光全景数据,即图像的每个点都有坐标,能实现图像局部定位,这样就可以实现图像完全的匹配空间。