It's an app that solves a Maze!
The app takes the Maze's image as an input and outputs the solution path superimposed on its image..
Built using OpenCV 3.1 in C++ and developed on VS2015...
- User provides the path for the maze image and a flag whether to display the steps of maze solution "-d" or just display the final solution "-r".
- If no or wrong flag is provided, default behaviour is to output the final solution as a png image only.
- The app takes the command line arguments as follows: exe_name image_name <-d OR -r>
- examples:
- MazeSolver.exe maze.png -d
- MazeSolver.exe maze.png -r
- MazeSolver.exe maze.png
- You can use this [generator] (http://www.mazegenerator.net/) to make any mazes u like.
Any Rectangular Orthogonal maze can be solved!
Maze must be a Perfect maze
A “Perfect maze” is defined as a maze which has one and only one path from any point in the maze to any other point.
This means that the maze has no inaccessible sections, no circular paths, and no open areas.
- Binary image analysis
- OpenCV findContours algorithm (Suzuki, S. and Abe, K., Topological Structural Analysis of Digitized Binary Images by Border Following)
- Mathematical Morphology methods (Dilation & Erosion)
- Standard image processing methods (Pre & Post-Processing, Image enhancement & segmentation)