SketchMath is an AI-powered educational game that helps players learn to draw and understand mathematical functions. It uses neural networks to evaluate drawings and provide real-time feedback, making math learning interactive and fun!
- Interactivity: Draw the function and get instant feedback right in the game. The application accepts both touch and mouse events.
- Game Modes: Eternal, Arcade, and Mentor modes for different learning experiences.
- Educational Resources: Links to study materials to enhance understanding.
- Responsive Design: Works smoothly on both desktop and mobile.
- Frontend: HTML, CSS, JavaScript
- Backend: Python with Flask
- AI Model: MobileNet with TensorFlow
- Data Handling and Generation: Python libraries like Numpy, Matplotlib
The effectiveness of SketchMath's AI model relies on a dataset containing:
-
Generated and Augmented Data: Using Matplotlib, the images of mathematical functions were automatically generated. These images are then augmented through various transformations such as scaling and translating to mimic real-world variations and inaccuracies. Gaussian Filter was used to simulate hand-drawn appearance.
-
Hand-Drawn Data: Hand-drawn drawing images were collected with the help of the game's drawing interface to enhance the model's accuracy.
![image](https://private-user-images.githubusercontent.com/53533713/331875523-ac741086-fcb8-4d0c-8606-6ab0989e5468.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTkxMTkzMTgsIm5iZiI6MTcxOTExOTAxOCwicGF0aCI6Ii81MzUzMzcxMy8zMzE4NzU1MjMtYWM3NDEwODYtZmNiOC00ZDBjLTg2MDYtNmFiMDk4OWU1NDY4LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA2MjMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNjIzVDA1MDMzOFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTgwY2Q0NjJlYjdjNGY4N2UwODk4Yzg0ODlkMTBlOWE2NTRkYzk1NGYyOWVlODMzODBmYjg2YzIyMjQxZDQ0ZmUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.jT7A9LvUM69KF4D168AZyukvELxYEs4LLLu-6cNb-hw)
![image](https://private-user-images.githubusercontent.com/53533713/332425085-7e7b791d-cd47-4929-922f-5f5a01083ac2.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTkxMTkzMTgsIm5iZiI6MTcxOTExOTAxOCwicGF0aCI6Ii81MzUzMzcxMy8zMzI0MjUwODUtN2U3Yjc5MWQtY2Q0Ny00OTI5LTkyMmYtNWY1YTAxMDgzYWMyLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA2MjMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNjIzVDA1MDMzOFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWIxODJkNTM1MzkwYjYxOTc1NjMzZTNmZDE5ZDMwODIwNDgwZmQ1ZWYxZjY4MzU4MWFmM2M0MWQyZTg3MTI5YzcmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.5i7pdgJSySfSWHUyhNTPk6DQbF5to-VZ2JXR-ozpGpM)
![image](https://private-user-images.githubusercontent.com/53533713/334750439-69f281db-faa8-47b2-94ce-0164507ddf1e.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTkxMTkzMTgsIm5iZiI6MTcxOTExOTAxOCwicGF0aCI6Ii81MzUzMzcxMy8zMzQ3NTA0MzktNjlmMjgxZGItZmFhOC00N2IyLTk0Y2UtMDE2NDUwN2RkZjFlLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA2MjMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNjIzVDA1MDMzOFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTkxOGI4ZjJmZjJhMjkyZTIwYzFmN2I3YjgwODA3MWQ0MTY5MDMzMDMwMGUwNzRmZTQ5MzYzZjZkYzU2NjEwZTEmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.R2XBIbru8pQeU6-Ra2QnP18G9jxa7FIDVnRWDpkAuVw)
![image](https://private-user-images.githubusercontent.com/53533713/331876197-ba701a60-49b2-4631-bf59-4b2ace051d3f.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTkxMTkzMTgsIm5iZiI6MTcxOTExOTAxOCwicGF0aCI6Ii81MzUzMzcxMy8zMzE4NzYxOTctYmE3MDFhNjAtNDliMi00NjMxLWJmNTktNGIyYWNlMDUxZDNmLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA2MjMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNjIzVDA1MDMzOFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTZmZWYzMmM3ZjUwZDQ4OTQzOTc2Nzk3NDE3OTk4OWMxYWE3M2Y4NTYzNjdlMTBmMzAxZTBlNTdkNDkxMjgyZmUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.7iG740NQtMKGn9GYNvuYq0WLkW3m9saSOzayOlPTKoU)