Light and mirrors

The lamp a low shadow cannot locate

Five posts, their shadows, and the line from each foot through its own shadow's tip meet at the lamp standing over them — at 52 degrees up that meet moves 0.11 m for half a pixel of marking error; at 11.5 degrees, 0.64 m. The two eigenvalues of the same pencil of lines part by a factor of 8849084 across the sweep, and half a pixel becomes more than a metre of lamp below 14.4 degrees.
19 min read 6 figures Fitted, not assumed

Worth reading first: The lamp, out of the picture · The penumbra is the lamp's image.

Every essay in this cluster so far has treated the lamp as the thing casting light and the floor as the thing recording it. The lamp’s size over its distance, and nothing else asked what a soft edge says about a lamp’s own dimensions; what a point in shadow can see of the sky asked how much of an overhead source a shadowed place still receives. This essay runs the underlying relationship backwards from both: given the floor’s record — several posts and the shadows they throw — where was the lamp actually standing?

The construction is old and simple. A post’s foot, the tip of its shadow, and the lamp all lie on one straight line, because the shadow tip is exactly where the ray from the lamp through the post’s top meets the ground. Draw that line from enough posts and they all pass through one point: the place on the ground directly under the lamp. What this essay measures is not whether that construction works — it does, to the limits of floating-point arithmetic, at any elevation — but how it degrades once the lamp is low, where the same lines that meet cleanly overhead arrive at their meeting point running nearly parallel, and a small error in marking either end of any one of them is amplified into a large error in where they are found to cross.

The construction needs a stated method for combining more than two lines, because five lines drawn from five real posts, each marked to a finite precision, will not in general pass through one common point exactly — each pair of them meets somewhere slightly different, and the “meeting point” reported is the one place that minimises, in a least-squares sense, its total perpendicular distance from all five. That is the same closest-point-to-several-lines problem the track and the scene together needs for a camera’s own recovered position from many rays, applied here to a pencil of only five members rather than dozens, and small enough that its whole behaviour can be read directly off one matrix rather than approximated.

At 52° the lamp is 2.5 m away and half a pixel of marking moves it 0.11 mFive posts a metre high, their shadows, and the line drawn from each post's foot through the tip of its shadow. Every one of those lines passes through the point on the ground under the lamp, so their common meet is where the lamp is standing — and with the marks read exactly it comes back to 3.5e-14 metres, at every elevation. The lamp here is 52 degrees up, which puts it 2.5 metres away, and from that far off the five lines arrive nearly parallel. Marking each end to half a pixel moves the meet 0.11 metres, and it moves it along the shadows rather than across them, which is the direction a narrow pencil of lines cannot hold.correct from 14 cm, at 160 mm wide52° · 0.11 m out
Fig. 1 Five posts a metre high, their shadows, and the line from each post’s foot through its own shadow’s tip. Every one of those five lines passes through the point on the ground under the lamp, so their common meet is where the lamp stands — recovered to 3.5e-14 metres with the marks read exactly, at every elevation. Here the lamp is 52 degrees up, 2.5 m away, and marking each end of each line to half a pixel moves the recovered meet by 0.11 m.

The reading that needs no trials

Before running a single noisy trial, the arrangement of the five lines already contains the answer to how well they will pin down their own meeting point, and it is available from the lines alone.

The pencil's two eigenvalues part by 8849084× across the sweepThe reading that needs no trials at all. The five drawn lines are asked to pass through one point, and the ratio of the two eigenvalues of that least-squares problem says how well they pin it: one for a bundle that fixes its meet equally in every direction, nothing for a bundle of parallel lines that fixes it in one direction and not the other. It falls from 2.35e-1 at 65 degrees to 2.66e-8 at 4, a factor of 8849084, with a fitted slope of 4.68. That is the same statement as the scatter under marking error, arrived at from the arrangement rather than from a hundred readings of it, and a person with a photograph can take it before deciding whether to bother.-8-6-4-20.75011.251.501.75how high the lamp is, in degrees (powers of ten)how well the lines fix their meet (powers of ten)65°computed from the arrangement, with no marking error at allslope 4.68
Fig. 2 The five drawn lines are asked to pass through one point, and the ratio of the two eigenvalues of that least-squares problem says how well they manage it: large for a bundle that fixes its meet equally in every direction, small for one that fixes it firmly in one direction and barely at all in the other. The ratio falls from 2.35e-1 at 65 degrees to 2.66e-8 at 4, a factor of 8849084, with a fitted slope of 4.68 on logarithmic axes.

The two eigenvalues belong to the same normal-equations matrix that finds the meeting point in the first place, and they carry a physical meaning worth stating plainly: one measures how firmly the pencil of lines constrains a displacement of the meet in the direction the lines are best aligned to detect, and the other measures the same thing in the perpendicular direction. A pencil of lines converging from many different bearings has both eigenvalues of a similar size, because an error in any one direction is caught by some line or other. A pencil of lines that are nearly parallel — which is what “the lamp is low” does to five lines all running out toward roughly the same distant point — constrains displacement across their own common direction tightly and displacement along it hardly at all, because sliding the candidate meeting point along the lines’ shared direction barely changes how well any of them still passes through it. The falling eigenvalue is that second, nearly-unconstrained direction losing its last grip, and it is available from nothing more than the five lines’ own bearings, with no marking error simulated at all.

A factor of 8849084 across the sweep is worth sitting with rather than passed over as merely “a large number.” It says that the ill-conditioning does not grow gently as the lamp descends; a slope of 4.68 on logarithmic axes means the ratio falls very close to the fourth power of how far the elevation still has to go, so a lamp at 4 degrees is not twice or ten times worse-conditioned than one at 65, it is worse by seven orders of magnitude. Reading the eigenvalue ratio before running any trial is, in that light, less a convenience than a warning that the trials at the low end of the sweep are being asked to measure something the arithmetic underneath them is very close to unable to determine at all — which is exactly the regime a solver ought to be watched carefully in, rather than trusted to report a clean number regardless.

What half a pixel of marking costs

The eigenvalue ratio predicts trouble; turning that prediction into a number a reader can act on needs the actual recovery run many times with a stated marking error.

Below 14.4° half a pixel of marking is more than a metre of lampThe lamp recovered 48 times at each elevation with every mark read to 0.5 of a pixel, and the middle of those 48 plotted. Its place on the ground goes from 0.261 metres out at 65 degrees to 2.62 metres out at 4, a fitted -0.930 power of the elevation, and it crosses a metre at 14.4 degrees. The lamp's *height* is the control and does not follow it: 0.456 metres at the bottom of the sweep against 0.196 at the top. With the marks read exactly the whole sweep sits at 2.3e-13 metres, so nothing here is the geometry being wrong — it is what a pixel costs.012204060how high the lamp is, in degrees above the horizontalhow far the recovery misses, in metresa metre at 14.4°the lamp's heightits place on the ground0.5 px of marking, 48 trials at each elevationfitted exponent -0.930
Fig. 3 The lamp recovered 48 times at each elevation, every mark read to half a pixel, and the middle of those 48 plotted. The recovered position on the ground goes from 0.261 m out at 65 degrees to 2.62 m out at 4, a fitted -0.930 power of the elevation, crossing a metre at 14.4 degrees. The lamp’s own height is the control: it moves only from 0.196 m of scatter at the top of the sweep to 0.456 m at the bottom, a much weaker climb than the ground position’s tenfold one. With the marks read exactly, the whole sweep sits at 2.3e-13 metres — nothing here is the geometry being wrong.

The control is doing real work in that figure, and it is worth being exact about what it controls for. If marking error simply degraded “the recovery” as one undifferentiated quantity, both the ground position and the height would be expected to worsen together as the lamp drops, and by comparable amounts. They do not: the ground position’s scatter grows roughly tenfold across the sweep while the height’s grows only a little over twofold, which says the ill-conditioning is specifically about where on the ground the lamp is, not about how high it is. That asymmetry is the same fact the eigenvalue ratio already stated more abstractly — the badly-constrained direction is the one along the lines’ own shared bearing, which is a horizontal direction on the ground, and the lamp’s height enters the construction through an entirely different combination of the same measurements that the ill-conditioning barely touches.

The two exponents — −0.930 for the ground error against elevation, 4.68 for the eigenvalue ratio’s own fall on logarithmic axes — are not claimed here to be the same law in two disguises, and it would be a mistake to force them into one: a least-squares meet’s positional scatter and the eigenvalue that constrains it are related through the noise level and the other eigenvalue as well, not by a single clean reciprocal, and the sweep here covers a finite, moderate range of elevations rather than an asymptotic limit either power law is exact over. What the two figures share is not an arithmetic identity but a common cause read twice: the same narrowing pencil of nearly-parallel lines is what the eigenvalue ratio measures directly, from the arrangement alone, and what the trial-based sweep measures indirectly, by actually perturbing the marks and watching where the fitted point lands. Two different instruments pointed at the one mechanism agreeing on its direction — both falling steeply as the lamp descends — is the check; neither number is offered as a prediction of the other’s exact exponent.

The low case, made concrete

The elevation sweep is a statistical summary. Looking at one specific low case as a picture, alongside the high case already shown, is what makes the abstract sensitivity legible as an actual arrangement of lines.

At 11.5° the lamp is 15.7 m away and half a pixel of marking moves it 0.64 mFive posts a metre high, their shadows, and the line drawn from each post's foot through the tip of its shadow. Every one of those lines passes through the point on the ground under the lamp, so their common meet is where the lamp is standing — and with the marks read exactly it comes back to 3.1e-14 metres, at every elevation. The lamp here is 11.5 degrees up, which puts it 15.7 metres away, and from that far off the five lines arrive nearly parallel. Marking each end to half a pixel moves the meet 0.64 metres, and it moves it along the shadows rather than across them, which is the direction a narrow pencil of lines cannot hold.correct from 14 cm, at 160 mm wide11.5° · 0.64 m out
Fig. 4 The same five posts, the same construction, now with the lamp at 11.5 degrees — 15.7 m away rather than 2.5. Marking each end of each line to half a pixel now moves the recovered meet by 0.64 m, roughly six times the 0.11 m the high case above showed, for a lamp only about six times further away. The lines are visibly closer to parallel than they were, and the picture of that is the same fact the eigenvalue ratio already gave a number to.

Comparing the two locate figures directly — 2.5 m away and 0.11 m of error against 15.7 m away and 0.64 m — shows the error tracking the distance rather more closely than it tracks the elevation angle as such, which fits the geometry: what actually determines how parallel the five lines are, at a fixed spread of posts, is how far away their common meeting point is, and elevation is simply the variable this essay uses to move that distance, since a lower lamp above a fixed row of posts is necessarily a lamp further from the point under it. A reader who moved the posts further from the lamp’s foot at a fixed elevation would see the same kind of degradation for the same underlying reason, distance rather than angle in the abstract.

The lamp is the second eye makes a related point about distance and angle from a single ray rather than a pencil of five: there, the angle between a camera’s own line of sight and the lamp’s ray through the same point is what decides how much a pixel of marking error is worth in depth, and a lamp nearly behind the camera — a small angle — is exactly as poorly placed for that construction as a low lamp is for this one, for the same underlying reason. Both are cases of two or more lines meeting at a shallow angle, and a shallow angle is where a small error in placing either line does the most damage to where they are found to cross, whether the lines in question are a camera ray and a lamp ray or five posts’ own shadows.

The control that fixes nothing at all, at any elevation

Grazing elevation degrades the recovery smoothly. A genuinely degenerate arrangement, rather than merely a low one, breaks it outright, and the break is not a matter of degree.

Posts strung out along their own shadows: the meet is fixed to exactly 0The two arrangements in plan, with the lamp's own place on the ground marked. In the scatter the five lines from foot to shadow tip arrive at that place from five directions and fix it to 1.64e-2, and the lamp comes back to 6.5e-14 metres. In the row every post stands on the line its own shadow runs along, so all five feet and all five tips are on one line and there are not five lines at all — there is one, and one line meets a point nowhere in particular. The eigenvalue ratio is exactly nothing and the recovery declines rather than returning a place, which is the honest outcome and the one a solver that quietly divided by its own zero pivot would not have given.in plan: five posts two ways, and the lamp's own placethe scatter fixes its meet to 1.6e-2the row, to exactly 0
Fig. 5 The two arrangements in plan, with the lamp’s true position on the ground marked. In the ordinary scatter the five lines arrive from five different directions and fix that point to 1.64e-2 in the pencil’s own conditioning, recovering the lamp to 6.5e-14 m. In the row, every post stands on the line its own shadow runs along, so all five feet and all five tips lie on one single line rather than five — the eigenvalue ratio is exactly nothing, and the recovery declines to return an answer rather than dividing by its own zero pivot.

This is a different failure from a low elevation, and the difference is worth keeping separate in a reader’s mind. A low sun makes every line in the pencil close to parallel, but the pencil still has some spread — the eigenvalue ratio is small at 4 degrees, 2.66e-8, but it is not exactly nothing, and the arrangement of posts still determines a point in principle, however poorly. Posts strung out along the shadow direction are a true degeneracy rather than merely a shallow angle: they collapse the pencil to a single line regardless of elevation, because there are not five constraints any more, there is one, repeated five times, and one line does not determine a point at all. The right response to a genuinely degenerate arrangement is not a number with enormous uncertainty; it is a refusal, because “enormous uncertainty” would still imply the problem is solvable in principle and merely poorly conditioned, when in fact it is not solvable from that arrangement at any precision of marking whatsoever.

The two failures also answer to different remedies, which is the practical reason for keeping them apart. Low elevation is repaired, gradually, by marking more carefully or by adding more posts spread across a wider arc of bearings — either one raises the smaller eigenvalue rather than fixing it outright, buying back some of what a shallow angle costs. Posts strung along the shadow direction cannot be repaired by marking them more carefully at all, however precisely; the fix is entirely different, and consists of putting at least one post somewhere off that line, which changes the arrangement rather than the precision. A method that reported a number in both cases, rather than a number in the first and a refusal in the second, would be inviting a reader to spend effort improving marks in a situation where no amount of that effort could possibly help.

The limit at the horizon

The elevation sweep above never reaches zero, and there is a reason it should not be expected to reach it smoothly. As a lamp’s elevation falls toward the horizon, the distance to its foot on the ground grows without bound — and a lamp infinitely far away is exactly what a different essay on this site already draws, under a different name.

Six posts in sunlight from 34°The shadows are parallel in the world, so in the picture they meet at one point on the horizon — found from the drawn shadows to 3e-13 px.horizonshadows meet at x = -58, off the frameon the horizon, as it must be
Fig. 6 Six posts in sunlight from a bearing of 34 degrees, drawn by a light far enough away. The sun’s rays are parallel in the world, so its shadows are parallel too, and the lines this essay’s own construction would draw from each post’s foot through its shadow’s tip do not meet at a foot on the ground at all — they meet at a vanishing point on the horizon, found here to 3e-13 pixels.

That is the honest end state of the sweep this essay runs, rather than a different subject entirely. A finite lamp lowered without limit approaches the sun’s own geometry — its rays approach parallel, and the point this essay’s pencil of lines converges on recedes toward the horizon exactly as the eigenvalue ratio’s fall toward zero would suggest, without ever quite reaching either the sun’s perfect parallelism or a meeting point literally at infinity. The lamp, out of the picture and a light far enough away are the essays that take that limit seriously as its own subject, asking what evidence in a picture actually distinguishes a finite, distant lamp from the sun; this essay is the approach to that limit from the finite side, measured in the currency of marking error rather than of a vanishing point’s own drift.

The bearing in the borrowed figure, 34 degrees, is arbitrary and worth noting as such, because the sun’s own construction has no elevation to sweep at all — every bearing gives parallel shadows and a vanishing point exactly on the horizon, with none of the graded conditioning this essay measures for a finite lamp. That is the qualitative jump between the two constructions rather than a further point on the same curve: a genuinely infinite source is not merely the worst-conditioned case of a finite one, it is a different kind of object for which “where is it standing” is not even the right question to ask, only “which direction is it in” — the same shift in the question that the lamp, out of the picture makes explicit when it asks what a picture can still say once a position has become a direction instead.

The honest limit

Every number in this essay comes from perturbing each mark by an amount drawn independently from a fixed distribution, which is a reasonable model of a small, unbiased slip in placing a cursor on a screen and not a model of every way a real photograph goes wrong. A systematic error — a lens distortion left uncorrected, a post that is not quite vertical, a shadow whose tip is genuinely ambiguous because the ground beyond it is not flat — moves every line together rather than jittering them independently, and the eigenvalue analysis here says nothing about how such a shared error would propagate, because a shared error is not the kind of noise this construction’s conditioning number is a statement about.

The five posts themselves are also an assumption rather than a fact about every photograph a reader might have. They are placed to spread across a reasonable arc of bearings as seen from the lamp’s own foot, and a real scene may not offer that spread — objects casting usable shadows are frequently clustered together, along one wall or one row of a fence, which pushes the arrangement toward the strung-out case this essay’s own control draws deliberately rather than away from it. Nothing here says how much spread is enough beyond the two extremes shown; a reader with real posts to work from would need to compute the pencil’s own eigenvalue ratio for their actual arrangement, exactly as this essay computes it for the arrangement it draws, rather than assume that having “several” objects automatically escapes the trouble a single line has.

Nor does anything here say what elevation is “too low to bother,” in the way how many lamps make one lamp left the question of visible banding to a reader’s own eye and viewing distance. Whether 0.64 m of ground error at 11.5 degrees is acceptable depends entirely on what the recovered position is being used for, and the crossing this essay does supply — a metre of error below 14.4 degrees, at this particular spread of posts and this particular half-pixel of marking — is a number computed for one stated arrangement rather than a universal threshold. A wider spread of posts, or a more careful marking of each tip, moves that crossing; the essay’s contribution is the method for finding where it lands for a stated arrangement, not a single number good for every one.

None of this touches the height recovery’s own good behaviour either, and it is worth restating once more precisely because the essay’s headline numbers are all about the ground position going wrong. A reader who only needs to know how high a lamp was, rather than exactly where it stood, is asking the question this construction answers comfortably at every elevation this sweep covers — the control curve’s own worst scatter, 0.456 m at 4 degrees, is a fraction of the ground position’s 2.62 m at the same elevation, and a use case that can settle for the height alone is far less exposed to a low lamp’s own geometry than one that needs the full position.

The anchor this essay opens, grazing, is the same word a photographer uses for light arriving nearly level with the ground — grazing light — and the coincidence is not an accident of vocabulary. Grazing light is prized for the long shadows and raked texture it reveals precisely because the source is low, and this essay’s whole finding is the other side of that same fact: the light that makes texture most visible is, by the identical geometry, the light whose own position is hardest to recover from what it casts. The drawing does not run out of lines and a lamp behind the camera both continue this construction in directions this essay does not take up — more posts than the geometry strictly needs, and a lamp positioned somewhere the camera cannot see it directly — and both inherit the same conditioning behaviour measured here: the pencil of lines can always be drawn, and whether it is worth trusting is a question the arrangement itself answers before a single shadow is measured.

What links here

Computed from the collection, not written here: the essays that point at this one.

Shares its objects with

Essays that name at least two of the same things, and that neither author linked.

Named objects

A flat tag is an object no other essay names yet.

ConditioningDegeneracyElevationGrazing incidenceleast squaresleast-squares intersectionVanishing point