Add example data types for calibrateCamera call
authorMartin Ueding <dev@martin-ueding.de>
Thu, 23 Apr 2015 11:30:14 +0000 (13:30 +0200)
committerDikay900 <dark900@xyz.de>
Tue, 28 Apr 2015 15:24:37 +0000 (17:24 +0200)
commit9e29762838717075fbea30a306ac15dafb3855f8
treeea550e99517092da4e60705cf68247aa98ee98d9
parentda229cce9a75d1403221e171cc7e42401867b398
Add example data types for calibrateCamera call

It took me a while to figure out what was meant with

    OpenCV Error: Assertion failed (i < 0) in getMat

While searching for this error message I found [a list of error
messages](https://adventuresandwhathaveyou.wordpress.com/2014/03/14/opencv-error-messages-suck/)
which also explained what the problem was: The data type for `rvecs` was
not a simple `cv::Mat` but a `std::vector<cv::Mat>`.

After I fixed that, I got the next error message:

    OpenCV Error: Assertion failed (ni > 0 && ni == ni1) in
    collectCalibrationData, file
    /build/buildd/opencv-2.4.9+dfsg/modules/calib3d/src/calibration.cpp,
    line 3193

The problem here was that my data type for the `objectPoints` was just
`vector<Vec3f>` and not `vector<vector<Vec3f>>`.

In order to save other people the time looking for this, I added
explicit examples of the needed data types into the documentation of the
function. I had to re-read the current version a couple of times until I
can read the needed levels of `vector<>`. Having this example would have
really helped me there.

Conflicts:
modules/calib3d/include/opencv2/calib3d.hpp
modules/calib3d/doc/camera_calibration_and_3d_reconstruction.rst