From d03fd8188b9a531f94bb461ec0f91efca74f6384 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20G=C3=BCnther?= Date: Fri, 12 Nov 2021 10:00:48 +0100 Subject: [PATCH] Add equidistant distortion model MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This is a forward-port from ROS1 noetic: https://github.com/ros/common_msgs/pull/109 The model is based on the following publication: J. Kannala and S. Brandt (2006). A Generic Camera Model and Calibration Method for Conventional, Wide-Angle, and Fish-Eye Lenses, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 28, no. 8, pp. 1335-1340 There are many different names for this distortion model: * Kannala and Brandt call it "Generic Camera Model". Sometimes they also call it "equidistance projection model". * Kalibr calls it "equidistant": https://github.com/ethz-asl/kalibr/wiki/supported-models * Camodocal calls it "kannala-brandt": https://github.com/hengli/camodocal * OpenCV calls it "fisheye": https://stackoverflow.com/a/34309644/3036576 All of these are just different names for the same model. Signed-off-by: Martin Günther --- sensor_msgs/include/sensor_msgs/distortion_models.hpp | 1 + 1 file changed, 1 insertion(+) diff --git a/sensor_msgs/include/sensor_msgs/distortion_models.hpp b/sensor_msgs/include/sensor_msgs/distortion_models.hpp index 243787d1..06a43073 100644 --- a/sensor_msgs/include/sensor_msgs/distortion_models.hpp +++ b/sensor_msgs/include/sensor_msgs/distortion_models.hpp @@ -43,6 +43,7 @@ namespace distortion_models { const char PLUMB_BOB[] = "plumb_bob"; const char RATIONAL_POLYNOMIAL[] = "rational_polynomial"; +const char EQUIDISTANT[] = "equidistant"; } }