`image_geometry` contains C++ and Python libraries for interpreting images geometrically. It interfaces the calibration parameters in sensor_msgs/CameraInfo messages with OpenCV functions such as image rectification, much as cv_bridge interfaces ROS sensor_msgs/Image with OpenCV data types.
image_geometry contains camera model classes that simplify interpreting images geometrically using the calibration parameters from sensor_msgs/CameraInfo messages. They may be efficiently updated in your image callback:
image_geometry::PinholeCameraModel model_; void imageCb(const sensor_msgs::ImageConstPtr& raw_image, const sensor_msgs::CameraInfoConstPtr& cam_info) { // Update the camera model (usually a no-op) model_.fromCameraInfo(cam_info); // Do processing... }
image_geometry contains two classes: