This repository contains my university AI / Computer Vision project:
a real-time “air-drawing” calculator that lets a user draw digits and arithmetic operators in the air using hand gestures. The system tracks the fingertip with a webcam, renders the trajectory on a virtual canvas and then uses convolutional neural networks (CNNs) to recognize the handwritten digits and operators and evaluate the expression.
The project combines classical computer vision (OpenCV), hand-tracking with MediaPipe and deep learning models implemented in TensorFlow / Keras.
- Build an interactive calculator controlled only by mid-air gestures (no keyboard or mouse).
- Train robust CNN models for:
- digit recognition (0–9)
- operator recognition (
+,-,*,/, …)
- Achieve >98% test accuracy on both digits and operators.
- Integrate the models into a real-time application that:
- Tracks the user’s fingertip in webcam video.
- Draws the trajectory onto a canvas.
- Segments the canvas into symbols.
- Classifies symbols and evaluates the resulting expression.
A detailed description of the architecture, experiments and results is available in ai_final_report.pdf.
AI-project/
├── ai_final_report.pdf # Final project report (methods, experiments, results)
├── main.py # Real-time "air-drawing" calculator application
├── training.py # CNN training script for digit classifier
├── training_operators.py # CNN training script for operator classifier
├── super_digit_classifier.keras # Trained Keras model for digits
├── operators_model.keras # Trained Keras model for operators
├── LICENSE # Apache 2.0 license
└── README.md # This file