Example and docs for blooming

This commit is contained in:
connor committed 2026-10-16 16:43:08 -04:00
1 parent 7e1b64c186
commit fbd7ce4147
4 files changed
+122 -4

No files matched your search

+16
View File
@@ -588,6 +588,22 @@ half down; each pixel it reaches takes what it has room for and passes the
rest on, until it runs out or leaves the frame. Into the neighbors, each of
the 8 takes an eighth, and what overfills them drains.
How far a streak runs is the excess over the full well, times the
efficiency, divided among pixels that each hold one full well. For a bright
star only a pixel or two saturate, by a little, and the streak is short and
a pixel or two wide. The Sun is different. Its disk is about 85 pixels
across in the example camera, so the streak is 85 pixels wide, and at 0.4 ms
each pixel of it holds about 100,000 full wells: a column through the middle
of the disk has some 8 million full wells of excess. With no drain
(efficiency 1), half of that runs each way, enough to fill thousands of
frames' worth of column, so every pixel in those columns saturates and the
rest runs off the edges: a white band the width of the Sun, top to bottom
(`examples/scenes/sun-glare.toml`). That is what a CCD without an
anti-blooming drain records. A drain rated for 100 to 1,000 times
overexposure, as is typical, still leaves the Sun at about 100,000 times;
only an efficiency of about 5e-5 would shorten this streak to about 200
pixels each way.
Blooming happens to the charge, so it comes after the shot noise (and the
fixed pattern) and before the read noise and the ADC. With blooming on, the
sensor pass works in three steps rather than one: it writes each value's