GithubHelp home page GithubHelp logo

muhammadhammad-git / ai-assisted-automated-eye-testing-game--final-year-project- Goto Github PK

View Code? Open in Web Editor NEW
3.0 1.0 0.0 86.34 MB

It is a complete Automated Eye Testing Machine. We call it "SNELL GAME"! It uses Voice Recognition AI! It is fun, interactive and addicting to play. This is my most innovative, practical, user Friendly and most of all my most joyful work. A project that encompasses all of my work and effort in improving my coding and showcases my progress in AI!

Python 100.00%
ai art game-development pygames python3 tensorflow tflite

ai-assisted-automated-eye-testing-game--final-year-project-'s Introduction

AI Assisted Automated Eye Testing Game (Final Year Project) "SNELL"

It is a completely Automated Eye Testing Machine. It is a game. It uses Voice Recognition AI! It is fun, interactive and addicting to play. All of it runs on the microcontroller Raspberry pi 4B!

This is my most innovative and fun work. A project that encompasses all of my work and showcases my coding skills!

Here is a link to the wonderfull ceremony where we secured Second Position and sadly my last day at university! https://www.linkedin.com/posts/muhammad-hammad-87787421a_four-years-and-they-went-like-that-mashallah-activity-7070119934269210624-aq94?utm_source=share&utm_medium=member_desktop

*Here is the link for the Voice Recognition model trained by us for this project! https://github.com/MuhammadHammad-git/Voice-Recognition-Model-for-FYP-Trained-in-CNN-

Game Details

Animation:

The Game includes a wooden board (Created frame by frame in Paint Every animation is made like this) placed in a forest environment that pops up and digs down in the ground! The letters appear on the board and their appearance, background and font are specific to the requirement for an eye test! The Letters displayed are Random and Are displayed randomly anywhere on the ground of the forest! There is grass animation as well to show multithreading and sequenced Animation.

Audio, Model and the user:

Audio of the user is taken by either a headphone or microphone. The audio first passes through the sliding window algorithm that inputs the audio to the model in 1 sec samples. if the first window of audio does not produce the required result then the audio window is moved ahead 0.5 seconds and another audio sample is passed! Until all the requirement are met only then the model output is used! All this is to ensure that the patient has a seemless experience, i.e allowing him/her to say too early or too late or even repeat a letter without causing any issues.

The Result:

At the end of the eye test, keeping in view the number of mistakes made by the patient in guessing letters, a result is generated that consists of a layman term category, visual acuity and approximate range of diopter of lens. The layman category is defined by taking inspiration from WHO, Visual acuity is guessed on the bases of a defined formula while Diopter lens value is guessed by a data set. The data set consists of 400 eye tests each taken by ourself by visiting General Hospital Lahore's Ophthalmology ward. Based on this data set we guess the approximate lens power the user can have! Because this is soo subjective it was unable to be guessed with a lower range!

Game Optimizations:

Game is Optimized for Raspberry pi 4B. Can be run on any display with a resolution of 800x600 upto 4k. Any screen resolution below losses quality as game elements are compressed too much to fit into the screen.

Potiental Bugs (Library dependent)

Pygames library on Raspberry pi struggles with scaling issues and has bugs. I have handled the resolution in such a way as to reduce such bugs as much as possible. These bugs only happen randomly on some runs.

Some bugs include:

  • unable to scale properly
  • unable to sometimes remove default black background on transparent png's.

SHOTS:

Menu Screen:

Updated Menu (Square Screen)

Instruction Screen:

Instruction Screen

Game_Progression:

Gameshot1

Gameshot2

Screenshot 2023-05-06 113850

Screenshot 2023-05-06 114025

Gameshot3

RESULTS SCREEN!

Result Screen

DEMO

Game Demo without any voice input

Game.Demonstration.mp4

Realtime With Patient

https://drive.google.com/file/d/1WJ-i7jxUeieNWjcf0R-orHxnQ-HDCrY3/view?usp=drive_link Here Letters that blink green are recognized while those in red are missed by the model! Here, we can clearly observe that even in such a noisy environment our Model is working with an accuracy of more than 95%! This was a huge accompolishment for us as all of the data was collected by us through Audio recording! This audio data set is not available for free anywhere on the web! There are 5 Letters that appear on the screen T O Z F L. We collected 160 to 170 audio samples for each letter. The model we used here is trained using CNN while Google Teachable machines model was used as a prototype and benchmark to assess our model

ai-assisted-automated-eye-testing-game--final-year-project-'s People

Contributors

muhammadhammad-git avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.