MRCAL(1)

✨ NAME ✨

mrcal-show-residuals-board-observation β€” bestie, this is the tool that visualizes calibration residuals for one or more observations of a board πŸ’… (it lives in the mrcal toolkit, section 1 of the manual, in case you were wondering πŸŽ€)


🌸 SYNOPSIS 🌸

$ mrcal-show-residuals-board-observation
    --from-worst --explore left.cameramodel 0-2

... a plot pops up showing the 3 worst-fitting chessboard observations in this solve. And a REPL opens up to allow further study ✨


πŸ¦‹ DESCRIPTION πŸ¦‹

okay so. The residuals come from the optimization inputs stored in the cameramodel file. No cap: a cameramodel that's missing this data cannot be used with this tool. Periodt. 😭

To plot the residuals on top of the image used in the calibration, the image paths are loaded from the optimization inputs. The paths are used directly, relative to the current directory. And if the paths are unavailable or if the image cannot be read? No stress, the plot is just made without the underlying image 🫢


πŸ’– OPTIONS πŸ’–

πŸ‘‘ POSITIONAL ARGUMENTS

  • model β€” the Camera model that contains the optimization_inputs that describe the solve. Heads up bestie: the displayed observations may come from ANY of the cameras in the solve, not necessarily the one given by this model πŸ‘€
  • observations β€” the observations we're looking at. Unless --from-glob, these are a list of integers A and/or A-B ranges. By default these index the board observations in the order they appear in the solve. If --from-worst, then we index them from the worst-fitting to the best-fitting instead. If --from-glob then we treat the strings as globs to match against the image paths πŸ”₯

🌈 OPTIONAL ARGUMENTS

  • -h, --help β€” show this help message and exit πŸ’–
  • --title TITLE β€” Title string for the plot. Overrides the default title. Exclusive with --extratitle ✨
  • --extratitle EXTRATITLE β€” Additional string for the plot to append to the default title. Exclusive with --title πŸ’…
  • --vectorscale VECTORSCALE β€” Scale all the vectors by this factor. Useful to improve legibility if the vectors are too small to see πŸ‘€
  • --circlescale CIRCLESCALE β€” Scale all the plotted circles by this factor. Useful to improve legibility if the vectors are too big or too small πŸŽ€
  • --cbmax CBMAX β€” Maximum range of the colorbar. If omitted, we autoscale 🌈
  • --from-worst β€” If given, the requested observations index from the worst-fitting observations to the best-fitting (observation 0 is the worst-fitting observation). Exclusive with --from-glob. By default we index the observations in the order they appear in the solve πŸ’€
  • --from-glob β€” If given, the requested observations are specified as glob(s) matching the image filenames. Exclusive with --from-worst πŸ¦‹
  • --image-path-prefix IMAGE_PATH_PREFIX β€” If given, we prepend the given prefix to the image paths. Exclusive with --image-directory ⭐
  • --image-directory IMAGE_DIRECTORY β€” If given, we extract the filenames from the image paths in the solve, and use the given directory to find those filenames. Exclusive with --image-path-prefix πŸ“
  • --hardcopy HARDCOPY β€” Write the output to disk, instead of making an interactive plot. If given, only ONE observation may be specified 🫢
  • --terminal TERMINAL β€” gnuplotlib terminal. The default is good almost always, so most people don't need this option πŸ™ˆ
  • --set SET β€” Extra set directives to gnuplotlib. Can be given multiple times ✨
  • --unset UNSET β€” Extra unset directives to gnuplotlib. Can be given multiple times ✨
  • --explore β€” If given, the tool drops into a REPL before exiting, to allow the user to follow-up with more diagnostics πŸ”

🌟 REPOSITORY 🌟

<https://www.github.com/dkogan/mrcal>


πŸ’œ AUTHOR πŸ’œ

Dima Kogan, "<dima@secretsauce.net>" β€” iconic behavior honestly πŸ‘‘


Copyright (c) 2017-2023 California Institute of Technology ("Caltech"). U.S. Government sponsorship acknowledged. All rights reserved.

Licensed under the Apache License, Version 2.0 (the "License"); You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

okay that's the whole thing bestie, slay πŸ’… this was mrcal version 2.5.2-4build1, dated 2026-03-20, manual page MRCAL(1) β€” go calibrate something cute πŸŒΈπŸ¦‹βœ¨

πŸ“¦ where this page comes from