You calibrated, and the report puts the principal point near the top edge of the sensor with an error band as wide as the value itself. The instinct is to blame the camera; the report is actually blaming your images. This guide shows how to read the uncertainty values a solver prints next to each parameter, which outputs separate a converged calibration from a collapsed one, and how much measurement error an unconverged principal point injects into every pixel downstream. You get acceptance thresholds you can apply in two minutes, a worked error budget with the arithmetic on show, and a capture recipe that makes the fit converge. It is written for anyone commissioning a measurement cell, a robot pick station or a 3D rig on an industrial camera or 3D sensor.
Is a principal point hundreds of pixels off-centre ever real?
Almost never. Real lens decentre holds a converged principal point within about 1-2% of the array centre, so a genuine result lands within tens of pixels of the middle. One sitting roughly 927 px away with a ±151 px error band is an unconverged solve, not optics.
Work the arithmetic on a report that raises the question. The frame is 3,072 × 2,048 px, so the array centre is (1,536, 1,024) and the printed point (1,221.3, 151.5) sits (−315, −872) px from it: √(315² + 872²) ≈ 927 px, or 45% of the short axis, with the coordinate only 151.5 px from the top border. The ±151.2 px error band on that coordinate spans 7.4% of the frame height on its own.
Compare the physics. The principal point is where the lens axis meets the sensor plane, and assembly alignment holds it within a few percent of the array centre — about ±40 px on this frame at 2%. A knocked camera or a stressed mount shifts it by tens of pixels, not 900. Optics also cannot move between solvers, yet the second solver's result lands on the opposite side of the centre.
When the ± values are small instead, a genuinely off-centre point is a legitimate result and can still support measurement; that situation is its own topic, covered in Principal point outside the image: is the calibration still fine?. Here the band is the tell.
What do the ± numbers in a calibration report mean?
Each ± value is the solver's estimated one-standard-deviation uncertainty for that parameter. A principal point printed as 151.5 ± 151.2 px sits anywhere in a band about 300 px wide — when the band rivals the value, the data never pinned the parameter at all.
Concretely: that y-coordinate admits anything from the exact image border to a near-central result, so the printed value carries no usable information about the sensor. Healthy solves behave differently: on 5-12 MP frames with full corner coverage, standard errors of a few pixels — well under 1% of an axis — are normal.
Set the acceptance line in fractions of the image axis so it scales with sensor size: up to 1% converged, 1-5% weak enough to drift with board depth, above 5% failed. In the report, 151.2 px of 2,048 is 7.4% — failed — and the x-band of 89.0 px on 3,072 is 2.9%, weak even where it looks small.
Why would a solver print such bands? Parameters trade off when the image set is thin. With every board near-frontal, a shift of the principal point, a change of focal length and a change of the board's depth can leave the predicted corners almost unchanged, so the cost surface is a long flat valley rather than a bowl. The solver stops somewhere in that valley, steered by its distortion model and starting guesses, and the ± band it prints is the valley's width. Even the focal length's tidy band — ±561 px on 45,400.9 is about 1.2% — proves little, because correlated parameters inherit each other's weakness.
A bare value without a usable uncertainty is not a calibration result: metrology treats a calibration certificate without a stated uncertainty as incomplete for exactly this reason, and a solver's ± values deserve the same reading.
Why does one solver return a different principal point than another?
Because the data, not the tool, is at fault: the two solves put the point 1,684 px apart — √((2,073.6 − 1,221.3)² + (1,603.3 − 151.5)²) on the same 22 checkerboard images — so each landed in a different stretch of that flat valley, and neither printed value is a measurement you can ship.
Different parameterizations and starting points steer solvers apart only when the parameters are unobservable; on a converged dataset, two mainstream tools typically agree to within a few pixels. Treat the spread between tools as a measurement of your data's weakness: 1,684 px of spread says almost everything about these 22 images and almost nothing about either implementation.
The second solve's point (2,073.6, 1,603.3) is more central but not central: √((2,073.6 − 1,536)² + (1,603.3 − 1,024)²) ≈ 790 px from the array centre, still 39% of the short axis. Do not pick the more plausible number and do not average the two — plausibility is not verification. A quick test: split the images into two halves, re-run each solve on each half, and watch the principal point wander. Movement of hundreds of pixels between subsets confirms the data as the problem.
Which calibration outputs are instant red flags?
Three readings end the argument: a principal-point standard error above about 5% of the image axis (151.2 px against 2,048 is 7.4%), a radial term that cannot describe glass, and a focal length that converts to millimetres the lens barrel does not show.
- Principal-point standard error. Up to 1% of the axis is converged — ±20 px on a 2,048 px axis; 1-5% is weak; above 5% treat the calibration as failed. This report: 7.4% on y, 2.9% on x.
- Radial distortion terms. Machine-vision lenses hold corner distortion to roughly 0.1-2%, which is |k1| of about 0.001-0.05 in the standard radial model, with k2 only refining it. Here k1 = 0.6755 ± 0.1693 and k2 = −111.57 ± 46.96: evaluated near the corner, those terms correct coordinates by a factor of about −111, which no glass lens does. A coefficient that size is absorbing an unmodelled error — the term has collapsed, not calibrated.
- Focal length in pixels. Convert before judging: f_mm = f_px × pixel pitch. On 3.45 µm pixels, the printed 45,400.9 px is 157 mm — plausible for a long telephoto optic, absurd next to a 16 mm lens. Focus extension at close working distance moves effective focal length by a few percent, never by an order of magnitude.
- Per-image reprojection errors. One image sitting at several pixels while the rest hold near 0.5 px marks an outlier pose — drop it. A uniform elevation across all images indicts the dataset or the model, not one pose.
A plausibility check on the focal length takes a minute: the calculator below returns the focal length your working distance and field of view need, and a fitted value an order of magnitude away indicts the solve.
How much measurement error does a wrong principal point cause?
Budget a principal-point error as a pixel-for-pixel shift of every mapping, plus an edge term that grows with distortion: in the worked case below, a 600 px error with a 10% barrel lens leaves a corner about 100 px wrong — 200 times a 0.5 px gauging budget.
The shift alone is already disqualifying for measurement: an error of Δc px displaces every reprojected point by roughly Δc px, so the 927 px error of the opening report moves mapped features by nearly that much everywhere. Distortion adds a second term at the frame edges, because the distortion correction is referenced to the principal point. Work in fractions of the corner radius, with the frame corner at radius R_c:
Worked example, with illustrative inputs: the 3,072 × 2,048 frame above, a lens with 10% barrel distortion at the corner (k1 = −0.10 in this corner-normalized convention), and a fitted principal point 600 px off toward one corner — 29% of the short axis, the scale this failure class shows.
- Corner radius: half the diagonal, √(3,072² + 2,048²) / 2 ≈ 1,846 px.
- True corner correction: 0.10 × 1,846 ≈ 185 px inward.
- Radius from the shifted centre: 1,846 − 600 = 1,246 px.
- Correction the model then applies: 0.10 × (1,246 / 1,846)² × 1,846 = 0.10 × 0.456 × 1,846 ≈ 84 px.
- Residual at that corner: 185 − 84 ≈ 100 px.
A 0.5 px gauging budget is exceeded more than 200-fold, and averaging frames does not help: per-pixel noise shrinks with more images, this residual does not. Even a near-distortion-free lens, |k1| ≈ 0.01, leaves about 11 px at that corner. Gauging, robot guidance and laser-line extraction all inherit the error, so the calibration gets fixed first — the recapture costs an hour; a mispicked part costs more.
How do you capture checkerboard images that pin the principal point down?
Give every parameter something only it can explain: 25-40 images of a flat, matte checkerboard, tilted 30-60° in varying directions, placed in all four quadrants and against every edge, captured at two or three working distances with focus and iris locked.
- Board. Rigid and flat — a matte print bonded to flat glass or machined aluminium — with sharp, clean corners; at least 8 × 6 inner corners so each image constrains many points at once.
- Tilt. Lean the board 30-60° off the camera axis, in different directions across the set; keep frontal views to two or three frames at most, because frontal-only sets are what build the flat valley in the first place.
- Coverage. Over the set, place the board in all four quadrants and against every edge, filling roughly 20-80% of the frame; the frame's corners and edges carry the distortion information the solve needs.
- Depth. Shoot at two or three working distances spanning the range you will measure, with focus and iris locked; if the span forces a refocus, calibrate each focus setting as its own calibration.
- Quality. Short exposures or a still rig so no frame blurs, even lighting without saturation, and corner detection that succeeds in every image; when corners go missing, Checkerboard calibration not detecting corners: what to check walks the failure modes before you add more images.
- Re-run and judge. Expect the principal-point standard error to collapse well below 1% of the axis; if it does not, drop the worst images by per-image error and solve again.
Stereo rigs obey the same recipe with baseline geometry added, and angled camera pairs are allowed: Stereo calibration with angled cameras: what still works sorts out what a slanted pair preserves.
Shutter type does not matter for a static board; resolution and lens sharpness set corner quality, and any stable model from the area scan cameras range provides the hardware. The LS-CMR-0166 records 4000 × 3000 frames over USB3 at 30 fps, covering corner detail and quick re-shoots in one camera.
- Sensor format
- 1/1.7"
- Interface
- USB3
- Resolution
- 12 MP
- Shutter
- Rolling
When should you skip checkerboard calibration altogether?
If the task is height, profile or volume, a factory-calibrated laser profiler such as the MIS-DP3850-01P delivers calibrated 3D measurements straight from its optics and removes the checkerboard stage entirely; for 2D guidance, one converged calibration on a solid area camera is all you need.
Factory calibration happens against the instrument's own optics at the manufacturer, so a profiler's height readings need no board on your bench, and the solve's failure modes disappear with it. For 2D guidance on an area camera, the recipe above is the whole job: one converged solve, stored with its lens, focus setting and date. For the tightest corner detail, a 20 MP mono sensor such as the MV-CS200-10UM hands the solver more, sharper corners per image.
- Sensor format
- 1"
- Lens mount
- C-mount
- Interface
- USB3
- Resolution
- 16-25 MP
Where the task is profile, height or volume measurement rather than calibration craft, browse the 3D sensors range and let the instrument's own calibration carry the metrology.
- Type
- Laser profiler
The decision, in one line: distrust any principal point whose standard error exceeds about 1% of the image axis, recapture with tilt-corner-depth coverage until the band collapses below it, and ship nothing downstream in the meantime. To spec the camera and lens pair for a calibration station, start at the camera configurator; the measurement chain that turns converged intrinsics into millimetres continues in Depth map to real distance calibration for XYZ point clouds, and the 3D topic page collects the rest of the calibration guides.
Questions
Is the principal point supposed to sit exactly at the image centre?
No. Sensor alignment and lens decentre put a healthy principal point anywhere within about 1-2% of the array centre — roughly 20-40 px on a 2,000 px axis. The centre is a weak prior, not a target: a result 30 px off-centre is usually correct, and a result 900 px off with a huge error band is a failed solve.
Can I fix the principal point at the image centre instead of estimating it?
Yes, and when the image set is thin it is the safer choice. Calibration tools offer an option to hold the principal point at the array centre; the price is the lens's true decentre, typically a few pixels on an industrial lens. That fixed few-pixel error beats a free estimate carrying a ±150 px band.
What average reprojection error is good enough at the end of a solve?
Aim for 0.3-0.5 px mean reprojection error or less on a flat, matte board with locked focus. Between 0.5 and 1 px is workable for robot guidance but weak for measurement. Above 1 px, stop adding images and hunt a cause instead: board flatness, focus drift, motion blur or missed corners.
Do I need to recalibrate after touching focus or swapping the lens?
Yes. Focus and iris changes move effective focal length and principal point together, and any knock to the camera or lens mount can shift both. Recalibrate after every mechanical change, and in production re-check periodically against a known target, investigating drift beyond a pixel or two.


