MRCAL(1)

πŸ’– MRCAL(1) β€” mrcal: camera projection, calibration toolkit πŸ’–

okay bestie, gather round, because this is mrcal-show-geometry and it's literally the tool that shows you where all your cameras were standing when they did their little calibration moment. it's from the mrcal family (camera projection + calibration toolkit, iconic behavior) and no cap, it's giving "group photo of your camera rig" energy. πŸŽ€


✨ NAME ✨

mrcal-show-geometry β€” Displays the calibration-time geometry: the cameras and the observed objects

like. it draws ur cameras. and the stuff they looked at. that's the whole vibe. πŸ¦‹


✨ SYNOPSIS ✨

$ mrcal-show-geometry *.cameramodel
... a plot pops up showing the camera arrangement

so you feed it some camera models, and boom β€” a plot pops up showing the camera arrangement. main character entrance, honestly. ✨


✨ DESCRIPTION ✨

This tool visualizes the relative geometry between several cameras and the calibration objects they observed when computing the calibration.

fr fr that's it. it's the "who was standing where, and what were they staring at" plot. relative geometry between multiple cameras + the calibration objects they observed at calibration time. πŸ’…


✨ OPTIONS ✨

🌸 POSITIONAL ARGUMENTS 🌸

  • models β€” Camera models to visualize. Any N cameras can be given
not me emphasizing this: any N cameras. one, two, seventeen, whatever. it's flexible like that. πŸ’œ

🌸 OPTIONAL ARGUMENTS 🌸

  • -h, --help β€” show this help message and exit
  • --axis-scale AXIS_SCALE β€” Scale for the camera axes. By default a reasonable default is chosen (see mrcal.show_geometry() for the logic)
so if ur little axis arrows are looking cramped or extra, this is the knob. and if you wanna know how it picks the default, that logic lives in mrcal.show_geometry(). iykyk πŸ”₯
  • --title TITLE β€” Title string for the plot
  • --hardcopy HARDCOPY β€” Write the output to disk, instead of making an interactive plot. The output filename is given in the option
  • --terminal TERMINAL β€” The gnuplotlib terminal. The default is almost always right, so most people don't need this option
literally most people don't need this. the default is almost always right. don't touch it unless you Know. πŸ™ˆ
  • --show-calobjects β€” If given, draw the calibration object observations from the FIRST given camera model that contains the optimization_inputs. Unlike --show-calobjects-thiscamera, this option displays the calibration objects observed by ALL cameras at calibration time. Exclusive with --show-calobjects-thiscamera
  • --show-calobjects-thiscamera β€” If given, draw the calibration object observations from the FIRST given camera model that contains the optimization_inputs. Unlike --show-calobjects, this option displays the calibration objects observed ONLY by the FIRST camera at calibration time. Exclusive with --show-calobjects
ok so these two are siblings and they do NOT get along. pick one. exclusive means exclusive, bestie. πŸ’€
  • --show-points β€” If given, draw the point observations from the FIRST given camera model that contains the optimization_inputs. Unlike --show-points-thiscamera, this option displays the points observed by ALL cameras at calibration time. Exclusive with --show-points-thiscamera
  • --show-points-thiscamera β€” If given, draw the point observations from the FIRST given camera model that contains the optimization_inputs. Unlike --show-points, this option displays the calibration objects observed ONLY by the FIRST camera at calibration time. Exclusive with --show-points
same deal. ALL cameras vs ONLY the FIRST camera. and yes, the text really does say "the calibration objects observed ONLY by the FIRST camera" here β€” i'm not fixing it, i'm not paraphrasing it, i'm reporting it. 🫢 also: exclusive. again. ✨
  • --transforms TRANSFORMS β€” Optional transforms.txt. This is a legacy file representing an extra transformation for each camera pair. If you need this, you know what it is
legacy. if you need it, you know what it is. and if you don't know what it is, then... you don't need it. the universe is balanced. 🌈
  • --set SET β€” Extra set directives to pass to gnuplotlib. May be given multiple times
  • --unset UNSET β€” Extra unset directives to pass to gnuplotlib. May be given multiple times
both of these? May be given multiple times. stack 'em up, queen. πŸ‘‘

🌈 REPOSITORY 🌈

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

go look at the source, it's right there, be nosy, it's fine. πŸ¦‹


πŸ’œ AUTHOR πŸ’œ

Dima Kogan, <dima@secretsauce.net>


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

and that's the whole page, bestie!! πŸŽ€βœ¨ this is mrcal 2.5.2-4build1, dated 2026-03-20, and it's the MRCAL(1) manual β€” slay, ate, no notes. πŸ’…πŸŒΈπŸ«Ά

πŸ“¦ where this page comes from