diff options
author | Ivan Perevala <ivpe> | 2020-09-30 16:12:14 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey@blender.org> | 2020-09-30 16:54:24 +0300 |
commit | 3a7d62cd1f5e06e22af1642fc5f4aab59bace585 (patch) | |
tree | d2832d6dacf16938c709e395a3220f2c64ee18e7 /source/blender/makesdna | |
parent | 5ac477805637f20b8ac5e742457fa8f304066d83 (diff) |
Tracking: Implement Brown-Conrady distortion model
Implemented Brown-Conrady lens distortion model with 4 radial and
2 tangential coefficients to improve compatibility with other software,
such as Agisoft Photoscan/Metashapes, 3DF Zephir, RealityCapture,
Bentley ContextCapture, Alisevision Meshroom(opensource).
Also older programs: Bundler, CPMVS.
In general terms, most photogrammetric software.
The new model is available under the distortion model menu in Lens
settings.
For tests and demos check the original patch.
Reviewed By: sergey
Differential Revision: https://developer.blender.org/D9037
Diffstat (limited to 'source/blender/makesdna')
-rw-r--r-- | source/blender/makesdna/DNA_tracking_types.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/source/blender/makesdna/DNA_tracking_types.h b/source/blender/makesdna/DNA_tracking_types.h index 4cd9034a83b..f361f96e633 100644 --- a/source/blender/makesdna/DNA_tracking_types.h +++ b/source/blender/makesdna/DNA_tracking_types.h @@ -72,6 +72,12 @@ typedef struct MovieTrackingCamera { /* Nuke distortion model coefficients */ float nuke_k1, nuke_k2; + + /* Brown-Conrady distortion model coefficients */ + /** Brown-Conrady radial distortion **/ + float brown_k1, brown_k2, brown_k3, brown_k4; + /** Brown-Conrady tangential distortion **/ + float brown_p1, brown_p2; } MovieTrackingCamera; typedef struct MovieTrackingMarker { @@ -458,6 +464,7 @@ enum { TRACKING_DISTORTION_MODEL_POLYNOMIAL = 0, TRACKING_DISTORTION_MODEL_DIVISION = 1, TRACKING_DISTORTION_MODEL_NUKE = 2, + TRACKING_DISTORTION_MODEL_BROWN = 3, }; /* MovieTrackingCamera->units */ |