Skip to content

Kuljot/rrt_planner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RRT (Rapidly-exploring Random Tree) Implementation
Overview:
This program implements the Rapidly-exploring Random Tree (RRT) algorithm to find a feasible path from a start point to a goal point in a given environment represented as an image.

System Requirements:
C++ compiler (e.g., g++)
OpenCV


Compilation command:
$g++ rrt.cpp -o rrt -I/usr/local/include/opencv4 -L/usr/local/lib -lopencv_core -lopencv_highgui -lopencv_imgproc -lopencv_imgcodecs


Methods:
GraphNode: Constructor to initialize a GraphNode object with parent information.
obstacle_bw: Checks for obstacles between two points.

random_pt: Generates a random point within the specified image dimensions.

nearest_to: Finds the index of the nearest node to a given point.

distance: Calculates the Euclidean distance between two points.

RRT: Constructor to initialize RRT algorithm parameters and execute the algorithm.



Execution:
RUN using command $./rrt
Execute the compiled program. The program will display the input image with start and goal points marked, along with the RRT path.
You can edit the input image also, but size must be same.

Output:
The program will show the path generated by RRT and save the generated image with the RRT path overlaid as "output.jpg" in the current directory.

Notes:
Adjust the input image path and parameters as necessary currently I have not added command line parameters.
Ensure that the environment represented by the input image is suitable for RRT path planning.
Fine-tune the RRT algorithm parameters for optimal performance and accuracy.

About

RRT Planner implemented using C++ & OpenCV

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages