Brownian motion · A later measurement model

The particle.
The camera.
The estimate.

A camera averages motion during exposure and adds uncertainty to every position. Discover why those errors change what you can infer, even when the particle follows exactly the same path.

Start with ideal molecular-number inference → · Return to the argument

Noise-calibration assumption: stationary-feature clicks and the moving particle must have the same localization variance. The clicks cannot establish that assumption.

BM-08 · Observe, then infer

What did the camera change?

Static worked example

CurrentThese numbers match the current settings.

Model note
  • Primary output naiveD: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output centeredD: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output covarianceD: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output pairD: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output covarianceNoiseVariance: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output stationaryNoiseVariance: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output expectedVariance: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output expectedCovariance: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output sampleVariance: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output sampleCovariance: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output sdVariance: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output sdCovariance: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output naiveExpectation: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output modelDiffusion: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output pairDegrees: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output pairCount: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output emptyPairInterval: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output pairLowerClipped: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output recordingDraws: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output requestDraws: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output measurementDraws: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output reusedRecording: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output reusedObservation: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output retainedBytes: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output driftFit: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output noiseInterval: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output naiveInterval: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output centeredInterval: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output pairInterval: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output positions: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output idealPositions: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output blurredPositions: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output increments: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output times: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output stationaryClicks: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output latentWitness: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output speedTimes: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output idealSpeeds: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output cameraSpeeds: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output speedRatios: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output speedCrossover: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output coverageDraws: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output coverageIntervals: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output coverageNaiveCount: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output coveragePairCount: Host calculation (inference.bm08). Owner inference.bm08.
  • Primary output coverageEmptyCount: Host calculation (inference.bm08). Owner inference.bm08.
  • Seed 1905.
  • Accepted input revision 1.
  • Snapshot version 1.
  • Not modeled: Higher-order optical aberrations; only uniform exposure blur and Gaussian localization error.

A noisy image is not a new physical trajectory. Keep one wandering particle and change how it is observed. Then compare the estimates that ignore camera error with a procedure that accounts for it.

1 · Re-observe the same path

Exposure starts at each frame time and cannot exceed the spacing. Noise, stage drift, coordinates and frame selection leave the retained physical path unchanged.

2 · Declare what is known about noise

Changing the statistical procedure alone reuses the same observations. Stationary clicks have independent errors and an unknown constant feature location; they are not clicks on the moving particle.

3 · Change the physical setup
These changes start a new physical run

Fluid drift belongs to the physical path. Stage drift belongs to the measurement. Either produces apparent drift, but only the first changes this recording.

Comparisons use accepted settings, not unfinished drafts. Reset stage drift with a camera-error comparison; fluid drift remains an explicit physical input.

Static worked example. No calculation has started in this browser.

Accepted physical seed 1905; D = 0.42944 μm²/s; 101 frames in 2 coordinates; spacing 1 s; exposure 0.5 s; localization error 0.2 μm. Stage drift 0 μm/s; fluid drift 0 μm/s.

-8.74250-1.3687506.0052100x position (μm)Exposure start time (s)
Dashed: retained position at frame start. Dotted: exposure average before stage drift or localization error. Solid: camera observation. Lines only connect the selected frames; the y coordinate, when selected, is included in all estimates and tables.

Four estimates, different assumptions

Accepted diffusivity estimates (μm²/s)
Generating value0.42944
Ignore camera error and drift0.40608
Fit drift, but ignore camera error0.4067
Covariance estimate; known synthetic drift removed0.51042
Disjoint pairs; noise and exposure corrected0.47601

The covariance estimate uses the explicitly known synthetic drift, not a secretly fitted mean. It has no general confidence interval here. The pair procedure fits drift within its disjoint pairs and does not use generating D. Negative unconstrained estimates remain visible as diagnostics.

Which intervals are actually valid?

Ignoring the camera and drift

The zero-drift independent-increment interval does not apply to noisy, exposed, or drifting observations. Its point estimate remains visible as a deliberately naive comparison.

Fitting drift only

Fitting drift does not remove camera noise or the adjacent-increment correlation. The simple centered chi-square interval is not admitted.

Disjoint pairs, with a camera model

0.325690.69675

95% target coverage; μm²/s. Conservative procedure combining stationary-click noise uncertainty with disjoint-pair variance uncertainty.

50 disjoint pairs; 98 residual degrees of freedom.

Look for the camera’s fingerprint

Neighboring displacements share a localization error with opposite signs. Exposure averaging creates a different correlation. A variance alone cannot distinguish these effects.

Per-coordinate moments after subtracting known synthetic drift; μm²
MomentSampleCamera modelAsymptotic sampling SD
Increment variance0.812150.795730.079699
Adjacent-increment covariance0.104340.0315730.0564

The last column is a large-sample MA(1) approximation for the moment estimates, not a confidence interval for D. It is particularly unreliable for very small samples. Expected naive D under this camera: 0.39787 μm²/s.

Inspect stationary clicks and inferred noise

Stationary-click variance: 0.027327 μm². Covariance-based noise estimate: -0.019274 μm². Noise bounds used by the pair procedure: 0.0186970.04333 μm². In exact-noise mode the two bounds are the declared value; otherwise they consume half the allowed error probability.

Independent stationary-feature positions (μm)
Clickxy
10.11424-0.12339
20.0130490.14156
30.301720.061022
4-0.22497-0.18133
5-0.187340.17894
60.23688-0.045071
7-0.035658-0.11956
8-0.0117320.010424
90.0249870.13217
10-0.12084-0.11937
110.134120.16166
120.33155-0.064944
13-0.234340.17682
14-0.043285-0.14566
150.14079-0.051643
16-0.044961-0.049523
170.038157-0.042038
180.22326-0.2329
190.2486-0.27179
20-0.074478-0.41927
210.342350.39974
22-0.138910.069009
23-0.21279-0.089314
24-0.021301-0.1282
250.011022-0.07899
26-0.18005-0.23813
270.0488980.060165
280.12458-0.012509
29-0.10319-0.052014
30-0.053618-0.01365
Read all accepted frame positions
Every selected coordinate; exposure-start time in seconds, positions in μm
StartCoordinateLatent startExposure averageCamera position
0x00.0595930.40616
0y00.493360.58492
1x0.767550.483810.45831
1y1.46641.65311.7576
2x1.35221.93741.7977
2y1.82082.36112.3077
3x1.65821.761.5403
3y4.76495.34065.6798
4x1.82592.22542.4785
4y6.1066.40786.9054
5x2.69182.45242.6495
5y6.62187.10457.14
6x2.30152.28692.2653
6y6.86747.76947.9798
7x2.53763.32023.6063
7y7.8158.12898.3653
8x3.92194.02694.0995
8y7.97728.03567.8886
9x3.6624.03963.9277
9y8.73928.34128.4006
10x4.87845.0355.1915
10y9.85199.60819.6218
11x3.21882.95863.114
11y10.0969.80119.6936
12x1.71131.63581.6848
12y8.69358.65158.8669
13x1.57581.40061.2002
13y9.3879.24049.443
14x2.09852.21492.3735
14y10.44110.0879.9655
15x2.37942.17282.162
15y9.68019.696310.071
16x3.05333.55693.6126
16y10.37710.18510.139
17x2.98363.03053.2455
17y10.01910.52910.491
18x3.95923.88424.1016
18y10.07710.24810.194
19x4.64134.76654.8111
19y10.52810.52510.182
20x6.00525.80675.9848
20y9.66989.685210.06
21x5.67374.58764.7685
21y9.53299.95849.6914
22x3.55483.49273.5383
22y9.29179.71429.7763
23x2.65722.35272.4738
23y9.860610.16910.253
24x2.90662.65672.7187
24y11.14511.57911.513
25x3.02053.25333.3214
25y10.70811.23711.085
26x2.29342.52472.6839
26y10.44810.9710.838
27x1.68842.04061.7957
27y11.69711.54411.487
28x3.36043.34693.3858
28y10.95910.6310.509
29x4.02014.27094.3107
29y10.219.43718.9681
30x3.69983.67063.7236
30y8.87458.85839.2388
31x4.90564.55994.7906
31y9.47589.34299.443
32x5.13825.28295.1973
32y10.679.88810.094
33x4.98664.43354.2462
33y7.69477.04347.0207
34x3.18142.64882.6366
34y4.99344.82964.8252
35x2.45132.11141.8492
35y5.65035.90315.8574
36x3.5834.13994.2714
36y5.40766.47226.5851
37x5.08965.75855.5093
37y7.29426.93736.9627
38x4.98754.48224.757
38y7.53747.57977.5261
39x4.78114.68714.5648
39y6.85217.68467.4462
40x4.19583.77553.5298
40y7.7957.91497.4695
41x4.07654.26184.2868
41y9.14558.59258.4906
42x3.00933.37363.2438
42y7.59177.82927.873
43x2.88043.13743.4481
43y7.97718.52598.2192
44x4.47564.52384.6473
44y8.34958.22938.186
45x5.24295.62745.5681
45y7.99997.93688.2303
46x5.6335.36475.3908
46y8.56889.56119.5009
47x5.03695.06624.7665
47y10.8211.46611.533
48x4.03584.39324.2725
48y11.85111.63211.768
49x5.19795.12335.4984
49y10.33110.25710.197
50x4.72594.72834.9794
50y10.25610.58710.651
51x5.07254.90324.7221
51y9.77719.12119.1527
52x4.24564.17784.245
52y9.50519.54829.5819
53x4.93014.81175.0577
53y9.43639.30269.504
54x5.34375.17715.2083
54y8.84948.83358.5755
55x5.08665.3465.7544
55y8.6448.07187.9578
56x4.98064.35194.1889
56y7.66197.88747.9279
57x4.44483.98833.8757
57y8.55518.9329.1778
58x2.65132.77952.5306
58y8.87019.28689.0655
59x2.58533.00013.0493
59y10.10510.0939.995
60x2.95573.48653.4012
60y10.32110.22810.189
61x3.40513.66523.7788
61y9.966710.25610.348
62x2.74832.6782.9185
62y10.96411.26111.034
63x1.99011.46991.5596
63y11.81512.08512.099
64x-0.51039-1.0691-0.79414
64y11.62611.59611.893
65x-0.55716-0.60743-0.55769
65y11.44710.74110.722
66x-0.63519-0.76667-0.67494
66y10.0039.63759.8175
67x-0.013952-0.28854-0.098885
67y8.69988.7089.1709
68x0.254950.098652-0.1038
68y9.44749.941410.21
69x0.53966-0.0610820.10451
69y10.55611.38511.368
70x-0.9578-1.1715-0.94174
70y12.0912.18512.175
71x-2.5558-2.2148-1.9856
71y12.14211.92811.685
72x-1.1594-1.9262-1.9588
72y11.92711.45511.781
73x-2.6058-3.5836-3.1923
73y11.17111.54711.544
74x-3.8485-3.1959-3.0037
74y12.14511.90812.213
75x-4.0183-4.5268-4.7412
75y12.12311.80111.56
76x-4.5134-4.4151-4.6273
76y12.06612.04612.437
77x-5.3005-5.1999-5.1619
77y12.37312.73612.828
78x-5.7773-6.3041-6.1381
78y13.83114.25314.282
79x-6.6899-6.6807-6.4111
79y1414.11113.931
80x-5.5471-5.4157-5.5802
80y12.99312.57512.341
81x-4.4161-4.292-4.4776
81y12.93912.53812.542
82x-4.9302-5.5939-5.667
82y12.68712.30812.375
83x-5.7146-5.5407-5.5217
83y12.82912.84212.75
84x-5.8769-5.8112-5.6515
84y13.27413.30913.637
85x-6.6215-7.0299-7.1864
85y13.58214.12314.411
86x-7.3474-7.5472-7.5471
86y13.58213.49113.521
87x-7.1866-7.0916-7.1148
87y12.85112.87212.874
88x-6.8293-6.9662-6.9872
88y12.38712.67612.725
89x-7.1942-7.1278-7.1921
89y13.20612.41812.761
90x-7.4735-6.8345-7.1217
90y12.23312.07812.556
91x-7.2876-7.418-7.3593
91y12.50812.15211.962
92x-7.3322-7.543-7.5144
92y11.12811.38611.627
93x-7.9369-7.7487-7.9716
93y10.54210.07310.16
94x-7.2622-7.0985-7.1378
94y11.17911.37711.174
95x-6.4592-6.7737-6.6992
95y10.34510.55410.572
96x-7.2522-7.6636-7.6852
96y9.879910.119.9835
97x-7.7138-7.5058-7.5345
97y9.5329.52149.658
98x-7.2317-7.6763-7.4877
98y8.93118.92598.7872
99x-7.3981-7.4369-7.5648
99y9.46259.09489.1115
100x-8.7425-8.5387-8.3366
100y8.04888.37318.4126

Faster pictures need not reveal a physical speed

This separate analytical comparison holds the accepted diffusivity and localization error fixed, sets exposure to zero, and varies a hypothetical observation interval. It does not create extra frames on the retained quarter-second grid. Neither curve is an instantaneous velocity.

40.250.00250.463387.2886114.65Apparent spread speed (μm/s)Hypothetical spacing (s); logarithmic axes
Dashed: ideal spread divided by interval. Solid: the same model with localization noise and zero exposure. These are analytical comparisons, not extra observed frames or instantaneous particle velocities.

Noise-only crossover interval: 0.093145 s. At positive exposure, blur also changes the spread; that is not part of this zero-exposure comparison.

Analytical zero-exposure comparison, not additional sampled data
Spacing (s)Ideal (μm/s)With noise (μm/s)Ratio
40.463380.468741.0116
10.926760.968961.0455
0.251.85352.17151.1716
0.06253.7075.851.5781
0.019.267629.7643.2116
0.002518.535114.656.1853

Does the interval procedure cover the generating value?

Compare 100 other hypothetical paths under the same physical and camera settings. The dashed comparison deliberately applies the naive formula even where it is invalid; a pleasing interval is not evidence that its assumptions hold.

Run hypothetical experiments explicitly to compare procedures.

Every trial, including misses and empty sets, is retained. Changing the noise procedure reuses the same hypothetical identities. The primary path and camera observations are not replaced. A realized coverage fraction need not equal the target.

Accepted identity, random streams and limits

Run bm08-_R_bav5uiv5b_/run/1; snapshot 1; revisions {"input":1,"observer":0,"measurement":0,"estimator":0}. Owner inference.bm08.

Retained path and bridge draws: 32896. New latent work for this request: 32896. Camera/click stream evaluations: 524. Hypothetical experiment draws: 0. Retained latent bytes: 131600.

Source identity: source:sha256:c7ff276529014c8c0b7bc51fdeef19fe4faf6888459839a8196da9b6d99cffe0. Two latent coordinates and exact Brownian subinterval averages are retained on 4,112 quarter-second intervals. Frame errors have separate timestamp-indexed streams. Remeasurement may evaluate the same noise draws again; it does not create a new latent trajectory. No irregular timing, overlapping exposure, censoring, empirical import or arbitrary camera likelihood is admitted. This is host arithmetic, not audited WASM or historical evidence.

Each placement has its own accepted settings, worker and observations.

Why these procedures differ

An exposure is an average, not a point

The camera model uses a uniform exposure beginning at each frame time. Its position is the average latent position during that exposure, plus stage drift and independent Gaussian localization error. At zero exposure it uses the instantaneous frame-start position. The generated bridge integrals make these averages consistent with the same Brownian path.

Yi=1Tetiti+TeX(s)ds+vstage(ti+Te/2)+εi,εiN(0,σ2)Y_i=\frac{1}{T_e}\int_{t_i}^{t_i+T_e}X(s)\,ds+v_{\mathrm{stage}}(t_i+T_e/2)+\varepsilon_i,\quad \varepsilon_i\sim\mathcal N(0,\sigma^2)

Neighbors are correlated

For uniform, non-overlapping exposures and equally spaced frames, the per-coordinate variance and adjacent covariance of drift-subtracted increments are:

γ0=2D(ΔtTe/3)+2σ2,γ1=DTe/3σ2\gamma_0=2D(\Delta t-T_e/3)+2\sigma^2,\qquad \gamma_1=DT_e/3-\sigma^2

Localization error enters two neighboring displacements with opposite signs. Motion blur contributes the other sign. Ignoring both can understate or overstate diffusion. Subtracting fitted drift alone does not remove either camera effect.

Use covariance, or choose independent pairs

For known drift, the combination of the second moment and neighboring product cancels the localization and blur terms. The covariance point estimate can still be negative in a finite sample; clipping it would conceal a diagnostic.

D^CVE=γ^0/2+γ^1Δt\widehat D_{\mathrm{CVE}}=\frac{\widehat\gamma_0/2+\widehat\gamma_1}{\Delta t}

A different route takes disjoint frame pairs (0,1), (2,3), and so on. No pair shares a position error, and exposure is no longer than the spacing. These pair displacements are independent Gaussian vectors. Fitting one drift per coordinate leaves q = d(K − 1) degrees of freedom for K pairs. A chi-square interval for their variance can therefore be inverted using the known exposure and localization variance.

D=V2σ22(ΔtTe/3)D=\frac{V-2\sigma^2}{2(\Delta t-T_e/3)}

When localization variance comes from independent stationary-feature clicks, half the allowed error probability goes to its variance interval and half to the pair-variance interval. Combining their endpoints gives a conservative confidence set. The set is intersected with D ≥ 0. An empty intersection is a possible outcome and is retained as a miss, not turned into a positive answer.

Shorter intervals can magnify camera error

With zero exposure and mean drift removed, dividing the coordinate spread by the observation interval gives an apparent speed. Localization error dominates below the noise-only crossover interval σ²/D. This does not reveal a finite instantaneous Brownian velocity.

vapp,ideal=2D/Δt,vapp,camera=2DΔt+2σ2Δtv_{\mathrm{app,ideal}}=\sqrt{2D/\Delta t},\qquad v_{\mathrm{app,camera}}=\frac{\sqrt{2D\Delta t+2\sigma^2}}{\Delta t}

Keep this later model separate from the paper

These are original draft explanations of modern camera and inference models, not a transcription of Einstein’s argument. Synthetic camera observations are not experimental evidence for a physical suspension. The interval procedures assume constant drift, constant diffusivity, exact timing and calibration, uniform exposure, and independent Gaussian position errors. No irregular or censored data importer is supplied.

Berglund (2010): camera-based single-particle tracking · Vestergaard, Blainey and Flyvbjerg (2014): covariance-based diffusion estimation · Read the uncertainty foundation