Public Member Functions | Public Attributes | List of all members
Navigation Class Reference

#include <navigation.h>

Public Member Functions

bool checkViewRayValidness (cv::Point source, cv::Point target)
 
std::vector< NextBestViewcompute_frontier_tasks (Polygon_2 boundary, std::vector< Polygon_2 > holes)
 
bool compute_robot_move_nodes (std::vector< double > &distances)
 
bool compute_sync_move_paths (std::vector< double > distances)
 
cv::Mat computeLoationMap ()
 
void correct_boundary_holes (Polygon_2 &boundary, std::vector< Polygon_2 > &holes)
 
Pwh_list_2 differenceCGALExactKernel (Polygon_with_holes_2 domain, Polygon_2 hole)
 
std::vector< NextBestViewextractQualityTaskViews (Polygon_2 boundary, std::vector< Polygon_2 > holes)
 
bool extractTasks (Polygon_2 boundary, std::vector< Polygon_2 > holes, std::vector< ScanningTask > &tasks)
 
bool generateMoveDomainCDT (Polygon_2 boundary, std::vector< Polygon_2 > holes, std::vector< Polygon_2 > origin_holes, std::vector< ScanningTask > tasks, CDT &cdt)
 
std::vector< NextBestViewgenerateViewsFrontiers (bool enableSampling=false, double sampleRate=0.5)
 
vector< cv::Point > get_frustum_contuor (iro::SE2 pose)
 
Polygon_2 load_and_check_boundary ()
 
std::vector< Point_2load_and_check_frontiers (Polygon_2 &boundary, std::vector< Polygon_2 > &holes)
 
std::vector< Polygon_2load_and_check_holes (Polygon_2 boundary, std::vector< Polygon_2 > &origin_holes)
 
void moveRobotsAndScan ()
 
 Navigation (DataEngine &de, int paramK=6)
 
void OMT_TSP ()
 
bool path_occlusion_check (cv::Mat background, cv::Point beg, cv::Point end)
 
bool points_equal (Point_2 p1, Point_2 p2)
 
std::vector< int > preprocess_frontiers (Polygon_2 outer, std::vector< Polygon_2 > iner)
 
void processCurrentScene ()
 
bool robotMoveDomainProcess (Polygon_2 &boundary, std::vector< Polygon_2 > &holes, std::vector< Polygon_2 > &origin_holes)
 
void scanFinished ()
 
bool se2_equal (iro::SE2 p1, iro::SE2 p2)
 
bool simplifyPolygon (Polygon_2 &poly, const double colinearThresh, bool addNoise)
 
void Trajectory_Optimization ()
 
void trajectoryInterpolation (std::vector< iro::SE2 > &path, double dAngle=PI/12)
 
std::vector< int > TSP_path (std::vector< Point_2 > points, std::vector< vector< double >> weights)
 
std::vector< iro::SE2uniformSampleWithNBVInfo (const int robot_id, const double step, const double length)
 
bool visualizeScan (std::vector< iro::SE2 > current_views, int vid)
 

Public Attributes

std::vector< cv::Point > m_boundary
 
std::vector< FrontierElementm_frontierList
 
std::vector< cv::Point > m_frontiers
 
std::vector< Point_2m_frontiers_p2
 
std::vector< std::vector< cv::Point > > m_holes
 
int m_max_task_num = 30
 
DistanceMetric m_metric
 
DataEnginem_p_de
 
std::vector< std::vector< iro::SE2 > > m_robot_move_nodes
 
std::vector< std::vector< bool > > m_robot_move_nodes_nbv_sign
 
std::vector< std::vector< iro::SE2 > > m_robot_move_views
 
std::vector< Point_2m_robot_sites
 
std::vector< std::vector< iro::SE2 > > m_sync_move_paths
 
std::vector< int > m_task_index_in_valid_object_nbvs
 
std::vector< NextBestViewm_valid_object_nbvs
 
int rbt_num
 
std::set< Point_2task_maybe_invalid
 

Detailed Description

Definition at line 152 of file navigation.h.

Constructor & Destructor Documentation

◆ Navigation()

Navigation::Navigation ( DataEngine de,
int  paramK = 6 
)
inline

Definition at line 182 of file navigation.h.

Member Function Documentation

◆ checkViewRayValidness()

bool Navigation::checkViewRayValidness ( cv::Point  source,
cv::Point  target 
)

Definition at line 1211 of file navigation.cpp.

◆ compute_frontier_tasks()

vector< NextBestView > Navigation::compute_frontier_tasks ( Polygon_2  boundary,
std::vector< Polygon_2 holes 
)

Definition at line 1523 of file navigation.cpp.

◆ compute_robot_move_nodes()

bool Navigation::compute_robot_move_nodes ( std::vector< double > &  distances)

Definition at line 2319 of file navigation.cpp.

◆ compute_sync_move_paths()

bool Navigation::compute_sync_move_paths ( std::vector< double >  distances)

Definition at line 2631 of file navigation.cpp.

◆ computeLoationMap()

cv::Mat Navigation::computeLoationMap ( )

Definition at line 1181 of file navigation.cpp.

◆ correct_boundary_holes()

void Navigation::correct_boundary_holes ( Polygon_2 boundary,
std::vector< Polygon_2 > &  holes 
)

Definition at line 562 of file navigation.cpp.

◆ differenceCGALExactKernel()

Pwh_list_2 Navigation::differenceCGALExactKernel ( Polygon_with_holes_2  domain,
Polygon_2  hole 
)

Definition at line 381 of file navigation.cpp.

◆ extractQualityTaskViews()

vector< NextBestView > Navigation::extractQualityTaskViews ( Polygon_2  boundary,
std::vector< Polygon_2 holes 
)

Definition at line 1579 of file navigation.cpp.

◆ extractTasks()

bool Navigation::extractTasks ( Polygon_2  boundary,
std::vector< Polygon_2 holes,
std::vector< ScanningTask > &  tasks 
)

Definition at line 1670 of file navigation.cpp.

◆ generateMoveDomainCDT()

bool Navigation::generateMoveDomainCDT ( Polygon_2  boundary,
std::vector< Polygon_2 holes,
std::vector< Polygon_2 origin_holes,
std::vector< ScanningTask tasks,
CDT cdt 
)

Definition at line 878 of file navigation.cpp.

◆ generateViewsFrontiers()

vector< NextBestView > Navigation::generateViewsFrontiers ( bool  enableSampling = false,
double  sampleRate = 0.5 
)

Definition at line 1343 of file navigation.cpp.

◆ get_frustum_contuor()

vector< cv::Point > Navigation::get_frustum_contuor ( iro::SE2  pose)

Definition at line 1286 of file navigation.cpp.

◆ load_and_check_boundary()

Polygon_2 Navigation::load_and_check_boundary ( )

Definition at line 447 of file navigation.cpp.

◆ load_and_check_frontiers()

vector< Point_2 > Navigation::load_and_check_frontiers ( Polygon_2 boundary,
std::vector< Polygon_2 > &  holes 
)

Definition at line 1006 of file navigation.cpp.

◆ load_and_check_holes()

vector< Polygon_2 > Navigation::load_and_check_holes ( Polygon_2  boundary,
std::vector< Polygon_2 > &  origin_holes 
)

Definition at line 491 of file navigation.cpp.

◆ moveRobotsAndScan()

void Navigation::moveRobotsAndScan ( )

Definition at line 3041 of file navigation.cpp.

◆ OMT_TSP()

void Navigation::OMT_TSP ( )

Definition at line 1963 of file navigation.cpp.

◆ path_occlusion_check()

bool Navigation::path_occlusion_check ( cv::Mat  background,
cv::Point  beg,
cv::Point  end 
)

Definition at line 2243 of file navigation.cpp.

◆ points_equal()

bool Navigation::points_equal ( Point_2  p1,
Point_2  p2 
)

Definition at line 2508 of file navigation.cpp.

◆ preprocess_frontiers()

vector< int > Navigation::preprocess_frontiers ( Polygon_2  outer,
std::vector< Polygon_2 iner 
)

Definition at line 1016 of file navigation.cpp.

◆ processCurrentScene()

void Navigation::processCurrentScene ( )

Definition at line 8 of file navigation.cpp.

◆ robotMoveDomainProcess()

bool Navigation::robotMoveDomainProcess ( Polygon_2 boundary,
std::vector< Polygon_2 > &  holes,
std::vector< Polygon_2 > &  origin_holes 
)

Definition at line 659 of file navigation.cpp.

◆ scanFinished()

void Navigation::scanFinished ( )

Definition at line 1803 of file navigation.cpp.

◆ se2_equal()

bool Navigation::se2_equal ( iro::SE2  p1,
iro::SE2  p2 
)

Definition at line 2518 of file navigation.cpp.

◆ simplifyPolygon()

bool Navigation::simplifyPolygon ( Polygon_2 poly,
const double  colinearThresh,
bool  addNoise 
)

Definition at line 327 of file navigation.cpp.

◆ Trajectory_Optimization()

void Navigation::Trajectory_Optimization ( )

Definition at line 2878 of file navigation.cpp.

◆ trajectoryInterpolation()

void Navigation::trajectoryInterpolation ( std::vector< iro::SE2 > &  path,
double  dAngle = PI / 12 
)

Definition at line 2831 of file navigation.cpp.

◆ TSP_path()

vector< int > Navigation::TSP_path ( std::vector< Point_2 points,
std::vector< vector< double >>  weights 
)

Definition at line 1812 of file navigation.cpp.

◆ uniformSampleWithNBVInfo()

vector< iro::SE2 > Navigation::uniformSampleWithNBVInfo ( const int  robot_id,
const double  step,
const double  length 
)

Definition at line 2528 of file navigation.cpp.

◆ visualizeScan()

bool Navigation::visualizeScan ( std::vector< iro::SE2 current_views,
int  vid 
)

Definition at line 3313 of file navigation.cpp.

Member Data Documentation

◆ m_boundary

std::vector<cv::Point> Navigation::m_boundary

Definition at line 158 of file navigation.h.

◆ m_frontierList

std::vector<FrontierElement> Navigation::m_frontierList

Definition at line 171 of file navigation.h.

◆ m_frontiers

std::vector<cv::Point> Navigation::m_frontiers

Definition at line 159 of file navigation.h.

◆ m_frontiers_p2

std::vector<Point_2> Navigation::m_frontiers_p2

Definition at line 160 of file navigation.h.

◆ m_holes

std::vector<std::vector<cv::Point> > Navigation::m_holes

Definition at line 161 of file navigation.h.

◆ m_max_task_num

int Navigation::m_max_task_num = 30

Definition at line 156 of file navigation.h.

◆ m_metric

DistanceMetric Navigation::m_metric

Definition at line 168 of file navigation.h.

◆ m_p_de

DataEngine* Navigation::m_p_de

Definition at line 166 of file navigation.h.

◆ m_robot_move_nodes

std::vector<std::vector<iro::SE2> > Navigation::m_robot_move_nodes

Definition at line 177 of file navigation.h.

◆ m_robot_move_nodes_nbv_sign

std::vector<std::vector<bool> > Navigation::m_robot_move_nodes_nbv_sign

Definition at line 178 of file navigation.h.

◆ m_robot_move_views

std::vector<std::vector<iro::SE2> > Navigation::m_robot_move_views

Definition at line 176 of file navigation.h.

◆ m_robot_sites

std::vector<Point_2> Navigation::m_robot_sites

Definition at line 163 of file navigation.h.

◆ m_sync_move_paths

std::vector<std::vector<iro::SE2> > Navigation::m_sync_move_paths

Definition at line 179 of file navigation.h.

◆ m_task_index_in_valid_object_nbvs

std::vector<int> Navigation::m_task_index_in_valid_object_nbvs

Definition at line 174 of file navigation.h.

◆ m_valid_object_nbvs

std::vector<NextBestView> Navigation::m_valid_object_nbvs

Definition at line 173 of file navigation.h.

◆ rbt_num

int Navigation::rbt_num

Definition at line 162 of file navigation.h.

◆ task_maybe_invalid

std::set<Point_2> Navigation::task_maybe_invalid

Definition at line 172 of file navigation.h.


The documentation for this class was generated from the following files:


co_scan
Author(s):
autogenerated on Mon Feb 28 2022 23:00:58