## Google Releases Key Part of Street View Pipeline 44

New submitter drom writes

*"Google released a key part of their Street View pipeline as open source on Tuesday: Ceres Solver. It's a large-scale nonlinear least squares minimizer. What does that mean? It's a way to fit a model (like expected position of a car) to data (like GPS positions or accelerometers). The library is completely general and works for many problems. It offers state of the art performance for bundle adjustment problems typical in 3D reconstruction, among others."*
## Mind telling us what are the "Better Technology" ? (Score:5, Insightful)

Good effort I guess, but there is much better technology out there.

Mind telling us what are the "Better Technology" ?

Thank you !

## Re: (Score:3)

## Poor effort, there's much better trolls out there (Score:5, Interesting)

Your comment suggests you don't know what at minimizer is, and I think you just wanted to say "Google is bad" to the first story related to Google.

Which is a pity, but smarter trolls than you will have a go at them later.

If this is a constrained minimizer then Libre Office and Open Office will suddenly get a major improvement in their solver functionality for example, because at the heart of a solver is a decent non linear minimizer.

----

Fox News loves Bin Laden, hates President Obama for killing him.

## Re: (Score:2)

## Extra features (Score:4, Funny)

Does it come with built-in Wi-Fi snooping?

## Re: (Score:2, Troll)

Fanboys get mod points sometimes. As do employees. Hell, I've been modded down for mentioning

Sony'sevils in a story about Sony.## Re: (Score:1)

I'd imagine it's probably because you're a troll.

## Re: (Score:2)

"git clone https://code.google.com/p/ceres-solver/ [google.com]" asks you for account with real name?

What exactly are you talking about?

## Nonlinear least squares for dummies? (Score:3)

## Re: (Score:1)

## Ignore dvh (Score:5, Informative)

The video shows you how they use it, not what it is. Parent is just trolling.

Take a curve, represented by some function with parameters.

Take a set of data points.

Fit the curve to the data points by changing the parameters.

Minimizing the error distances between data points and curve so you get a best fit.

It's easy enough for lines and polynomials, but for more general functions it becomes a real pain. The maths is straightforward, but the implementation can make a huge difference. Google's library looks like a well implemented minimizer and it's been road tested too.

This is good.

## Re: (Score:2, Interesting)

To be fair, he did ask for *practical uses*, not what it is mathematically. Practical uses include the examples given in the article. Another example from computer vision would be to find world positions of 2D image features based on a set of pictures from different positions.

## Re: (Score:2)

Aside from the fact that it is a linear problem to solve (simple polynomial if you add lens correction), you also need a good feature extractor to create a 3D model from a set of 2D pictures. There are some excellent packages for doing 3D reconstruction, but they also come with a high price tag. There are some free implementations as well, but they are not very good.

Is seems to be an interesting solver, but you have to add a lot more for building an application for 3D reconstruction. I wonder if Google is g

## Re: (Score:2, Interesting)

http://www.cs.washington.edu/education/courses/cse455/10wi/lectures/455sfm.ppt [washington.edu]

## Re: (Score:3)

To be fair, he did ask for

practical uses...Your "another example"

isthe example from the article...I also have some authority in practical uses of technology (such as HTML 2.0-level markup), so I'll pipe up. For munitions guidance, this could be used to refine the inertial navigation position model for intercontinental delivery of ordinance by missile, maybe? When they outlaw nuclear missiles, only outla^h^h^h^h^h

theywill have nuclear missiles.## Re: (Score:2)

For illiterates like youDon't you mean "innumerates?"

## Re: (Score:1)

## Re: (Score:3, Funny)

Least squares is an optimization goal which minimizes a particular metric for a global deviation between an ideal and an achievable solution, that metric being the sum of the squares of individual deviations. A non-linear optimizer performs the optimization for a problem which is formulated in nonlinear equations (i.e. which is not described by a matrix).

## Re: (Score:2)

Can any math pro explain what practical uses solving nonlinear least squares equations have?

Mapping the expected position of a car to GPS data, for example.

## Re: (Score:3)

Kalman filters assume a linear relationship between predictor and response, while nonlinear least squares allow there to be a parametric known nonlinear relationship.

## Re: (Score:3, Informative)

Least squares is also often used in parameter fitting. Suppose you have a simulation with an somehow unknown parameter p. First you use a first guess as a value of p. That you run your simulation and get observed values y_obs.

Now you compare the computed values y_obs with the measured values y_mes using squares: cost = (y_obs - y_mes)^2.

By computing d p / d cost you may adapt p and redo the above steps till the squares are minimized... thus a least squares problem.

## Re: (Score:3)

Let's say you have a very weird car with 4 engines, 12 wheels turning in different directions, 8 steering wheels, 5 gearboxes and 20 buttons.

You have no idea what each control does : some appear not to have any influence, some need to be used together, some have delayed influence, some cancel each other...

You can probably forget to get a perfect understanding of the car, and will never find the perfect driving strategy.

You just need a driver assistance system that will minimise the time needed as well as th

## Yeah... (Score:5, Funny)

From the source code:

Yeah, that's pretty much how maths makes me feel as well ...

## Re: (Score:2)

## Re: (Score:2)

Wow, I actually understood some of that. And they said I'd never have a use for anything we learnt in linear algebra...

## Usefulness of least squares (Score:4, Insightful)

When you have several measured points, and you want to fit a function to them, least squares is how you measure how closely your function fits. This is useful anytime you want to infer a trend into the future (extrapolation) or infer what values come between the measured values (interpolation).

If you can speed up least-squares calculation, you can test your theories faster and possibly using less hardware - making that kind of statistical analysis more accessible.

In Google's case, they are using it to adjust their raw GPS data so that they can get a more accurate idea of where they are.

## 3D Reconstruction (Score:2)

## The RatSLAM project (Score:1)

The video at the Ceres Solver page reminded me a lot of the RatSLAM project. A project about mapping streets using a single camera as the only mapping sensor.

Related video here:

http://www.youtube.com/watch?v=-0XSUi69Yvs [youtube.com]

RatSLAM paper here:

http://eprints.qut.edu.au/32812/1/32812_Milford_2011000124.pdf [qut.edu.au]