22 #include <opencv2/opencv.hpp> 41 Pose(
float x_,
float y_,
float orientation_)
45 orientation = orientation_;
58 void inflateMap(
const cv::Mat& original_map, cv::Mat& inflated_map,
const int robot_radius_pixel);
69 void checkPoses(
const std::vector<cv::Point>& points_to_check, std::vector<bool>& accessibility_flags,
70 const cv::Mat& inflated_map,
const bool approach_path_accessibility_check,
const cv::Point& robot_location);
83 void checkPerimeter(std::vector<Pose>& accessible_poses_on_perimeter,
84 const Pose& center,
const double radius,
const double rotational_sampling_step,
85 const cv::Mat& inflated_map,
const bool approach_path_accessibility_check,
const cv::Point& robot_location);
91 val.x = (pose.
x - map_origin.x) * inverse_map_resolution;
92 val.y = (pose.
y - map_origin.y) * inverse_map_resolution;
100 val.x = map_resolution * pose.
x + map_origin.x;
101 val.y = map_resolution * pose.
y + map_origin.y;
111 const cv::Point& potentialApproachPose,
112 std::vector<std::vector<cv::Point> > contours);
118 const Pose& pose_p,
Pose& closest_point_on_polygon);
Pose(float x_, float y_, float orientation_)
void checkPoses(const std::vector< cv::Point > &points_to_check, std::vector< bool > &accessibility_flags, const cv::Mat &inflated_map, const bool approach_path_accessibility_check, const cv::Point &robot_location)
void computeClosestPointOnPolygon(const cv::Mat &map_with_polygon, const Pose &pose_p, Pose &closest_point_on_polygon)
T convertFromPixelCoordinatesToMeter(const Pose &pose, const cv::Point2d &map_origin, const double map_resolution)
T convertFromMeterToPixelCoordinates(const Pose &pose, const cv::Point2d &map_origin, const double inverse_map_resolution)
bool isApproachPositionAccessible(const cv::Point &robotLocation, const cv::Point &potentialApproachPose, std::vector< std::vector< cv::Point > > contours)
void checkPerimeter(std::vector< Pose > &accessible_poses_on_perimeter, const Pose ¢er, const double radius, const double rotational_sampling_step, const cv::Mat &inflated_map, const bool approach_path_accessibility_check, const cv::Point &robot_location)
~MapAccessibilityAnalysis()
MapAccessibilityAnalysis()
void inflateMap(const cv::Mat &original_map, cv::Mat &inflated_map, const int robot_radius_pixel)