Concept

bundle adjustment — where it appears

Refining every camera and every scene point at once so that the reprojection of the whole set is as small as it can be. It leaves seven directions untouched however long it runs — three of translation, three of rotation and one of scale — because no set of pictures contains them.

Named by 15 essays across one field — each of them below, with the objects they name alongside it.

view 1view 6the scene, in plan — recovered points and cameras over the true onesreprojection 0.332 px · track 2.0e-3264 observations, 168 parameters

The track and the scene together

Six photographs go in and one hundred and sixty-eight numbers come out — every camera's position and orientation and every point's place in space, solved for at once. Nothing in the solve was ever told where a camera or a point was.

manyviews · Bundle
× 4.6e+6seven flatand the rest stiffsingular value ÷ the largest, log scale, smallest firstσ₈/σ₇ = 4.6e+6168 parameters · 528 residuals

Seven numbers no picture can name

Shift a whole reconstruction by a metre and a half, turn it half a radian, scale it by 2.7, and every photograph of it stays where it was to a hundredth of a billionth of a pixel. Move one point by fifty millimetres and they move by two thirds of a pixel.

manyviews · Gauge
0.30.50.7125×10⁻⁴0.0010.0020.0050.010.02how finely each point is read (px, log scale)worst camera-centre error, as a fraction of the track's mean radius (log)chained pairsadjusted togetheradjustment is 4.0–9.2× better6 views · identical observations

A chain and an adjustment

Composing pairwise poses along a sequence is supposed to drift. Measured over five links it wanders instead — one chain ends closer to the truth than its own worst link — and the real cost of chaining turns out to be something else entirely.

manyviews · Drift
-10-50012345iterationreprojection error (px, log scale)exact marksread to 1 px4.67 px → 0.3324 px in 5 iterationsexact marks reach 1.3e-11 px

Where the adjustment stops

Given exact marks the reprojection error falls to a hundredth of a billionth of a pixel, which is arithmetic. Given the same marks read to a whole pixel it falls to a third of a pixel and stays there, and a solver that reached zero on those would be fitting the rounding.

manyviews · Bundle
0.0020.00334567number of viewsworst camera-centre error (fraction of the track's mean radius, log scale)7 flat7 flat7 flat7 flat7 flat60° sweep, filled in12° per view, wideningfilled in: 1.1e-3 → 2.0e-3widened: 3.2e-3 → 1.8e-3

Another picture of the same sweep

Going from three views to seven across the same sixty degrees leaves the reconstruction exactly where it started, and at one point makes it worse. What a reconstruction is short of is angular spread, not photographs.

manyviews · Spread
view 1, heldview 6one standard deviation, drawn 5× actual size — held: the first camerapoints 52.1–158.0 mm · cameras 0.0–104.8 mmmarks read to 1 px

An uncertainty is quoted from something

One adjustment, one set of marks read to a pixel, and its uncertainty written four ways. Held at the first camera, the last camera is 105 mm from certain; held at nothing, every camera is within 4 to 6 mm. A ratio of two distances carries 0.1465 per cent in all four, to two parts in a billion.

manyviews · Gauge
controlhow the shape moved, drawn 200× actual size — held: twelve surveyed coordinatessurvey 20 mm out · shape moved up to 2.26 mmreprojection 3.83e-1 px

The eighth held number bends the scene

Four surveyed points, each 10 mm out in a different direction. Hold seven of their coordinates during an adjustment and the courtyard's shape moves by a trillionth of a millimetre; hold eight and it moves by 0.59 mm, because seven numbers choose a frame and the eighth makes a claim the pictures disagree with.

manyviews · Gauge
each point joined to its place in the inside-out answer — nearer the camera is uptoward the cameratrue 2.4e-13 px · inside out 0.946 px3° field, 60° of arc

A narrow view keeps a second answer, inside out

Six pictures of a courtyard through a 3° field, every mark exact. Started from the scene turned inside out, the adjustment settles there — near points far, far points near — and misfits the marks by under a pixel. The misfit grows in proportion to the field and to the sweep of the cameras, and vanishes only where perspective does.

manyviews · Bundle
02004005101520camera round the loopcamera-centre standard deviation from the start (mm)left openclosedlast camera ×6.5 better · worst 20 % better24 cameras · marks read to 1 px

Closing a loop mends its ends

Twenty-four cameras walked once round a ring of walls, every mark read to a pixel. Recognising the twenty-two points seen at both ends makes the last camera six and a half times better placed relative to the first — and the worst camera, across the ring, only a fifth better. A closure mends the ends of a walk and barely touches its far side.

manyviews · Drift
89°in plan · the mark's size is the angle at the pointthe track covers 60°

The spread a point gets

A track of sixty degrees gives no point of the scene sixty degrees. The nearest receive 89 and the furthest 41, a factor of 2.2, and their errors run from 1.5 to 8.4 millimetres — following the angle at the point as its −1.68 power, with 94 per cent of the variation explained. The arc a track covers is one number for forty-four different situations and predicts none of them.

manyviews · Spread
start, heldworst: 86 along, 64 acrossellipses ×12 · worst camera 112 mmloop closed

A loop's far side is a length

The worst camera on a closed loop of twenty-four is 411 mm from certain along the line from the start and 64 mm across it. A picture taken across the ring from the start tripod measures directions and moves the worst camera from 418 mm to 405. One distance measured across the ring to 10 mm moves it to 74, and a four-metre length measured on the start wall to 112. What the far side of a loop lacks is not a connection but a length.

manyviews · Drift
0.111010010000.5125the accuracy the survey is stated to have (mm)shape error of the courtyard (mm)survey really 1 mmsurvey really 5 mmsurvey really 20 mmmarks read to 0.1 px · 200 trials eachlowest at the true accuracy

A survey is trusted at its own accuracy, unless its error has a shape

Entered into an adjustment with a stated accuracy, a survey whose errors are random gives the smallest shape error when the stated accuracy is the true one — at 1, 5 and 20 mm alike. Stated twenty times too tight it can cost thirteen times the error; twenty times too loose, almost nothing. But twelve surveys all 10 mm out in fixed directions are best trusted anywhere from 0.3 mm to 10 mm, and the size of their error cannot say which.

manyviews · Gauge
34384246505458626660° arc, 3° field60° arc, 25° field20° arc, 3° field20° arc, 10° fieldhalfway: the flattened scenelight: back to the scene · dark: into the twin · column: per cent of the way to the twinexact marks · one adjustment per cell68 starts

A start needs the sign of its depths, not their size

Started part of the way from a courtyard toward its inside-out twin, a bundle adjustment returns to the truth from every start less than 42 per cent of the way — a start with a sixth of the true relief, the right way round — and falls into the twin from every start past 56. Between, neighbouring starts settle in different answers. The band sits in the same place at a 3° field, where the twin misfits by under a pixel, and at 25°, where it misfits by seven and a half.

manyviews · Bundle
020406080100points: per cent of the way to the twin'scameras 0%cameras 10%cameras 20%cameras 30%cameras 40%cameras 50%cameras 60%cameras 70%cameras 80%cameras 90%cameras 100%solid: back to the scene · empty: into the twin · diagonal: the blend that moves both together60° arc, 3° field, exact marks121 adjustments

The cameras decide where a narrow view settles

Scatter a narrow-field bundle adjustment's starting depths and the answer it reaches stops following them: of eighty scattered starts whose depths had the right sign, twenty-six fell into the inside-out twin, and of a hundred with the wrong sign, forty-three came home. Split the start in two and the reason is plain. With the cameras where they are, the courtyard comes home from its own inside-out points; with the cameras on the twin's side, it falls in from the true ones.

manyviews · Bundle
0.050.10.250.51240200400length of the scale bar at the start (m, log scale)worst camera, along the line from the start (mm)open walkloop closedopen, no barclosed, no bara scale bar at the start, measured to 0.1 mmopen: flat from 0.5 m

A scale bar is worth its ends, not its tape

A length measured at the start of a walk round a ring pins the walk's scale — but only to the precision with which the pictures place the length's two ends, 3.4 mm here, whatever the tape says. Measured to a thirtieth of a millimetre or to three millimetres, a one-metre bar leaves the worst camera at the same 89 mm. So a short length is not a long one measured well: a bar under about 13 cm tells the walk less about its scale than the walk already knows. And on an open walk no length at the start does better than 214 mm, because what is left there is drift, not scale.

manyviews · Drift

Named alongside it

The objects these essays reach for when they reach for this one.

gauge freedomReprojection errorcamera trackCovarianceControl pointSimilarityDriftResidualstructure from motionBaselineConvergenceDepth reversal

All concepts