CalibMethod
specify algorithm to use for camera/projector calibrationAvailable algorithms / methods:
- Manual: no automatic calibration (off)
- Auto: chooses from methods below according to available calibration parameters
- Gold Standard (see Hartley,Zisserman: âMVGâ)
- Zhang* (no lens distortion) [http://research.microsoft.com/en-us/um/people/zhang/calib/]
- Zhang* with 1 radial lens distortion term
- Zhang* with 2 radial lens distortion terms
- Zhang* with 2 radial and 2 tangential lens distortion terms
- Zhang* planar object (no lens distortion)
- Zhang* planar object, with 2 radial lens distortion terms
- Zhang* planar object, with 2 radial and 2 tangential lens distortion terms
- Iterative Levenberg-Marquardt*
- Iterative Levenberg-Marquardt with RANSAC*
- P3P* [http://www.mmrc.iss.ac.cn/~xgao/paper/ieee.pdf]
- P3P with RANSAC*
- EPnP* [http://cvlab.epfl.ch/software/EPnP]
- EPnP with RANSAC*
- APnP* [http://openaccess.thecvf.com/content_cvpr_2017/papers/Ke_An_Efficient_Algebraic_CVPR_2017_paper.pdf]
- APnP with RANSAC*
Methods marked with a â*â indicate that the OpenCV implementation is used; see:
docs.opencv.org/modules/calib3d/doc/camera_calibration_and_3d_reconstruction.htm
RANSAC is used to handle outliers by ignoring point correspondences that result in
the worst overall errors.
NOTE: If you add new methods here, be sure to add them in the .cpp file and handle them in CalibratorSystem etc, too!
Note: This enum is vmapped in ProjectorConfig, so please always add new items at the end!
Variables
Manual = 0
Auto = 1
GoldStandard = 2
Zhang = 3
Zhang_Radial2 = 4
Zhang_RadialTangential = 5
ZhangPlanar = 6
ZhangPlanar_Radial2 = 7
ZhangPlanar_RadialTangential = 8
IterLM = 9
IterLM_Ransac = 10
P3P = 11
P3P_Ransac = 12
EPnP = 13
EPnP_Ransac = 14
Zhang_Radial1 = 15
ZhangPlanar_Radial1 = 16
DLT = 17
Constructors
__init__(self)
Default constructor for CalibMethod
__init__(self, other: CalibMethod)
Copy constructor for CalibMethod
Methods
toString(self) -> str
The name of this enumerator, or an empty string if its value is not a named enumerator
Static Methods
fromInt(arg0: int) -> CalibMethod
The enumerator with the given integer value, which need not be one of the named enumerators
Special Methods
__index__(self) -> int
The integer value of this enumerator, for use as a list index
__int__(self) -> int
The integer value of this enumerator
__repr__(self) -> str
The enum and enumerator names, as
__lt__(self, other: Self | int) -> bool
Orders by integer value; ordering against a different enum raises TypeError
__le__(self, other: Self | int) -> bool
Orders by integer value; ordering against a different enum raises TypeError
__gt__(self, other: Self | int) -> bool
Orders by integer value; ordering against a different enum raises TypeError
__ge__(self, other: Self | int) -> bool
Orders by integer value; ordering against a different enum raises TypeError