How well the floor has to be known
Worth reading first: Undoing a picture made on a curve.
The recovery in the previous rung needs the floor, and knowing the floor makes it exact. That is a satisfying result and it is not usable, because nobody knows a floor exactly. A plan is drawn to a tolerance; a survey has an error bar; a laser scan has noise. The instruction “supply the surface” is a wish until it says how well.
This essay answers that. The shape is taken as known — a ridged floor, curving one way and flat the other — and the parameter that says how much it curves is deliberately got wrong by a stated fraction. What comes back is a number a specification can be written from.
The measurement
The setup is the one from the previous rung, unchanged: a rectangular grid painted on a ridged floor with a flexible rule, photographed, and recovered by ray-tracing back through the surface into the surface’s own coordinates.
One thing changes. The recovery is told a curvature instead of the true . Everything else — the camera, the marks, the shape of the floor as a family — is right.
The results, as a fraction wrong against the worst recovered mark:
| curvature wrong by | worst error |
|---|---|
| 2% | 2.21 mm |
| 5% | 5.51 mm |
| 10% | 11.00 mm |
| 20% | 21.92 mm |
| 40% | 43.51 mm |
Divide each error by its fraction and the four quotients are 110.3, 110.2, 110.0, 109.6 and 108.8 millimetres per unit of relative error. Across a twentyfold range of misknowledge the constant varies by 1.4%.
So the rule is a proportion, and it is worth writing down in the form a specification takes: the design’s worst error is about 110 mm times the relative error in the curvature, for this floor at this camera and this design size.
The tolerance
Turn it round. To recover a design to one millimetre on a floor 1.8 m across, the curvature has to be known to 0.91%.
That is a demanding number and it is worth sitting with. It is not one per cent of the height of the floor — the ridge here rises about nine centimetres over the patch — it is one per cent of the coefficient that sets that height. Nine parts in ten thousand of a metre, roughly, in the sag itself.
Which means a plan drawn “flat, with a slight fall to the drain” supplies nothing usable. A survey to the nearest centimetre supplies nothing usable. What is needed is either a real measurement of the surface at millimetre accuracy, or a way of fitting the surface from the same photograph — which is possible when the scene contains enough known geometry, and is the honest route when it does.
Why the line is straight
The proportionality is the result, and it should not be taken for granted, because nothing in the chain that produces it is linear.
The recovery composes a ray with a root-find against a height field with an inverse arc-length integral. The arc length is a hyperbolic sine; the root-find is a bisection on a quadratic; the perspective divide is a reciprocal. None of those is linear in , and the composition of three nonlinear maps has no business behaving like a straight line over a twentyfold range.
It does, and the reason is a first-order argument that is worth having because it says when the straightness will fail.
The recovered design point is a function , and the error is . Expand about the true curvature:
The linear term dominates as long as the second-order term is small, and the second-order term is small as long as the fractional change in curvature is small compared with the scale on which itself changes. Here that scale turns out to be large — the derivative varies by a per cent or so over a 40% change — so linearity survives much further than a first-order argument usually earns.
The measured spread of 1.4% is the second-order term, seen. It is not zero and it is not noise: it is the curvature of the sensitivity curve, and it grows as the misknowledge does, which is exactly what the expansion predicts.
What the constant depends on
A number like “110 mm per unit of relative error” is only useful with its conditions attached, so here they are, in the order they matter.
The size of the design. The error scales with it, near enough, because a fractional change in the surface displaces points in proportion to how far along the surface they are. Doubling the patch roughly doubles the worst error, and the tolerance halves.
How obliquely the floor is seen. A camera looking almost along the floor sees a given displacement of the surface as a large displacement in the picture; a camera looking down at it sees a small one. The recovery inherits that, and the sensitivity is worst at grazing incidence — which is the same geometry that makes a grazing view bad for every other measurement here.
How much the floor curves. Quoted as a fraction, the tolerance is nearly independent of it, which is why the fraction is the right form. Quoted as an absolute error in , it is not.
And not the number of marks. This is the one worth stating explicitly. The error above is systematic: every mark is displaced in the same smooth way by the same wrong surface. Averaging over more marks does nothing, because they are all wrong in the same direction. That is the distinction between a bias and a noise, and only one of them is bought off by more data.
The measurement’s own controls
A sensitivity curve is easy to produce and easy to produce wrongly, so it is worth saying what the machinery checks before reporting one.
The exact case has to land at zero. Told the true curvature, the recovery must return the design at arithmetic noise. If it did not, every point on the curve would be sitting on top of an offset that had nothing to do with the misknowledge, and the proportionality would be an artefact of it.
The tolerance has to be bracketed rather than solved. The crossing where the error reaches a millimetre is found by bisection between a fraction known to be inside and one known to be outside, and both ends are asserted before the bisection starts. A bisection whose bracket was never checked returns an endpoint and looks like an answer.
And the misknowledge has to cost something. The smallest fraction tested — two per cent — must produce a non-zero error. A recovery that ignored the curvature it was told would give a flat line at zero and would satisfy the linearity test perfectly.
Those three are the same shape as every measurement here: the thing that should be zero, the thing that should not, and the bracket that keeps the search honest.
The comparison worth making
There are three ways to be wrong about the floor, and putting the numbers side by side changes what is worth spending effort on.
Assume it is flat: 111 mm.
Get the curvature 40% wrong: 43.5 mm.
Get the curvature 10% wrong: 11.0 mm.
So knowing the shape — that it is a ridge rather than a plane — is worth more than knowing the parameter to any reasonable accuracy. A recovery that has the family right and the coefficient badly wrong beats one that has no family at all, by a factor of two even at 40% out.
That ordering is not obvious and it is practically useful. The expensive part of a survey is measuring the surface accurately; the cheap part is establishing what kind of surface it is. The cheap part buys most of the improvement.
The other error that is not on this plot
Everything above holds the camera fixed and the marks perfect. Two other errors sit on top of it and it is worth knowing their sizes relative to this one, because a specification that controls the smallest of three is not a specification.
The camera. The first step of the recovery is picture-to-ray, and it needs the focal length, the principal point and the pose. An error in the focal length tilts the whole bundle of rays and moves every recovered point; an error in the pose translates and rotates the recovered design. Those are recoverable from the same photograph in favourable scenes and are a genuine error source in unfavourable ones, and unlike the surface error they are partly cancelled by the four-mark registration that a design usually has anyway.
The marks. A mark located to within a pixel produces a recovered position uncertain by whatever a pixel is worth on the floor at that distance — which, for a floor photographed from three metres with a moderate lens, is a millimetre or two. That is the same order as the tolerance derived above, which is a useful coincidence: it says the surface should be known well enough that it stops being the limit, and no better.
That last sentence is the practical form of the whole essay. Match the tolerances. Knowing the floor to a tenth of the pixel-noise limit buys nothing; knowing it to ten times worse throws away the picture’s own accuracy. Nine parts in a thousand is where those two meet for this design at this range.
Where the model itself runs out
Everything above assumes the family is right — that the floor really is a ridge of some curvature, and only the curvature is unknown. That assumption has its own failure and it is not on the plot.
If the floor is a ridge plus something else — a local dip, a settled slab, a rise near a wall — then no value of recovers the design, and the sensitivity curve says nothing about how wrong the answer is. The residual after fitting the best would say, but there is no residual: the recovery is exact by construction whatever it is told, so it produces a confident answer for every value.
That is the most dangerous property of the whole method and it deserves stating plainly. An exact recovery has no residual, so it cannot report that its model was wrong. The flat four-point fit, for all its 111 mm, at least leaves a residual that grows when the floor is not flat. The exact recovery leaves none.
The repair is the one the previous rung ends on: hold marks back. Recover the design from the surface, then check a mark whose position in the design is independently known. That comparison is the only thing in the chain capable of reporting a wrong model, and it costs one mark.
Two floors, and why the fraction is the right unit
It is worth checking the claim that the tolerance is naturally a fraction rather than an absolute amount, because it is the difference between a rule that transfers and one that does not.
On a floor curving at — a very gentle fall — a millimetre of design costs 1.77% of the curvature. On a floor at , four times steeper, it costs 0.55%. Those are not the same fraction, so the fraction is not perfectly transferable either; but the absolute tolerances differ by a factor of five while the fractional ones differ by three, and the fractional one moves the right way.
The residual dependence has a cause worth naming. A gentler floor is not simply a scaled version of a steeper one, because the camera stays where it is. Halving the curvature halves the displacement a given fractional error produces on the floor, and it also changes how obliquely the floor is seen, and the two do not cancel. So the fraction is the better unit and it is not a complete answer; the honest form of the rule carries the design size and the viewing geometry with it, which is what the specification at the end does.
There is a broader lesson in that, and it is a habit rather than a result. A tolerance quoted without its conditions is a tolerance that will be applied to the wrong job. Every rate on this site is quoted with the geometry it was measured at, for the same reason, and the ones that transfer are the ones written as ratios of things that scale together.
A specification, written out
The point of a sensitivity is that somebody can act on it, so here is the result in the form a job would be written.
To recover a design of extent on a ridged floor to an accuracy , photographed at a moderate angle, the floor’s curvature must be known to a relative accuracy of about
For m and mm that is 0.9%, which is the measured figure. For a 6 m floor and the same millimetre it is 0.3%. For a 6 m floor and a 5 mm tolerance it is 1.4%, which is achievable with an ordinary survey.
Three cautions come with it, and each is a section above compressed to a line. The number is a bias and does not improve with more marks. It assumes the family of surfaces is right and says nothing if it is not. And it is quoted at a moderate viewing angle; at grazing incidence it gets worse, in the same way every other measurement on this site does.
Shares its objects with
Essays that name at least two of the same things, and that neither author linked.
- Measuring a room off the page — both name error propagation, homography, rectification, sensitivity, single-view metrology
- A shadow can be un-cast — both name error propagation, homography, rectification, sensitivity
- A lens destroys the invariant — both name error propagation, sensitivity, single-view metrology
- A light far enough away — both name error propagation, instrument limit, single-view metrology
- Flattening a façade out of the photograph — both name homography, rectification, single-view metrology
- How wrong a measurement from one picture can be — both name error propagation, sensitivity, single-view metrology
Named objects
A flat tag is an object no other essay names yet.
Developableerror propagationGaussian curvatureHomographyinstrument limitleast squaresRay tracingRectificationSensitivitysingle-view metrology