MRGINGHAM(1)

NAME
mrgingham-observe-pixel-uncertainty - Evaluate observed point distribution from stationary observations

SYNOPSIS
  $ observe-pixel-uncertainty '*.png'
    Evaluated 49 observations
    mean 1-sigma for independent x,y: 0.26

  $ mrcal-calibrate-cameras --observed-pixel-uncertainty 0.26 .....
  [ mrcal computes a camera calibration ]

DESCRIPTION
mrgingham has finite precision, so repeated observations of the same board will produce slightly different corner coordinates. This tool takes in a set of images (assumed observing a chessboard, with both the camera and board stationary). It then outputs the 1-standard-deviation statistic for the distribution of detected corners. This can then be passed in to mrcal: 'mrcal-calibrate-cameras --observed-pixel-uncertainty ...'

The distribution of the detected corners is assumed to be gaussian, and INDEPENDENT in the horizontal and vertical directions. If the x and y distributions are each s, then the LENGTH of the deviation of each pixel is a Rayleigh distribution with expected value s*sqrt(pi/2) ~ s*1.25

THIS TOOL PERFORMS VERY LIGHT OUTLIER REJECTION; IT IS ASSUMED THAT THE SCENE IS STATIONARY

OPTIONS

  POSITIONAL ARGUMENTS
  input                 Either 1: A glob that matches images observing a
                        stationary calibration target. This must be a GLOB. So
                        in the shell pass in '*.png' and NOT *.png. These are
                        processed by 'mrgingham' and the arguments passed in
                        with --mrgingham. Or 2: a vnlog representing corner
                        detections from these images. This is assumed to be a
                        file with a filename ending in .vnl, formatted like
                        'mrgingham' output: 3 columns: filename,x,y

  OPTIONAL ARGUMENTS
  -h, --help            show this help message and exit
  --show {geometry,histograms}
                        Visualize something. Arguments can be: "geometry":
                        show the 1-stdev ellipses of the distribution for each
                        chessboard corner separately. "histograms": show the
                        distribution of all the x- and y-deviations off the
                        mean
  --mrgingham MRGINGHAM
                        If we're processing images, these are the arguments
                        given to mrgingham. If we are reading a pre-computed
                        file, this does nothing
  --num-corners NUM_CORNERS
                        How many corners to expect in each image. If this is
                        wrong I will throw an error. Defaults to 100
  --imagersize IMAGERSIZE IMAGERSIZE
                        Optional imager dimensions: width and height. This is
                        optional. If given, we use it to size the "--show
                        geometry" plot

REPOSITORY
<https://github.com/dkogan/mrgingham>

AUTHOR
Dima Kogan, "<dima@secretsauce.net>"

LICENSE AND COPYRIGHT
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

Copyright 2017-2018 California Institute of Technology

Copyright 2017-2018 Dima Kogan ("dima@secretsauce.net")