A real-time path identification and tracking application built with OpenCV and NumPy. The system uses edge detection, component filtering, and multi-stage processing to identify and visualize potential road paths from webcam input. Features GPU acceleration and multi-stage processing for reliable tracking.
- Real-time edge detection and road boundary identification
- Multi-stage processing pipeline for reliable path tracking
- GPU acceleration when available
- Visualization of detected paths and tracking points
- Adaptive filtering of detected components
Track Frame shows the raw camera input with detected lane boundaries (green lines) and tracking points (red/blue dots)
Road Path extracts the detected boundaries as lines for navigation purposes
Final processing stage with best-fit lines for potential navigation
- Python 3.6+
- OpenCV
- NumPy
# Clone this repository
git clone https://github.com/Harish-ioc/Path-Identification.git
# Navigate to project directory
cd Path-Identification
# Install dependencies
pip install -r requirements.txt
# Run using webcam input
python main.py
# Run for testing
python main_testing.py
Press 'q' to exit the application.
The system works through multiple processing stages:
- Edge detection using Canny algorithm
- Connected component analysis to filter noise
- Bottom pixel detection to identify road boundaries
- Clustering and centroid calculation to create tracking points
- Path fitting for smooth navigation guidance
- Implement path prediction for smoother tracking
- Add configuration options for different environments
- Improve performance on low-powered devices
- Add support for recorded video input
MIT