This project implements a basic Visual Odometry (VO) system using OpenCV and the KITTI dataset. The script tracks camera movement and trajectory by analyzing consecutive image frames.
- Python 3.7+
- OpenCV
- NumPy
# Clone the repository
git clone https://github.com/mehmetsolves/MotionEstimation
cd MotionEstimation
# Install required packages
pip install opencv-python numpy
pip install opencv-contrib-python # For additional feature detectors
- Download the KITTI Visual Odometry dataset from the official KITTI website
- Extract the dataset to a known location on your computer
- Update the file paths in the script to match your dataset location
python motiontrack.py
- Modify
motiontrack.py
to change:- Dataset path
- Feature detection method
- Camera parameters
The script generates two windows:
- Road Facing Camera: Current camera frame
- Trajectory: Visual representation of camera movement
- ORB Feature Detection
- Optical Flow Tracking
- Essential Matrix Estimation
- Camera Pose Reconstruction
- Ensure OpenCV is correctly installed
- Verify dataset file paths
- Check Python and library versions
- Designed for specific KITTI dataset format
- Requires calibrated camera parameters
- Performance may vary with different datasets