62 lines
1.7 KiB
C++
62 lines
1.7 KiB
C++
#ifndef MSCKF_VIO_IMAGE_HANDLER_H
|
|
#define MSCKF_VIO_IMAGE_HANDLER_H
|
|
|
|
#include <vector>
|
|
#include <boost/shared_ptr.hpp>
|
|
#include <opencv2/opencv.hpp>
|
|
#include <opencv2/video.hpp>
|
|
|
|
#include <ros/ros.h>
|
|
#include <cv_bridge/cv_bridge.h>
|
|
|
|
|
|
namespace msckf_vio {
|
|
/*
|
|
* @brief utilities for msckf_vio
|
|
*/
|
|
namespace image_handler {
|
|
|
|
cv::Point2f pinholeDownProject(const cv::Point2f& p_in, const cv::Vec4d& intrinsics);
|
|
cv::Point2f pinholeUpProject(const cv::Point2f& p_in, const cv::Vec4d& intrinsics);
|
|
|
|
void undistortImage(
|
|
cv::InputArray src,
|
|
cv::OutputArray dst,
|
|
const std::string& distortion_model,
|
|
const cv::Vec4d& intrinsics,
|
|
const cv::Vec4d& distortion_coeffs);
|
|
|
|
void undistortPoints(
|
|
const std::vector<cv::Point2f>& pts_in,
|
|
const cv::Vec4d& intrinsics,
|
|
const std::string& distortion_model,
|
|
const cv::Vec4d& distortion_coeffs,
|
|
std::vector<cv::Point2f>& pts_out,
|
|
const cv::Matx33d &rectification_matrix = cv::Matx33d::eye(),
|
|
const cv::Vec4d &new_intrinsics = cv::Vec4d(1,1,0,0));
|
|
|
|
std::vector<cv::Point2f> distortPoints(
|
|
const std::vector<cv::Point2f>& pts_in,
|
|
const cv::Vec4d& intrinsics,
|
|
const std::string& distortion_model,
|
|
const cv::Vec4d& distortion_coeffs);
|
|
|
|
cv::Point2f distortPoint(
|
|
const cv::Point2f& pt_in,
|
|
const cv::Vec4d& intrinsics,
|
|
const std::string& distortion_model,
|
|
const cv::Vec4d& distortion_coeffs);
|
|
|
|
void undistortPoint(
|
|
const cv::Point2f& pt_in,
|
|
const cv::Vec4d& intrinsics,
|
|
const std::string& distortion_model,
|
|
const cv::Vec4d& distortion_coeffs,
|
|
cv::Point2f& pt_out,
|
|
const cv::Matx33d &rectification_matrix = cv::Matx33d::eye(),
|
|
const cv::Vec4d &new_intrinsics = cv::Vec4d(1,1,0,0));
|
|
|
|
}
|
|
}
|
|
#endif
|