|
| 1 | +Camera Models |
| 2 | +============= |
| 3 | + |
| 4 | +COLMAP implements different camera models of varying complexity. If no intrinsic |
| 5 | +parameters are known a priori, it is generally best to use the simplest camera |
| 6 | +model that is complex enough to model the distortion effects: |
| 7 | + |
| 8 | +- ``SIMPLE_PINHOLE``, ``PINHOLE``: Use these camera models, |
| 9 | + if your images are undistorted a priori. These use one and two focal length |
| 10 | + parameters, respectively. Note that even in the case of undistorted images, |
| 11 | + COLMAP could try to improve the intrinsics with a more complex camera model. |
| 12 | +- ``SIMPLE_RADIAL``, ``RADIAL``: This should be the camera model of choice, |
| 13 | + if the intrinsics are unknown and every image has a different camera |
| 14 | + calibration, e.g., in the case of Internet photos. Both models are simplified |
| 15 | + versions of the ``OPENCV`` model only modeling radial distortion |
| 16 | + effects with one and two parameters, respectively. |
| 17 | +- ``OPENCV``, ``FULL_OPENCV``: Use these camera models, if |
| 18 | + you know the calibration parameters a priori. You can also try to let COLMAP |
| 19 | + estimate the parameters, if you share the intrinsics for multiple images. Note |
| 20 | + that the automatic estimation of parameters will most likely fail, if every |
| 21 | + image has a separate set of intrinsic parameters. |
| 22 | +- ``SIMPLE_RADIAL_FISHEYE``, ``RADIAL_FISHEYE``, ``OPENCV_FISHEYE``, ``FOV``, |
| 23 | + ``THIN_PRISM_FISHEYE``: Use these camera models for fisheye lenses |
| 24 | + and note that all other models are not really capable of modeling the |
| 25 | + distortion effects of fisheye lenses. The ``FOV`` model is used by |
| 26 | + Google Project Tango (make sure to not initialize `omega` to zero). |
| 27 | + |
| 28 | +You can inspect the estimated intrinsic parameters by double-clicking specific |
| 29 | +images in the model viewer or by exporting the model and opening the |
| 30 | +`cameras.txt` file. |
| 31 | + |
| 32 | +To achieve optimal reconstruction results, you might have to try different |
| 33 | +camera models for your problem. Generally, when the reconstruction fails and the |
| 34 | +estimated focal length values / distortion coefficients are grossly wrong, it is |
| 35 | +a sign of using a too complex camera model. Contrary, if COLMAP uses many |
| 36 | +iterative local and global bundle adjustments, it is a sign of using a too |
| 37 | +simple camera model that is not able to fully model the distortion effects. |
| 38 | + |
| 39 | +You can also share intrinsics between multiple |
| 40 | +images to obtain more reliable results |
| 41 | +(see :ref:`Share intrinsic camera parameters <faq-share-intrinsics>`) or you can |
| 42 | +fix the intrinsic parameters during the reconstruction |
| 43 | +(see :ref:`Fix intrinsic camera parameters <faq-fix-intrinsics>`). |
| 44 | + |
| 45 | +Please, refer to the camera models header file for information on the parameters |
| 46 | +of the different camera models: |
| 47 | +https://github.com/colmap/colmap/blob/main/src/colmap/sensor/models.h |
0 commit comments